使用特定应用程序打开android意图(已知包名)

时间:2015-08-25 14:01:35

标签: java android android-intent start-activity specifier

我的问题是我有这样的意图。

Intent intent = new Intent(MediaStore.INTENT_ACTION_MEDIA_PLAY_FROM_SEARCH);     
intent.putExtra(MediaStore.EXTRA_MEDIA_FOCUS, MediaStore.Audio.Artists.ENTRY_CONTENT_TYPE);        
intent.putExtra(MediaStore.EXTRA_MEDIA_ARTIST, artist);     
intent.putExtra(SearchManager.QUERY, artist);
if(intent.resolveActivity(getPackageManager()) != null)
{
startActivity(intent);
}

当我测试应用程序时,它会打开一个开放状态。 因此,如果我打开标准的音乐Android应用程序它不会打开但是当我使用谷歌音乐时,它就像一个魅力。

所以,如果没有选择,我必须使用谷歌音乐,因为没有人可以回答this问题,我猜这是一个我不知道的问题。但至少有一种方法可以将其设置为仅通过Google音乐应用打开。就像将googlw音乐设置为默认应用程序一样,打开仅由我的应用程序发送的特定意图而不会损害任何其他进程。

我是Android的初学者。请。请。帮助我。

1 个答案:

答案 0 :(得分:1)

工作原理。

我在特定的堆栈溢出文章中读到了我不知道哪个。但是,但是家伙提到限制发送意图可以使用intent.setClass但是它需要知道活动名称以及包名称。但我不知道活动名称。所以在预感中,我尝试使用intent.setPackage和Boom工作。我还要感谢giorashc的努力。