如果我在应用程序A中有内容提供程序和CONTENT_URI,那么它也在清单中。如何从应用程序B调用它?
我是否需要在包含我的sqlite数据库的类中编写代码?或者我是否需要创建一个全新的课程并从那里打电话给提供者?
提前完成。
答案 0 :(得分:0)
您可以根据其性质注册活动B以接受URI。
为此,您将以下“intent-filer”部分添加到AndroidManifest.xml中的Activity B
<activity android:name="ACTIVITY B PATH">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="THE MIME TYPE TO ACCEPT" />
</intent-filter>
</activity>
这将注册活动B以接受带有数学MIME类型的URI的VIEW动作。
然后,当活动A运行以下代码时:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(CONTENT_URI));
activity.startActivity(intent);
活动B将自动激活,您可以通过从onCreate()方法调用getIntent()。getData()来读取URI。
您可以选择最适合您需要的不同动作(VIEW,EDIT,INSERT ...)和数据类型(MIME,SCHEMA,PATH ......)。