2012-10-08 36 views
1

我已经看到一些类似的帖子,但我已经有ContentProvider注册在我的AndroidManifest无法找到ContentProvider的提供者信息

我有一个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 

我到底做错了什么?什么是问题?

如果您需要更多信息,请告诉我。

谢谢!

+0

你在哪个项目中有''元素?图书馆?应用程序?都? – CommonsWare

+0

”元素位于包含“ContentProvider”的项目中。图书馆。 – prolink007

回答

6

您的<provider>元素需要在应用程序中,因为它是ContentProvider的元素。实现ContentProvider恰好在Android库项目中的Java类不会改变托管应用程序是负责该提供程序的事实。最终 - 也许只要ADT 21 - 库项目中的<provider>元素可以自动添加到您的应用程序项目中。现在,AFAIK,这个过程是手动的。

+0

哇。我以为你只是在图书馆需要它。感觉像我之前做过的那样,它只在图书馆里。谢谢您的帮助。 – prolink007

相关问题