一个通过拦截Java方法调用用以检测应用是否合规的工具
一、Android Studio中引用插件miit-rule-checker
1.添加mavenCentral
allprojects { repositories { google() jcenter() mavenCentral() } }
2.添加Gradle依赖
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation 'com.android.support27.1.1' implementation 'com.android.support.constraint1.1.2' testImplementation 'junit4.12' androidTestImplementation 'com.android.support.test1.0.2' androidTestImplementation 'com.android.support.test.espresso3.0.2' implementation 'com.jakewharton8.8.1' annotationProcessor 'com.jakewharton8.8.1' implementation 'com.alibaba2.0.23' implementation("org.greenrobot3.3.1") implementation 'com.appsflyer6.9.0' implementation "com.android.installreferrer2.2" implementation("org.greenrobot3.3.1") implementation 'com.squareup.okhttp35.0.0-alpha.10' implementation 'io.github.loper70.2.0' }
二、使用方法
1.检查APP内是否存在不合规的方法调用
检查MIITRuleChecker内置的不合规的方法
MIITRuleChecker.checkDefaults()
如果内置的方法不满足当前需求,可自定义方法添加到list中进行检查;
比如新增一个 MainActivity 的 onCreate 方法的调用检查;
val list = MIITMethods.getDefaultMethods() list.add(MainActivity::class.java.getDeclaredMethod("onCreate" , Bundle::class.java)) MIITRuleChecker.check(list)
如果想检查多个内置方法外的方法,只需要创建一个新的集合,往集合里放你想检查的方法member,然后传入MIITRuleChecker.check()内即可。
2.检查指定方法调用并查看调用栈堆
//查看 WifiInfo class 内 getMacAddress 的调用栈堆 MIITRuleChecker.check(MIITMethods.WifiInfo.getMacAddress)
3.检查一定时间内指定方法调用次数统计
//多个方法统计 (deadline 为从方法调用开始到多少毫秒后截至统计) val list = mutableListOf().apply { add(MIITMethods.LocationManager.getLastKnownLocation) add(MIITMethods.LocationManager.requestLocationUpdates) add(MIITMethods.Secure.getString) } MIITMethodCountChecker.startCount( 20 * 1000,list) //单个方法统计(deadline 为从方法调用开始到多少毫秒后截至统计) MIITMethodCountChecker.startCount(20 * 1000,MIITMethods.LocationManager.getLastKnownLocation)
特别注意:
检查完成并完成整改后务必移除方法miit-rule-checker库内的所有方法调用,将库一起移除最好
三、内置方法表
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
Android
+关注
关注
12文章
3935浏览量
127339 -
APP
+关注
关注
33文章
1573浏览量
72439 -
插件
+关注
关注
0文章
326浏览量
22440
原文标题:Android APP合规检查工具
文章出处:【微信号:哆啦安全,微信公众号:哆啦安全】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
Android App环境检测分析
这个原理就是APP的AndroidManifest.xml文件中application是否配置了android:debuggable="true",设置true支持动态调试
机智云APP开源框架介绍
机智云物联网开源框架App工程(Eclipse工程)介绍:机智云开源框架(GizOpenSource_AppKit_Android) 是开源的适用于物联网的软件框架,用于无缝的支持设备到设备的互联
发表于 02-15 17:56
IEEE802.3bt的合规性
出台之前(如果能出现),您也可以通过一些方式来确保获得合规的 PoE 部件设备。您可以检查部件是否通过 UNH 互操作实验室测试。UNH-IOL 可为 PoE 设备提供合
发表于 09-14 11:00
App Tune-up Kit Pofiler工具使用介绍
介绍APP Tune-up Kit 是高通公司开发的一款分析任何Android 应用分析的工具,不同于Snapdragon Profiler它操作简单,界面简洁,只需要按一下,就可以在
发表于 09-21 10:49
IEEE802.3bt的合规性问题
?在上次 IEEE802.3bt 任务组会议中、在讨论 PSE 中的可能故障检测方法时提出了该主题。与 USB 不同,USB 实施者论坛制定了合规计划,PoE 设备并没有类似计划。事实上,谁都可以在其
发表于 11-22 07:58
中兴通讯再发公告重视合规但中兴要怎么翻盘?靠游戏手机?
管制合规专家团队;构建和优化中兴通讯出口管制合规管理架构、制度和流程;引入和实施SAP贸易合规管
协作工具需要适当的合规性监督
协作工具的快速采用和越来越多的使用给企业带来了风险,并相应地需要适当的合规性监督。2020年,IT团队动员起来实施协作平台以提供灵活性、效率和业务连续性,但合
MISRA合规性的五个实用技巧
回过头来对违规行为进行详细分析,很容易看到关于整个过程的更大问题。MISRA 的文档“MISRA 合规性:2016”比语言子集本身受到的新闻报道要少得多,但它对于了解您选择的静态分析工具突出显示的信息如何与 MISRA
BAS工具如何对网络安全合规性提供帮助呢
SafeBreachCISO Avi Avivi 分享了他对为什么仅靠满足网络安全合规性是不够的以及BAS工具如何提供帮助的观点。
Android App开发新选择:使用Chaquopy轻松结合Python
。Chaquopy是一个可以帮助开发者在Android App中轻松使用Python代码的工具。本文将介绍如何安装Chaquopy,让你的Andro
润和软件联合主办openEuler & OpenHarmony 社区合规SIG开源合规共建研讨会
近日,由江苏润和软件股份有限公司(以下简称“润和软件”)参与联合主办的“openEuler OpenHarmony 社区合规 SIG 开源合规共建研讨会”于南京在润和软件成功举办。作为
合泰半导体全新发布MCU Selector App选型工具
近日,合泰半导体全新MCU Selector App选型工具已正式亮相,为广大的客户提供一个更为便捷且容易操作的选型辅助。通过MCU Selector App选型
评论