2011-10-24 74 views
0

在我的android應用程序中,我需要以編程方式獲取應用程序的版本。但是,每當我嘗試使用此代碼時,都會在此行崩潰。有什麼我丟失getPackageManager上的Android應用程序崩潰

PackageInfo pinfo = getPackageManager().getPackageInfo(
        this.getPackageName(), 0); 

我試着從PackageManager和PackageInfo得到它。在這兩種情況下,應用程序崩潰並啓動ViewRoot.handleMessage,並且我收到消息「Source Not found」

+0

你有沒有在任何活動中寫這段代碼? –

+0

是的,我已經添加了一個函數。 – EnthuDeveloper

+0

你有沒有試過我的代碼? –

回答

1

請嘗試以下函數。

public int getVersion(Context context) 
{ 
     try 
     { 
      PackageInfo pInfo = context.getPackageManager().getPackageInfo("here.thenameofyour.package", PackageManager.GET_META_DATA); 
      return pInfo.versionCode; 
     } 
     catch (NameNotFoundException e) 
     { 
      return 0; 
     } 
    } 
} 
+1

非常感謝Chirag Raval。這幫助了我。真的很好的一段代碼。 – EnthuDeveloper