1

我看过一些类似的帖子,但我已经ContentProvider在我的AndroidManifest.

我有一个ContentProviderMyContentProvider.

并且MyContentProvider位于一个名为MyProject. 带包位置personal.mobile.abc.angry.tiger.MyContentProvider


AndroidManifest的这个项目看起来像这样(遗漏了不相关的信息):

<application
    android:label=...
    android:icon=...
    android:theme=...>
    <provider
        android:name="personal.mobile.abc.angry.tiger.MyContentProvider"
        android:authorities="personal.mobile.abc.angry.tiger">
    </provider>
</application>


林特一直这样说:

The <provider> personal.mobile.abc.angry.tiger.MyContentProvider is not registered in the manifest.

Logcat 在尝试运行包含以下库的应用程序时会这样说ContentProvider

Failed to find provider info for personal.mobile.abc.angry.tiger

我究竟做错了什么?问题是什么?

如果您需要任何进一步的信息,请告诉我。

谢谢!

4

1 回答 1

6

您的<provider>元素需要在应用程序中,因为它是带有ContentProvider. 实现它的 Java 类ContentProvider恰好位于 Android 库项目中这一事实并没有改变托管应用程序是负责该提供程序的人这一事实。

最终——也许在 ADT 21 之后——您<provider>在库项目中的元素可以自动添加到您的应用程序项目中。现在,AFAIK,这个过程是手动的。

于 2012-10-08T19:40:20.260 回答