一個(gè)通過(guò)攔截Java方法調(diào)用用以檢測(cè)應(yīng)用是否合規(guī)的工具
一、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內(nèi)是否存在不合規(guī)的方法調(diào)用
檢查MIITRuleChecker內(nèi)置的不合規(guī)的方法
MIITRuleChecker.checkDefaults()
如果內(nèi)置的方法不滿足當(dāng)前需求,可自定義方法添加到list中進(jìn)行檢查;
比如新增一個(gè) MainActivity 的 onCreate 方法的調(diào)用檢查;
val list = MIITMethods.getDefaultMethods() list.add(MainActivity::class.java.getDeclaredMethod("onCreate" , Bundle::class.java)) MIITRuleChecker.check(list)
如果想檢查多個(gè)內(nèi)置方法外的方法,只需要?jiǎng)?chuàng)建一個(gè)新的集合,往集合里放你想檢查的方法member,然后傳入MIITRuleChecker.check()內(nèi)即可。
?
2.檢查指定方法調(diào)用并查看調(diào)用棧堆
//查看 WifiInfo class 內(nèi) getMacAddress 的調(diào)用棧堆 MIITRuleChecker.check(MIITMethods.WifiInfo.getMacAddress)
?3.檢查一定時(shí)間內(nèi)指定方法調(diào)用次數(shù)統(tǒng)計(jì)
//多個(gè)方法統(tǒng)計(jì) (deadline 為從方法調(diào)用開(kāi)始到多少毫秒后截至統(tǒng)計(jì)) val list = mutableListOf?().apply { add(MIITMethods.LocationManager.getLastKnownLocation) add(MIITMethods.LocationManager.requestLocationUpdates) add(MIITMethods.Secure.getString) } MIITMethodCountChecker.startCount( 20 * 1000,list) //單個(gè)方法統(tǒng)計(jì)(deadline 為從方法調(diào)用開(kāi)始到多少毫秒后截至統(tǒng)計(jì)) MIITMethodCountChecker.startCount(20 * 1000,MIITMethods.LocationManager.getLastKnownLocation)
?
特別注意:
檢查完成并完成整改后務(wù)必移除方法miit-rule-checker庫(kù)內(nèi)的所有方法調(diào)用,將庫(kù)一起移除最好
三、內(nèi)置方法表


審核編輯:湯梓紅
-
Android
+關(guān)注
關(guān)注
12文章
3980瀏覽量
132704 -
APP
+關(guān)注
關(guān)注
33文章
1588瀏覽量
75451 -
插件
+關(guān)注
關(guān)注
0文章
342瀏覽量
23344
原文標(biāo)題:Android APP合規(guī)檢查工具
文章出處:【微信號(hào):哆啦安全,微信公眾號(hào):哆啦安全】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
Android App環(huán)境檢測(cè)分析
機(jī)智云APP開(kāi)源框架介紹
IEEE802.3bt的合規(guī)性
App Tune-up Kit Pofiler工具使用介紹
IEEE802.3bt的合規(guī)性問(wèn)題
谷歌推出Android GPU檢查器工具,優(yōu)化可將GPU壓力降低40%
基于Android的果蠅識(shí)別APP
協(xié)作工具需要適當(dāng)?shù)?b class='flag-5'>合規(guī)性監(jiān)督
MISRA合規(guī)性的五個(gè)實(shí)用技巧
BAS工具如何對(duì)網(wǎng)絡(luò)安全合規(guī)性提供幫助呢
Android App開(kāi)發(fā)新選擇:使用Chaquopy輕松結(jié)合Python
潤(rùn)和軟件聯(lián)合主辦openEuler & OpenHarmony 社區(qū)合規(guī)SIG開(kāi)源合規(guī)共建研討會(huì)
合泰半導(dǎo)體全新發(fā)布MCU Selector App選型工具
汽車軟件團(tuán)隊(duì)必看:基于靜態(tài)代碼分析工具Perforce QAC的ISO 26262合規(guī)實(shí)踐

Android APP合規(guī)檢查工具介紹
評(píng)論