整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

QQ浏览器打开某网页致vivo摄像头升起 腾讯:确认

QQ浏览器打开某网页致vivo摄像头升起 腾讯:确认存在

期随着vivo NEX手机开卖,不少用户已经拿到该机,并对vivo NEX的升降式摄像头充满了兴趣。据说还有vivo NEX流氓App鉴定器的说法,但也有网友解释称是vivo NEX的前置摄像头突然升起,有可能是App检查手机的前置摄像头的可用性,并不一定就是某些App出现了流氓行为。

此前有网友发现,在vivo NEX手机设备上通过手机QQ浏览器打开某些网页时,手机摄像头会出现一个“升降”动作。对此,QQ浏览器团队回应称,确认存在调起摄像头动作,但同时称这一动作并不会开启摄像头,更不会拍摄或记录,手机QQ浏览器并不会采集用户任何隐私。

以下是QQ浏览器团队回应全文:

关于用QQ浏览器打开某些网页会调起Vivo NEX摄像头问题的说明

QQ浏览器团队收到用户反馈,用户在Vivo NEX手机设备上通过手机QQ浏览器打开某些网页时,手机摄像头会出现一个“升降”动作,对此,QQ浏览器技术团队对该问题进行了测试复现,确认存在调起摄像头动作,但这一动作并不会开启摄像头,更不会拍摄或记录,现针对该问题作出如下说明:

1、问题原因及技术原理:

为实现用户对一些功能使用(如扫描二维码),W3C规范有一个前端标准接口navigator.mediaDevices.enumerateDevices()可以遍历媒体设备,获取摄像头参数以供后续使用,Android有两套API来操作摄像头,camera1和camera2,其中camera2不需要打开摄像头就可以获取摄像头参数,而camera1需要调用Camera.Open()函数初始化,以获取摄像头句柄,然后通过摄像头句柄获取摄像头参数(https://developer.android.com/reference/android/hardware/Camera)。考虑到camera2在AR摄像头等应用中在性能和兼容性上存在很多问题,手机QQ浏览器内核使用的是camera1接口,导致VIVO NEX手机用户体验上会出现摄像头“升降”动作。

2、手机QQ浏览器并不会采集用户任何隐私。

实际上,用户在用手机QQ浏览器打开某些网页过程中“需要获取摄像头的参数”情况下,VIVO NEX手机的摄像头并没有完全弹出(用户可以使用QQ浏览器打开网页https://qiyaoyuan.github.io/source/webar.html测试复现),而摄像头也没有做任何拍摄或采集行为,手机QQ浏览器并不会采集用户任何隐私。该网页只调用了mediaDevices.enumerateDevices接口,并没有其他任何操作。

3、我们将优化用户使用感受和体验。

再次感谢广大用户对QQ浏览器的关注和意见反馈,对给用户造成误解和困惑表示歉意,我们将对这一使用体验进行优化和提示。

QQ浏览器产品团队

之前的代码为了能够分享当前文章到QQ我是这样写的

shareToQQ(){
      let url=`https://connect.qq.com/widget/shareqq/index.html?url=https://我的网站/#/article/${this.id}&source=https://我的网站.com&title=${this.article.title}&summary=${this.article.content.slice(0, 42)}&desc=${this.article.title}&pics=https://我的网站.com${this.article.cover_image}`
      window.open(url)
    }

结果出现了发给好友,好友打开的不是文章详情页,而是网站的首页,思考了几天,最后在一个地方发现别人的写法:

<a class="lqq" target="_blank" href="javascript:void(0);" οnclick="window.open('http://connect.qq.com/widget/shareqq/index.html?url=' + encodeURIComponent(document.location.href) + '

&desc=邀请详情&title=标题&summary=简介&pics=&flash=&site=邀请人或网站&callback="  title="QQ登录">qq</a>

发现它的url外面有encodeURIComponent(document.location.href)包裹,于是我改了下自己的代码:

代码实现

shareToQQ(){
      let href=`https://我的网站.com/#/article/${this.id}`
      let url=`https://connect.qq.com/widget/shareqq/index.html?url=${encodeURIComponent(href)}&source=https://我的网站.com&title=${this.article.title}&summary=${this.article.content.slice(0, 42)}&desc=${this.article.title}&pics=https://我的网站.com${this.article.cover_image}`
      window.open(url)
    }

结论

问题解决!主要的区别就是把网址单独写了一个变量并用encodeURIComponent()方法包裹,可能是QQ那边不支持我原有的写法吧,也希望大家能够帮忙解答一下,不过最后还是解决了问题。

期随着vivo NEX手机开卖,不少用户已经拿到该机,并对vivo NEX的升降式摄像头充满了兴趣。据说还有vivo NEX流氓App鉴定器的说法,但也有网友解释称是vivo NEX的前置摄像头突然升起,有可能是App检查手机的前置摄像头的可用性,并不一定就是某些App出现了流氓行为。

此前有网友发现,在Vivo NEX手机设备上通过手机QQ浏览器打开某些网页时,手机摄像头会出现一个“升降”动作。对此,QQ浏览器团队回应称,确认存在调起摄像头动作,但同时称这一动作并不会开启摄像头,更不会拍摄或记录,手机QQ浏览器并不会采集用户任何隐私。

以下是QQ浏览器团队回应全文:

关于用QQ浏览器打开某些网页会调起Vivo NEX摄像头问题的说明

QQ浏览器团队收到用户反馈,用户在Vivo NEX手机设备上通过手机QQ浏览器打开某些网页时,手机摄像头会出现一个“升降”动作,对此,QQ浏览器技术团队对该问题进行了测试复现,确认存在调起摄像头动作,但这一动作并不会开启摄像头,更不会拍摄或记录,现针对该问题作出如下说明:

1、问题原因及技术原理:

为实现用户对一些功能使用(如扫描二维码),W3C规范有一个前端标准接口navigator.mediaDevices.enumerateDevices可以遍历媒体设备,获取摄像头参数以供后续使用,Android有两套API来操作摄像头,camera1和camera2,其中camera2不需要打开摄像头就可以获取摄像头参数,而camera1需要调用Camera.Open函数初始化,以获取摄像头句柄,然后通过摄像头句柄获取摄像头参数(https://developer.android.com/reference/android/hardware/Camera)。考虑到camera2在AR摄像头等应用中在性能和兼容性上存在很多问题,手机QQ浏览器内核使用的是camera1接口,导致VIVO NEX手机用户体验上会出现摄像头“升降”动作。

2、手机QQ浏览器并不会采集用户任何隐私。

实际上,用户在用手机QQ浏览器打开某些网页过程中“需要获取摄像头的参数”情况下,VIVO NEX手机的摄像头并没有完全弹出(用户可以使用QQ浏览器打开网页https://qiyaoyuan.github.io/source/webar.html测试复现),而摄像头也没有做任何拍摄或采集行为,手机QQ浏览器并不会采集用户任何隐私。该网页只调用了mediaDevices.enumerateDevices接口,并没有其他任何操作。

3、我们将优化用户使用感受和体验。

再次感谢广大用户对QQ浏览器的关注和意见反馈,对给用户造成误解和困惑表示歉意,我们将对这一使用体验进行优化和提示。

QQ浏览器产品团队