如何启动标记(启动Shazam搜索活动)

问题描述:

我想在shazam中开始搜索Activity。根据this没有搜索到shazam的Activity,只有<provider>标签。如何启动<provider/>标记(启动Shazam搜索活动)

<provider android:name="com.shazam.android.SearchProvider" android:authorities="shazamSearchEncore" android:syncable="false" />

我试图启动它以不同的方式,但是,因为这不是一个Activity失败。那么我该如何开始shazam搜索?或者我错过了manifest xml文件的内容?

我尝试:

Intent intent = new Intent("com.shazam.android.SearchProvider"); 
intent.putExtra("query",query); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
this.context.startActivity(intent); 

final Intent shazamIntent = new Intent(Intent.ACTION_SEARCH); 
    shazamIntent.setPackage("com.shazam.android.SearchProvider"); 
    shazamIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    this.context.startActivity(shazamIntent); 

等等......

而且我检查这些后 post 1post 2。但没有发现有用的东西

A ContentProvider不能由像Activity这样的意图“启动”。

提供程序是一个组件,用于为某些数据提供接口。数据可以通过ContentResolver访问。

某些ContentProvider也允许从其他应用程序访问。这通常记录在某处,提供访问数据所需的URL和数据本身的详细信息。联系人提供程序就是这样一个例子,用于访问设备上存储的所有联系人信息。

从清单声明的外观判断,假设您正在尝试访问,我认为它只能被Shazam应用程序本身访问,所以无法访问它提供的数据。

+0

对我来说太糟糕了。谢谢。 – God