2014-07-11 38 views
0

我正在開發媒體播放器應用程序。我希望我的應用程序在選擇器對話框中列出,當用戶選擇任何媒體文件時打開。如何使我的應用程序能夠列出出現在如下圖所示的選擇器對話框中:enter image description here使媒體播放器在播放器選擇器對話框中列出

我已經搜索了很多,但沒有找到任何相關的文章。提前感謝。

回答

0

使用intent-filterAndroidManifest.xml

例。

<!-- Main activity --> 
<activity 
    android:name=".ui.activities.HomeActivity" 
    android:windowSoftInputMode="adjustPan" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <action android:name="android.intent.action.MUSIC_PLAYER" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 
     <category android:name="android.intent.category.APP_MUSIC" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 
<!-- Now playing --> 
<activity 
    android:name=".ui.activities.AudioPlayerActivity" 
    android:clearTaskOnLaunch="true" 
    android:exported="true" 
    android:launchMode="singleTask" 
    android:windowSoftInputMode="adjustPan" > 
    <intent-filter> 
     <action android:name="android.intent.action.VIEW" /> 

     <category android:name="android.intent.category.DEFAULT" /> 

     <data android:scheme="content" /> 
     <data android:mimeType="audio/*" /> 
     <data android:mimeType="application/ogg" /> 
     <data android:mimeType="application/x-ogg" /> 
     <data android:mimeType="application/itunes" /> 
    </intent-filter> 
    <intent-filter> 
     <action android:name="android.intent.action.VIEW" /> 

     <category android:name="android.intent.category.DEFAULT" /> 

     <data android:scheme="file" /> 
     <data android:mimeType="audio/*" /> 
     <data android:mimeType="application/ogg" /> 
     <data android:mimeType="application/x-ogg" /> 
     <data android:mimeType="application/itunes" /> 
    </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="http" /> 
     <data android:mimeType="audio/*" /> 
     <data android:mimeType="application/ogg" /> 
     <data android:mimeType="application/x-ogg" /> 
     <data android:mimeType="application/itunes" /> 
    </intent-filter> 
    <intent-filter> 
     <action android:name="android.intent.action.VIEW" /> 

     <category android:name="android.intent.category.DEFAULT" /> 

     <data android:mimeType="vnd.android.cursor.dir/playlist" /> 
     <data android:mimeType="vnd.android.cursor.dir/albums" /> 
     <data android:mimeType="vnd.android.cursor.dir/artists" /> 
    </intent-filter> 
    <intent-filter> 
     <action android:name="com.andrew.apollo.AUDIO_PLAYER" /> 

     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
    <intent-filter> 
     <action android:name="android.intent.action.PICK" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <category android:name="android.intent.category.OPENABLE" /> 
     <data android:mimeType="vnd.android.cursor.dir/audio"/> 
    </intent-filter> 
</activity> 
+0

當我選擇音頻文件直接從Mail播放時,它不起作用。請您提供信息以播放來自Mail的音頻文件? – AndiM

+0

當然,這不會工作,直到你修改它。我建議你先學習'intent-filter',然後檢查apollow音樂播放器如何使用它們。 https://github.com/CyanogenMod/android_packages_apps_Apollo/blob/cm-11.0/AndroidManifest.xml –