9.打开MIUI中的悬浮窗权限编辑界面分析过程
来源:互联网 发布:表情包走红网络论文 编辑:程序博客网 时间:2024/05/22 05:31
在MIUI系统中悬浮窗的权限默认是被禁止的,如果开发APP的过程中需要用到悬浮窗的功能,如何引导用户打开悬浮窗权限?上图为EasyTouch在MIUI系统中引导用户打开悬浮窗权限的界面,是一个很好的示范例子。
本文介绍一下,如何分析打开系统的设置界面。
第一步:打开你想调用的界面,通过adb shell dumpsys activity命令查看栈顶的Activity名称,从而确定目标Activity的路径。
通过上图可以知道,悬浮窗的编辑界面所在的包名为com.miui.permcenter.permissions.AppPermissionsEditorActivity、目标界面处理的Action为miui.intent.action.APP_PERM_EDITOR、并且传入到该界面需要传Extras数据,那么问题来了,我要如何知道传入的Extras的key和value。且看第二步。
第二步:通过第一步中获取的包名com.miui.permcenter,大概猜测它在MIUI系统中的“安全中心”的app里面,于是到/system/app/目录下搜索,没有搜索到,再到/system/priv-app/目录下,发现了“安全中心”的app为SecurityCenter.apk,将其导出并反编译代码,找到com.miui.permcenter.permissions.AppPermissionsEditorActivity这个类,在onCreate方法中找到了我们想要的Extras的key。并且值为包名,如下图
第三步:编写测试代码。
/** * 打开MIUI权限编辑界面 */private void startMiuiPmActivity() {try {Intent intent = new Intent("miui.intent.action.APP_PERM_EDITOR");intent.setClassName("com.miui.securitycenter","com.miui.permcenter.permissions.AppPermissionsEditorActivity");intent.putExtra("extra_pkgname", getPackageName());startActivity(intent);} catch (Exception e) {e.printStackTrace();}}
运行发现成功了
最后:本次分析是在MIUI的v6版本上的分析结果,v5版本上的分析方法类似,请读者自己尝试分析。启动第三方可导出的Activity方法也类似。如果有更好的方法,可以告诉我。
0 0
- 9.打开MIUI中的悬浮窗权限编辑界面分析过程
- android 判断MIUI悬浮窗权限是否打开
- MIUI 判断悬浮窗权限
- Android 检查悬浮窗权限是否打开
- 关于MIUI悬浮窗权限问题的解决方案的一点补充
- MIUI的root权限管理分析
- MIUI的root权限管理分析
- windowbuilder 打开UI编辑界面
- Android 悬浮窗权限问题解决
- android悬浮窗权限相关
- eclipse 去掉 java编辑界面和jsp编辑界面xml编辑界面的的悬浮框提示
- MIUI打开A2SD+
- MIUI应用权限设置
- 打开编辑界面给表格设置默认值
- Android无需权限显示悬浮窗, 兼谈逆向分析app
- Android无需权限显示悬浮窗, 兼谈逆向分析app
- Android无需权限显示悬浮窗, 兼谈逆向分析app
- Android无需权限显示悬浮窗, 兼谈逆向分析app
- 360详解儿童手表背后技术:五颗芯片共同定位
- 500 (Internal Server Error)错误解析
- 利用CocoaHttpServer搭建手机本地服务器
- Masonry的使用和介绍
- js 自动补全
- 9.打开MIUI中的悬浮窗权限编辑界面分析过程
- Android smail变量对照表
- android自带样式 theme
- 暴雪公司关于字符串匹配的hash算法
- nginx无法启动: libpcre.so.1/libpcre.so.0: cannot open shared object file解决办法
- 静电边值问题的唯一性定理
- 字符串匹配算法之SimHash算法
- Html编码
- Best Time to Buy and Sell Stock III - LeetCode 123