Android手機檢視某個煩人的程序日誌是哪個列印的
阿新 • • 發佈:2019-01-30
手機裡面有個日誌已經列印半年了,一直很煩人,基本上2秒左右列印一次,在除錯的時候log刷刷的,從日誌的內容來看,好像是關於百度定位的,因為我的手機上軟體比較多,所以不能一一解除安裝驗證(這種方法很蠢吧),而且很多應用都用到了百度定位sdk,但是一直沒靜下心來研究研究,今天突然有了思路,要從eclipse 的log日誌中的PID尋找答案,log如下
PID是android應用程式程序的ID,網上找到了一個方法,可以根據PID得出應用程式的包名,程式碼如下
private String getAppName(int pID) { String processName = ""; ActivityManager am = (ActivityManager)this.getSystemService(ACTIVITY_SERVICE); List l = am.getRunningAppProcesses(); Iterator i = l.iterator(); PackageManager pm = this.getPackageManager(); while(i.hasNext()) { ActivityManager.RunningAppProcessInfo info = (ActivityManager.RunningAppProcessInfo)(i.next()); try { if(info.pid == pID) { CharSequence c = pm.getApplicationLabel(pm.getApplicationInfo(info.processName, PackageManager.GET_META_DATA)); //Log.d("Process", "Id: "+ info.pid +" ProcessName: "+ info.processName +" Label: "+c.toString()); //processName = c.toString(); processName = info.processName; } } catch(Exception e) { //Log.d("Process", "Error>> :"+ e.toString()); } } return processName; }
打印出包名是com.huawei.android.totemweather,我的手機是華為榮耀6,根據包名還有百度搜索可以判斷這是手機的系統程式“天氣”,然後找到應用程式管理直接停用它就行了,反正我不用這個系統自帶的天氣,我用墨跡天氣。