gpt4 book ai didi

java - 如何启动 标签(启动 Shazam 搜索 Activity )

转载 作者:行者123 更新时间:2023-12-02 03:40:59 26 4
gpt4 key购买 nike

我要开始搜索Activity在沙赞中。根据this没有搜索Activity到 Shazam,只有 <provider>标签。

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

我尝试以各种方式启动它,但因为这不是 Activity它失败了。那么如何开始 Shazam 搜索?或者我错过了什么manifest xml 文件?

我的尝试:

1:

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

2:

  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 1 post 2 。但发现没有任何帮助。

最佳答案

ContentProvider 无法通过 Activity 等 Intent “启动”。

提供者是一个组件,旨在为某些数据提供接口(interface)。数据可以通过 ContentResolver 访问。

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

从您尝试访问的提供的 list 声明的外观来看,我认为它只能由 Shazam 应用程序本身访问,因此无法访问它提供的数据。

关于java - 如何启动 <provider/> 标签(启动 Shazam 搜索 Activity ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36839571/

26 4 0