snapdragon camera APP 辅摄白名单

前言

在默认情况下,调用Google接口CameraManager.getCameraIdList()会返回所有的物理相机以及逻辑相机id。加上辅摄白名单后,framework代码会按照包名对比白名单中的条目,若不在白名单中,会限制该apk获取除前后主摄之外的其他相机。所以,对于想使用辅摄的application,比如snapdragon camera、mmi等,都需要将对应的包名加入到白名单中。

一、验证AUX Camera White List Code

整体调用流程
snapdragon APP调用到camera framework,通过验证APP是否在whitelist中,获取所能使用的camera ID。
whitelist code流程
camera manager globel file, extractCameraIdListLocked function中对aux camera white list对比:
• currentOpPackageName 在 ActivityThread中获取创建出activity的application本身
• 获取vendor.camera.aux.packagelist值
• Split packlist with“,”org.codeaurora.snapcam没有逗号所以并没有split
• 如果package name 和package list 能够equal,获取出所有camera 加入到camera ID list中返回到opencamera 如果not equal,只能获取camera 0 and 1,并且return

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值