2009-11-09 167 views
11

我能夠部署我的應用程序,但由於某種原因,我無法將圖標顯示在操作系統主頁的上拉菜單中。有誰知道我能做些什麼來解決這個問題?Android:未安裝APK圖標

順便說一下,應用程序顯示在「管理應用程序」中,但由於某種原因不顯示爲圖標。通過Eclipse,我可以在部署後啓動應用程序,但這就是它......之後,我無法啓動它,因爲沒有圖標。 :(以下是我的清單文件:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="com.android.ApplicationName" 
     android:versionCode="1" 
     android:versionName="2.0"> 
    <application android:icon="@drawable/icon" 
       android:debuggable="true" 
       android:label="@string/app_name"> 
     <activity android:name=".EntrySplash" 
        android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
       <category android:name="android.intent.category.BROWSABLE"></category> 
       <data android:scheme="com.android.ApplicationName"></data> 
      </intent-filter> 
     </activity> 
     <activity android:name=".EntryScreen" android:label="@string/app_name"> 
     </activity>   
     <activity android:name=".ApplicationName" android:label="@string/app_name"> 
     </activity>  
    </application> 
    <uses-sdk android:minSdkVersion="3" /> 
<uses-permission android:name="android.permission.INTERNET"></uses-permission> 
</manifest> 
+0

什麼對圖標的細節?大小,格式等? – Bostone 2009-11-09 02:32:03

+0

圖標大小爲48x48,格式爲png。我之前使用過這個圖標,它工作。我不知道我做了什麼打破了這個功能。 – Legend 2009-11-09 02:38:42

+1

我們遇到同樣的問題,但三星Galaxy用戶通過Android Market安裝應用程序報告,因此您的ADB解決方法不會爲我們削減它。還有其他建議嗎? – Matthias 2010-10-14 07:28:48

回答

0

顯然我發現它的工作原理如果我使用命令行adb手動安裝應用程序,那麼,如果您更新了ADT plu杜松子酒和您遇到問題,只需手動安裝...

1

儘量擺脫你的android.intent.category.BROWSABLE<data android:scheme="com.android.ApplicationName">暫時,看看你的圖標顯示出來

此外,在一個不相關的事情,我建議你使用說明 - *元素是第一個明顯的孩子,而不是最後一個,有傳言稱Android Market的XML解析出現了問題,他們希望在任何元素之前看到這些解析。

+0

謝謝我改變了......它並沒有影響任何東西,雖然......我做了ADT插件的更新,那是當我開始注意到這個奇怪的問題。從那時起,該圖標沒有被安裝,該項目沒有建立,或者它一直說有錯誤,但不告訴我什麼錯誤...當我重新啓動計算機時,錯誤「消失」... – Legend 2009-11-09 23:58:34

+0

傳言是真的,我們曾經遇到過同樣的問題。但是,該問題具有不同的症狀,即開發儀表板應用程序上傳只會失敗並顯示錯誤。 – Matthias 2010-10-14 07:29:52

1

此問題在SDK v2.2中仍然存在。如果你想從Eclipse發佈到你的手機,除了上面的建議之外,還有其他一些建議。如果它仍然不能正常工作,並且您不想手動發佈,請嘗試使用它們。清除清單中的所有空白行。並確保此行只是在它唯一的圖標和標籤屬性:

<application android:icon="@drawable/icon" android:label="@string/app_name"> 
8

我有這個問題,以及,我覺得這對我工作的解決辦法是我分開的意圖標籤像下面

<intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 
<intent-filter> 
     <category android:name="android.intent.category.BROWSABLE"></category> 
     <data android:scheme="com.android.ApplicationName"></data> 
</intent-filter> 

當我改變我的清單文件那樣,我的圖標出現了。

0

我發現有時我的資產在應用程序中沒有更新,因此我將它們添加到我的項目中。 有兩種方法可以解決此問題:

  1. 清理並重建項目。
  2. 卸載手機上的應用程序並使用ADT從頭開始安裝。

就這麼簡單!

0

只是爲了給CommonsWare的答案添加確認,我剛剛遇到了針對2.3.3+的項目的確切錯誤。我不得不刪除以下內容:

<data android:scheme="com.android.ApplicationName"></data> 

然後我不得不清理項目。我認爲每次都必須使用adb進行安裝是Manifest出現問題的跡象,並且稍後會回來咬你(特別是在Market上)。

2

有同樣的問題,並發現了一個需要注意的是,在主要的活動標籤這個正確的意圖:

<intent-filter> 
    <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

必須是在自己的意圖過濾器。您可能在主要活動的意圖過濾器中包含其他項目,如果是這樣,則將其餘項目分隔到正下方的單獨意向過濾器標記中。把MAIN和LAUNCHER放在一起。

在SO上這個問題的答案很多似乎錯過了這一點。

希望它有幫助!

2

這是發生,因爲你給你的啓動活動兩個類別的名稱。您啓動的活動應該在其Intent過濾器中只有一個類別名稱。但是,如果您還需要Browsable活動,那麼您的啓動活動可能有2個Intent Filters,如下所示。

您只需將您的EntrySplash Activity代碼替換爲Manifest.xml文件中的以下代碼。

<activity android:name=".EntrySplash" 
        android:label="@string/app_name"> 
<intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
<intent-filter> 
       <category android:name="android.intent.category.BROWSABLE"></category> 
       <data android:scheme="com.android.ApplicationName"></data> 
      </intent-filter> 
</activity> 

這將確保爲你工作...