私はストックミュージックプレーヤーを持っていないので、ここ数日これを研究してきました。とても悲劇的なので、簡単にはできません。さまざまな音楽アプリのAndroidManifest.xmlで手がかりを探した後、MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCHに出くわしました。
以下の方法を使用すると、曲がAndroid MediaStoreにある限り、Samsungミュージックプレーヤーをバックグラウンドで起動できます。アーティスト、アルバム、またはタイトルを指定できます。この方法はGooglePlayミュージックでも機能しますが、残念ながら、ストックAndroidプレーヤーの最新バージョンでさえこの意図はありません。
https://github.com/android/platform_packages_apps_music/blob/master/AndroidManifest.xml
private boolean playSong(String search){
try {
Intent intent = new Intent();
intent.setAction(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(SearchManager.QUERY, search);
startActivity(intent);
return true;
} catch (Exception ex){
ex.printStackTrace();
// Try other methods here
return false;
}
}
コンテンツのURIまたはURLを使用するソリューションを見つけるのは良いことですが、このソリューションは私のアプリケーションでは機能します。