Поиск родного музыкального проигрывателя Android - PullRequest
1 голос
/ 02 марта 2010

В стандартном музыкальном проигрывателе в Android 2.1 (как минимум) исполнитель, альбом и название дорожки воспроизводимой в данный момент дорожки можно долго нажимать, что вызывает контекстное меню «Поиск NN с : ", со ссылками на разные приложения.

UPDATE

Мне удалось извлечь журналы с моего собственного устройства, выполнить поиск исполнителя и выбрать Google Listen для выполнения действия:

03-02 11:59:34.551 I/ActivityManager(   86): Displayed activity com.android.music/.MediaPlaybackActivity: 1758 ms (total 1953 ms)
03-02 11:59:35.691 I/ActivityManager(   86): Starting activity: Intent { act=android.intent.action.CHOOSER cmp=android/com.android.internal.app.ChooserActivity (has extras) }
03-02 11:59:36.781 I/ActivityManager(   86): Displayed activity android/com.android.internal.app.ChooserActivity: 1036 ms (total 1036 ms)
03-02 11:59:38.191 I/ActivityManager(   86): Starting activity: Intent { act=android.intent.action.MEDIA_SEARCH flg=0x13000000 cmp=com.google.android.apps.listen/.SearchListActivity (has extras) }
03-02 11:59:38.511 D/Listen  (  491): Request search results for http://lfe-alpo-gm.appspot.com/search?q=Finntroll

Я определенно буду заниматься этим сам, но для меня это довольно ново. Я был бы признателен за помощь здесь. Означает ли вышесказанное, что если я настрою намерение MEDIA_SEARCH в качестве точки входа для действия, оно будет отображаться в списке выбора?

1 Ответ

4 голосов
/ 02 марта 2010

Хорошо, MEDIA_SEARCH был верным путем. Для справки:

Добавление фильтра намерений достаточно, чтобы приложение отобразилось в списке выбора в медиаплеере:

<action android:name="android.intent.action.MEDIA_SEARCH" />

И тогда действие можно получить следующим образом:

final Intent queryIntent = getIntent();
final String queryAction = queryIntent.getAction();

if (MediaStore.INTENT_ACTION_MEDIA_SEARCH.equals(queryAction)) {
    String artist = queryIntent.getStringExtra(MediaStore.EXTRA_MEDIA_ARTIST);
    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...