2014-03-07 62 views
3

我有一個程序,以用戶的名義發佈推文。一切工作在AVD。但是,我似乎無法讓我的程序有一個圖標。奇怪的是,當我刪除BROWSABLE類別和數據標記的行時,圖標顯示出來,程序正常顯示在程序列表中。Android意圖與多個類別

我認爲我的Android Manifest存在問題,但我似乎無法使所有工作都正常進行。請幫忙!

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:theme="@style/Theme.AppCompat.Light" 
     android:name=".MainActivity" 
     android:label="@string/app_name" 
     android:launchMode="singleTask" > 
     <intent-filter> 
      <category android:name="android.intent.category.BROWSABLE"/> 
      <category android:name="android.intent.category.LAUNCHER" /> 
      <category android:name="android.intent.category.TAB"/> 
      <action android:name="android.intent.action.MAIN" /> 
      <action android:name="android.intent.action.VIEW"/> 
      <data android:scheme="howsmydriving-oauth-twitter" android:host="callback"/> 
     </intent-filter> 
    </activity> 

    <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> 
    <activity android:name="com.google.android.gms.ads.AdActivity" 
     android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/> 
</application> 

回答

4

好吧,所以,我想出了我的問題。

我需要兩個意向過濾器。將意圖過濾器部分更改爲以下允許我在安裝的應用列表中查看我的應用,並獲得OAuth重定向:

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

     <intent-filter> 
     <action android:name="android.intent.action.VIEW" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <category android:name="android.intent.category.BROWSABLE" /> 
      <data android:scheme="howsmydriving-oauth-twitter" android:host="callback"/> 
     </intent-filter> 
1

您缺少android:icon條目。它應該等於字符串@drawable/$NAME,即android:icon="@drawable/ic_launcher"This可能會有所幫助。

+0

我其實已經有了,我只是忽略了包含它。但是,當程序正確安裝時,默認圖標確實會顯示出來。 – Namingwaysway