Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

android自带浏览器没有提示,也不成功 #29

Closed
cmsly opened this issue Jun 13, 2019 · 8 comments
Closed

android自带浏览器没有提示,也不成功 #29

cmsly opened this issue Jun 13, 2019 · 8 comments

Comments

@cmsly
Copy link

cmsly commented Jun 13, 2019

android自带浏览器环境显示支持,但是为什么录制不了呢?
是没有权限吗?点击打开录音,也不提示权限允许

@xiangyuecn
Copy link
Owner

啥手机,UserAgent发来瞄瞄

@cmsly
Copy link
Author

cmsly commented Jun 14, 2019

啥手机,UserAgent发来瞄瞄

1、vivo X6Plus D
AudioContext:true
webkitAudioContext:false
mediaDevices:true
mediaDevices.getUserMedia:true
navigator.getUserMedia:true
navigator.webkitGetUserMedia:true

UA:Mozilla/5.0 (Linux; Android 5.1; vivo X6Plus D Build/LMY47I; wv) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36 VivoBrowser/6.4.1.3

2、Redmi Note 5A
AudioContext:true webkitAudioContext:false mediaDevices:true mediaDevices.getUserMedia:true navigator.getUserMedia:true navigator.webkitGetUserMedia:true UA:Mozilla/5.0 (Linux; U; Android 7.1.2; zh-cn; Redmi Note 5A Build/N2G47H) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/61.0.3163.128 Mobile Safari/537.36 XiaoMi/MiuiBrowser/10.8.1

@cmsly
Copy link
Author

cmsly commented Jun 14, 2019

@xiangyuecn 麻烦看看 多谢哈

@cmsly
Copy link
Author

cmsly commented Jun 14, 2019

@xiangyuecn 两个手机都是点击打开录音没有反应 看浏览器的环境貌似也支持getUserMedia 在手机上用Chrome浏览器是可以的
还有手机自带浏览话筒可以录音

@xiangyuecn
Copy link
Owner

试了一下,只找到近似的测试机型,确实是点击打开录音没有反应。我自己的红米6pro系统更新后也是这个样子,去年写这个代码的时候测试还没有问题,我还以为是哪里哪里安全设置坏了🤦‍♂️。

根据这个表现看起来,目测是浏览器本身的问题,浏览器并未对getUserMedia权限请求做任何处理,可能的浏览器app实现代码如下(几个厂商自己造轮子并且相互"学习借鉴"):

public void onPermissionRequest(final PermissionRequest request) {
   //request.grant(授予的权限列表); 程序员注:处理起来有点废代码,还是注释掉吧,反正估计没什么人用

    //导致结果,啥也不处理,也不回调
}

😂😂 针对这种浏览器,没有发现处理的办法,检测起来又支持录音,调用起来,浏览器死活不给回调。如果浏览器给个拒绝权限的回调也不至于到这步田地。😂😂


测试详情

这个vivo X6Plus测试机自带浏览器点击始终没有回调,浏览器自己抓取音频确可以

这个红米5plus的测试机自带浏览器就算了,直接就检测到不支持:

@cmsly
Copy link
Author

cmsly commented Jun 14, 2019

@xiangyuecn 非常感谢,这样说要做移动端浏览器录音基本上不可能全覆盖了吧?除了getUserMedia还有别的方法推荐吗?

@xiangyuecn
Copy link
Owner

纯粹的普通浏览器里面,好像除了getUserMedia并没有其他途径了吧😂 只能在用户提示方面做好文章。对应不支持的、长时间不能获取录音对象的,给个友好的提示比写一堆代码强很多啦。

比如:
“正在准备录音,请授予录音权限(如果一直显示此提示可能是您的浏览器不支持录音)”
"您的浏览器不支持录音,可尝试更换其他浏览器进行此操作"

我现在用到的基本上在微信和自己app里面可用性强很多,其他浏览器五花八门只能靠给点用户提示。

@cmsly
Copy link
Author

cmsly commented Jun 14, 2019 via email

@xiangyuecn xiangyuecn added the help wanted Extra attention is needed label Jul 29, 2019
@xiangyuecn xiangyuecn removed the help wanted Extra attention is needed label Nov 22, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants