一個通過攔截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文章
3880瀏覽量
125907 -
APP
+關注
關注
33文章
1545瀏覽量
71838 -
插件
+關注
關注
0文章
313瀏覽量
22233
原文標題: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
vivado下載合規性驗證失敗
嗨,下載xilinx vivado時出現此錯誤請更正錯誤并再次發送您的信息。由于您的帳戶導出合規性驗證失敗,我們無法滿足您的要求。以上來自于谷歌翻譯以下為原文Hi,I am getting
發表于 12-29 10:34
導出合規性驗證失敗
我一直收到錯誤'導出合規性驗證失敗'。我嘗試輸入不同的郵寄地址,并嘗試了不同的格式。絕對沒有我們地址中的奇怪字符。我也試過看下面的內容,這沒有用。http://www.xilinx.com
發表于 04-03 09:45
導出合規性驗證失敗錯誤
嗨,我正在嘗試下載Vivada Webpack,但是我一直收到錯誤消息“由于您的帳戶導出合規性驗證失敗,我們無法滿足您的要求。請訪問http://www.xilinx.com/support
發表于 04-13 08:59
出口合規性怎么驗證?
嗨,我正在嘗試下載Vivado,并且我一直收到失敗的導出合規性驗證問題。我在美國之前已經從Xilinx下載了軟件而沒有遇到任何問題(盡管自上次以來已經有大約九個月了)所以可能情況發生了變化。我不記得
發表于 05-15 07:22
帳戶導出合規性驗證失敗怎么辦
嗨,我試著下載Vivado Design Suite但我不能及時總是回復我這條消息如下:請更正錯誤并再次發送您的信息。由于您的帳戶導出合規性驗證失敗,我們無法滿足您的要求。美國***出口許可證。出口
發表于 05-27 10:30
IEEE802.3bt的合規性問題
?在上次 IEEE802.3bt 任務組會議中、在討論 PSE 中的可能故障檢測方法時提出了該主題。與 USB 不同,USB 實施者論壇制定了合規計劃,PoE 設備并沒有類似計劃。事實上,誰都可以在其
發表于 11-22 07:58
為昕投板檢查工具-DFM
為昕檢查工具,涵蓋SIPIEMC導熱板設計、熱設計、安全性設計、可靠性設計、測試性、保護電路、安規要求、電路性能、等186條規則??梢远ㄖ崎_發一些檢查項目。歡迎聯系我們。
發表于 03-07 14:50
谷歌推出Android GPU檢查器工具,優化可將GPU壓力降低40%
早在去年12月的高通峰會期間,高通就宣布了其驍龍 765和865平臺的可更新GPU驅動程序。今天,谷歌推出了其新的Android GPU檢查器工具,該工具是用于智能手機GPU的新圖形分
Android App開發新選擇:使用Chaquopy輕松結合Python
。Chaquopy是一個可以幫助開發者在Android App中輕松使用Python代碼的工具。本文將介紹如何安裝Chaquopy,讓你的Andro
評論