React:在 Messenger webview 中捕获图像
React: Capture image in messenger webview
我有一个带有图像捕获标签的小型 React 应用程序(仅适用于移动设备),用于仅单击来自相机的图像(阻止文件选择器对话框)
<input type="file" accept="image/*" capture="camera" onChange={this.handleUploadImage} />
我正在使用它从 android 和 ios 浏览器捕获图像。
这个标签在 chrome android 和 safari ios 中工作正常,但是当它在 facebook Messenger 的网络视图中打开时,它不会打开相机,而是打开android.
中的文件选择器对话框
那么有什么方法可以在 Facebook Messenger 的网络视图中打开相机并阻止访问文件选择器对话框?
如有任何帮助,我们将不胜感激
据我所知,您正在尝试访问输入类型为 "file" 的摄像头。虽然它在浏览器中运行良好,但应用程序的任何 webview 都将其视为文件 input/upload.
的标签
你需要的是创建一个模块,即使在 webview 中也允许访问相机,并在你想要的地方使用它。可以使用 getUserMedia() api
创建摄像头模块,也可以查看 webrtc and webkit
。
请检查不同浏览器对 getUserMedia() api
的支持,以便更好地理解。作为 it dont work in chrome/firefox for ios
截至目前。
您还可以使用可用的开源依赖项,其中一些是:
我有一个带有图像捕获标签的小型 React 应用程序(仅适用于移动设备),用于仅单击来自相机的图像(阻止文件选择器对话框)
<input type="file" accept="image/*" capture="camera" onChange={this.handleUploadImage} />
我正在使用它从 android 和 ios 浏览器捕获图像。
这个标签在 chrome android 和 safari ios 中工作正常,但是当它在 facebook Messenger 的网络视图中打开时,它不会打开相机,而是打开android.
中的文件选择器对话框那么有什么方法可以在 Facebook Messenger 的网络视图中打开相机并阻止访问文件选择器对话框?
如有任何帮助,我们将不胜感激
据我所知,您正在尝试访问输入类型为 "file" 的摄像头。虽然它在浏览器中运行良好,但应用程序的任何 webview 都将其视为文件 input/upload.
的标签你需要的是创建一个模块,即使在 webview 中也允许访问相机,并在你想要的地方使用它。可以使用 getUserMedia() api
创建摄像头模块,也可以查看 webrtc and webkit
。
请检查不同浏览器对 getUserMedia() api
的支持,以便更好地理解。作为 it dont work in chrome/firefox for ios
截至目前。
您还可以使用可用的开源依赖项,其中一些是: