2016-07-15 91 views
0

在我的應用程序組件名稱方法只使用一個參數,我使用ComponentName拿到推出應用這樣的包名:在安卓

ComponentName componentName = new ComponentName(
       event.getPackageName().toString(), 
       event.getClassName().toString() 
     ); 

上面的代碼工作perfectly.So,問題是,我只想要包名稱我不希望類名稱,上面的代碼給出了包名稱以及類名稱。我試圖從它刪除event.getClassName().toString()參數,我試圖用null替換它,但它提供了異常和崩潰。 那麼如何只從上面的代碼中獲取軟件包名稱.. 在此先感謝..

回答

0

您可以從應用程序上下文中獲取軟件包名稱。與此代碼試試:

try { 
    String packageName = getApplicationContext().getPackageName(); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 
+0

好的我會嘗試 – Adarsh

+0

嗨,我已經試過你的代碼它工作的很好 – Adarsh

+0

我很高興幫助你:)感謝您的正確答案:P –

0

那麼,問題是,我想包的名稱只有我不想類名,上面的代碼給兩個包的名稱以及類名。

這是不可能的。一個組件是一個類。因此,ComponentName必須指向一個類。我們使用軟件包名稱(識別包含類的應用程序)和類(以識別應用程序中的特定組件)的組合。

+0

好吧我得到它謝謝你的時間 – Adarsh