PC端浏览器可正常呼起权限请求窗体,比如XXX想要使用您的摄像头/麦克风如此种种:
在移动端QQ和微信等内置浏览器也可以呼起类似的确认窗口:
但是遇到的问题是手机自带浏览器,或第三方诸如UC、Via、猎豹等,均不能给出类似弹窗,默认就禁止了。
请问是否有解决方案?
另外,MDN在该API文中指出“返回的promise对象可能既不会resolve也不会reject,因为用户不是必须选择允许或拒绝”,这种情况如何对应呢?
PC端浏览器可正常呼起权限请求窗体,比如XXX想要使用您的摄像头/麦克风如此种种:
在移动端QQ和微信等内置浏览器也可以呼起类似的确认窗口:
但是遇到的问题是手机自带浏览器,或第三方诸如UC、Via、猎豹等,均不能给出类似弹窗,默认就禁止了。
请问是否有解决方案?
另外,MDN在该API文中指出“返回的promise对象可能既不会resolve也不会reject,因为用户不是必须选择允许或拒绝”,这种情况如何对应呢?
13 回答12.9k 阅读
7 回答2.1k 阅读
5 回答1.4k 阅读
3 回答1.3k 阅读✓ 已解决
5 回答1.5k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
谢邀.
移动端浏览器兼容性这个没辙,尤其像getUserMedia这种,需要硬件参与交互的。可能表现型的特性还能找到个近似的Polyfill来做,但是跟硬件打交道的,基本没戏就是没戏,只能等手机设备的升级换代(因为像好多品牌的安卓,原生系统是不给升级的,又得做适配又得教用户,空造成本一滩没利润,厂商才不去费那个事儿,有漏洞都不会管的),或者挂在个大平台下(比如微信或者阿里系),才能做这块的业务,这是技术选型上要考虑的成本。
到具体的实现上,移动端除了苹果的原生Safari以外,就是安卓平台的微信x5、UC(阿里系APP)这俩了。后两者分别有兼容性快查平台,x5的在X5 CanIUse,UC的在U4 Platform Status,另外这俩内核也有网站支持。至于Safari,虽然有文档,但是我可能打开的姿势不对所以看不太懂……不过除了这仨内核以外的,支持的几率真的不高了,所以如果一定要做这个功能的话,策略就是把用户尽可能的赶到这几个支持的平台上来。。。