2013-01-19 42 views
15

我有一個應用程序包名稱。有什麼辦法可以得到這個應用程序的圖標,名稱? 軟件包名稱例如:com.example.name從包名獲取應用程序信息

+1

您是否嘗試過搜索? – wtsang02

+0

是的。我發現了一種方法,可以返回所有信息的應用程序。我需要一個從包名返回特定應用程序信息的方法 – KhalidTaha

回答

34

嘗試是這樣的:如果你想獲得安裝的應用程序包的名稱,然後這個代碼將有助於你

try { 
     ApplicationInfo app = this.getPackageManager().getApplicationInfo("com.example.name", 0);   

     Drawable icon = packageManager.getApplicationIcon(app); 
     String name = packageManager.getApplicationLabel(app); 
     return icon; 
    } catch (NameNotFoundException e) { 
     Toast toast = Toast.makeText(this, "error in getting icon", Toast.LENGTH_SHORT); 
     toast.show(); 
     e.printStackTrace(); 
    } 
+0

如果包中包含「com.example.name」的應用程序未安裝在手機中,它會工作嗎? – Dharmendra

+0

@Dharmendra它會遇到'NameNotFoundException'catch塊 –

1
Drawable icon =getPackageManager().getApplicationIcon("ur_package"); 

Strign label = context.getPackageManager().getApplicationLabel("ur_package"); 
0
String PackgeNameApp = "com.test.icon"; 
      String name="NULL"; 
      try 
      { 
       ApplicationInfo app = this.getPackageManager().getApplicationInfo(PackgeNameApp, 0); 
       Drawable icon = getPackageManager().getApplicationIcon(app); 
       name = getPackageManager().getApplicationLabel(app).toString(); 

      } 
      catch (PackageManager.NameNotFoundException e) 
      { 
       // 
      } 
+1

這與真的已經被接受的答案有什麼不同嗎? –

0

相關問題