Ⅰ 如何查看android App的方法總數
dexmp命令dexmp支持後綴.dex、.jar、.zip、.apk的文件,不需要將apk反編譯成jar是AndroidSDK自帶的命令在目錄${ANDROID_SDK}/build-tools/23.0.1/dexmp.exe對apk的統計只是針對單個dex的
Ⅱ Android如何統計應用佔用內存
要獲取過去三小時內應用內存佔用情況統計信息可以使用如下命令:
會輸出應用運行時間百分比,以及PSS(分攤內存大小),USS(獨占內存大小),RSS(常駐內存大小)(minPSS-avgPSS-maxPSS/minUSS-avgUSS-maxUSS/minRSS-avgRSS-maxRSS over 樣本數)
參考: https://developer.android.com/studio/command-line/mpsys#ViewingAllocations
Ⅲ Android的APP要如何統計數據
可以用openinstall的渠道統計功能實現,渠道包、h5鏈接還有廣告平台都可以監控數據。
Ⅳ 如何查看Android App的方法總數
大家都知道Android有65535方法數的問題,也就是說App的java代碼Method總數、Field總數都不能超過65535個,那我們有什麼辦法能查看我們App的這個值已經有多少了呢?
dexmp命令
#查看apk的method總數
dexmp -f app.apk | grep method_ids_size
#查看apk的field總數
dexmp -f app.apk | grep field_ids_size
dexmp 支持 後綴 .dex、.jar、.zip、.apk的文件,所以不需要將apk反編譯成jar哦,而且這個是Android SDK自帶的命令,在這個目錄${ANDROID_SDK}/build-tools/23.0.1/dexmp.exe
Ⅳ 怎樣高效統計Android開源庫的方法數
t he walked faster, aware all at once of urgency and th
Ⅵ Android方法數超過65535後的分包及其原理(一)
隨著Android開發過程中,各類第三方庫的加入,導致整個項目的方法數在不知不覺中就超過了65535。隨便看幾個常用的庫
當方法數超過65535時,項目一運行錯誤日誌就一下映入了眼前
怎麼是EventBus的問題,找不到EventBus?不可能啊。。。EventBus都用了這么久了,從來沒出現過這個問題啊!!!
Task it easy!
我們先來看一下整個項目的總方法數,居然剛剛超過了65535,那很有可能就是65535的鍋了,EventBus默默鬆了一口氣。
也許會有觀眾老爺問,那怎麼統計整個項目的方法數呢?那這里就順帶講一下吧。
這里用到了一個叫做 dexcount-gradle-plugin 的插件,在app/build.gradle中添加
編譯過後,你就會看到
你想要的信息都在裡面了~不只有方法總數,還包括變數的總數和類的總數,總之十分強大。
言歸正傳,現在來看下如何解決這個問題呢。。。很簡單,將build.gradle中的multiDexEnabled設為true就行了啊,但是這個辦法有一個局限性,在5.0以下的設備仍然會報NoClassDefFoundError的錯誤,所以如果你的項目minSdkVersion在21及以上,那這個辦法OK(Google的5.0以後才引入了該屬性)。但是我們不能拋棄5.0以下的用戶啊,那用下面這種方法就可以完美解決了。
很簡單吧?在5.0以下的手機上跑一跑,完美運行~ 關於分包的原理,將在下一篇文章中進行分析。
Ⅶ Android應用統計-使用時長及次數統計(一)
最近在做有關於應用統計有關的工作,主要是統計系統中客戶端應用(非系統自帶的那些基礎應用,比如DownLoadManager),在每一天的使用情況,統計內容包括:應用打開次數,應用合計使用時長等。
在所搜尋的方案中,大致有如下兩種:
以下方案採用兩個方案並行,主要是以系統數據統計結果為主,以自行記錄的數據作為參照,用以對比兩組數據,以保證數據統計結果的有效性和穩定性。
在Android中,系統會自行記錄應用的打開次數和使用時間,且提供了相關api於開發者,但是每一次版本提升都可能會對api帶來相當大的改變,這一塊也不例外。但是始終沒有變化的就是在撥號鍵盤輸入* # * #4636# * #*,進入工程模式,點擊「使用情況統計數據」,你就可以看到統計界面了。由於各個版本之間差異比較大,而且相關的資料也比較少,本次使用的api以及相關的說明都是以Android-5.1為基礎。在某些版本中,應用統計api,存在不少缺陷以及避坑的地方,尤其是手機廠家修改過源碼之後,所以對於某些品牌的測試機器,程序的運行結果會有一點不一樣,請各位讀者有所注意。
本文主要介紹了關於Android系統中統計各個app的使用情況的解決方案,以及獲取相關數據的方法。關於系統記錄的數據的原理以及在該原理的邏輯下可能出現的bug,將會在接下來的文章中詳細闡述。
github: UseTimeStatistic
參考文獻:
Android 5.0以上通過UsageStatsManager類 獲取應用使用情況(精品)
android如何獲取系統里各個應用的使用時間?
Android UsageStatsService:要點解析
Android5.1應用打開次數獲取
下一篇:Android應用統計-使用時長及次數統計(二)
Ⅷ 如何查看或者統計android的apk的方法數
進android的設置,裡面有軟體和應用管理,就可以看app總數和站的空間
Ⅸ Android的APP,是怎麼做渠道統計的
安卓渠道統計方案
方法1:通常傳統的做法是對不同渠道進行分包發布,每個渠道打一個標識唯一的渠道id的安裝包,再收集渠道安裝數據。這種方式有些弊端,如果渠道很多的話比如說有100個渠道要推廣,就得手工打100個渠道包,這樣做的話技術人員就比較辛苦了。另一個弊端就是應用市場會存在抓包的情況,這樣就會造成數據不準的情況。
方法2:用渠道鏈接替代渠道安裝包做渠道統計,這種方案就可以免去手工打渠道包,而且統計數據會更精確。具體實現請參考openinstall的官網 www.openinstall.io
Ⅹ android 怎麼做流量統計
1、獲取已安裝app
List<PackageInfo>packageInfos=packageManager.getInstalledPackage(PackageManager.GET_PERMISSIONS);
2、循環對每個app判斷是否有申請INTERNET許可權,有則繼續執行
for(PackageInfopackageInfo:packageInfos){
if(packageInfo.requestedPermissions.contains("android.permission.INTERNET")){
//執行第3步的獲取
}
}
3、獲取該app的名字以及上傳/下載流量統計(先獲取該app在整個手機中的專屬id:uid,再通過TrafficStats的get方法獲取)
4、將獲取到的全部數據記錄到自定義的javabean,然後集合到list集合中,最後在listview中設置適配器,將數據顯示出來。