皓予杨,李世慜,时代广场的蟋蟀全文
在做指纹登录时,有时候会遇到设备并未录入指纹,需要提示用户去开启。
如果需要自动跳转到系统的指纹设置页面,录入指纹,那就需要调用系统组件
由于google加入指纹支持是在6.0,而国内很多厂商很早便加入了指纹支持,所以在这方面碎片化很严重。需要根据不同厂商来做适配。
跳转到Settings页面的Intent:
String pcgName = "com.android.settings"; String clsName = "com.android.settings.Settings"; Intent intent = new Intent(); ComponentName componentName = new ComponentName(pcgName, clsName); intent.setAction(Intent.ACTION_VIEW); startActivity(intent);
跳转到指纹页面参考如下:
sony:
String pcgName = "com.android.settings"; String clsName = "com.android.settings.Settings$FingerprintEnrollSuggestionActivity";
oppo:
String pcgName = "com.coloros.fingerprint"; String clsName = "com.coloros.fingerprint.FingerLockActivity";
huawei:
String pcgName = "com.android.settings"; String clsName = "com.android.settings.fingerprint.FingerprintSettingsActivity";
其他机型以后补充:
其中sony貌似使用的标准google sdk,所以页面com.android.settings.fingerprint.FingerprintSettings 跳转会报权限拒绝,可使用上面的clsName跳转到介绍页面去,录入指纹。
要查看不同机型的指纹页面,可在手机上打开相应系统页面,然后调用adb 工具去查看:
adb shell “dumpsys window w|grep name=”获取到当前显示的activity;
在跳转前,请先检查activity是否存在或允许跳转, 否则可能会造成RuntimeException。
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android Manifest中meta-data扩展元素数据的配置与获取方式
Android实现获取meta-data和build.gradle的值
Android获取清单文件中的meta-data,解决碰到数值为null的问题
解决webview 第二次调用loadUrl页面不刷新的问题
解决Android WebView拦截url,视频播放加载失败的问题
Android webview加载https链接错误或无响应的解决
网友评论