Wie der Zugriff auf die Kamera innerhalb einer Webview?
In meiner android app, ich bin versucht, eine Webseite laden (das muss der Zugriff auf die Kamera) auf WebView
. Auf meinem laptop, wenn ich das laden der Webseite, konnte ich die Kamera zugreifen.
Alles andere auf der html
- Seite wird angezeigt.
Hier sind die Berechtigung ich bin dabei, in der Manifest.xml
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.webkit.PermissionRequest" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
Ich bin Einstellung der SDK wie folgt:
<uses-sdk
android:minSdkVersion="18"
android:targetSdkVersion="21" />
Hier ist mein webview-Einstellung:
private void setMyWebviewSettings(WebSettings MyWebviewSettings){
MyWebviewSettings.setAllowFileAccessFromFileURLs(true);
MyWebviewSettings.setAllowUniversalAccessFromFileURLs(true);
MyWebviewSettings.setJavaScriptCanOpenWindowsAutomatically(true);
MyWebviewSettings.setJavaScriptEnabled(true);
MyWebviewSettings.setDomStorageEnabled(true);
MyWebviewSettings.setJavaScriptCanOpenWindowsAutomatically(true);
MyWebviewSettings.setBuiltInZoomControls(true);
MyWebviewSettings.setAllowFileAccess(true);
MyWebviewSettings.setSupportZoom(true);
}
Wenn ich könnte, Zugriff auf die Kamera aus meiner app direkt (über eine normale Aktivität), warum kann ich nicht öffnen es innerhalb der WebView
?!
wenn Sie versuchen, öffnen Sie Kamera aus der webview dann müssen Sie tun Einstellung webview.Sehen Sie sich bitte die stackoverflow.com/questions/29290940/...
InformationsquelleAutor McLan | 2016-11-17
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich versuchte dasselbe. Folgenden code funktionierte für mich.
Erste in der manifest-Datei, die wir Hinzugefügt haben, um die Kamera-hardware die Erlaubnis true verwendet Berechtigung tag.
Dann akzeptieren müssten, um Kamera-Erlaubnis zur Verwendung mit folgenden Zeilen in Ihrer Aktivität.
InformationsquelleAutor meuser07
Ist dies sicherlich möglich, mit getUserMedia durch WebRTC.
Einrichten WebView zu erlauben, Erlaubnis und laden Sie Ihre HTML mit loadUrl():
Dann verwenden getUserMedia durch Ihre JS-Datei, vorausgesetzt, Sie haben eine
<video>
- tag in Ihre HTML-Datei:Schließlich stellen Sie sicher, dass Berechtigungen festgelegt, die in Ihrem manifest:
InformationsquelleAutor drquinn
Wenn ich mich nicht falsch, Sie wollen einfach öffnen Sie Ihre Kamera und laden gerade aufgenommene Foto in webview ohne öffnen andere Anwendung, dann müssen Sie
WRITE_EXTERNAL_STORAGE
Erlaubnis auch und Methoden für den Umgang mit Datei-Anforderungen und erstellen von neuen Dateien mit Kamera und schreiben Sie es auf Ihrem Gerät Lagerung.Ich hoffe, das hilft, Open Source (Android-Smart-WebView) ermöglicht das setup, die Dinge für Sie.
Müssen Sie sich für
openFileChooser()
undonShowFileChooser()
Methoden zu verstehen, wie Sie zu behandeln Anträge aus der webview-Eingang und aktivieren Sie Ihre Handy-Kamera zu erfassen und erstellen neue Bild ohne öffnen anderer apps.InformationsquelleAutor mgks
Hier ist was für mich gearbeitet. Ich hoffe, es hilft jemand.
Ich bin mit easypermission Bibliothek für die Kamera-Berechtigung und denken Sie daran, hinzufügen verwendet-Erlaubnis für die Kamera im Android-Manifest
InformationsquelleAutor ANUJ GUPTA