一個通過攔截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文章
3963瀏覽量
129546 -
APP
+關注
關注
33文章
1585瀏覽量
73808 -
插件
+關注
關注
0文章
339瀏覽量
22947
原文標題: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選型

評論