1. 程式人生 > >Android手機檢視某個煩人的程序日誌是哪個列印的

Android手機檢視某個煩人的程序日誌是哪個列印的

手機裡面有個日誌已經列印半年了,一直很煩人,基本上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,根據包名還有百度搜索可以判斷這是手機的系統程式“天氣”,然後找到應用程式管理直接停用它就行了,反正我不用這個系統自帶的天氣,我用墨跡天氣。