2011-05-03 115 views
0

我已经建立了自己的内容提供者。许多应用程序必须共享此数据库。android:内容提供者:服务崩溃凝视 - 无法获取提供者sensordata.collector.SurveyDbProvider

但是当我开始我的服务它崩溃。我甚至在日志中没有任何例外。

看起来像清单的问题,因为我添加了标签实际上提供商问题开始。

Package:sensordata.collector 
Clas name : SurveyDbProvider [SurveyDbProvider extends ContentProvider] 

这是我的清单文件:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="sensordata.collector" 
     android:versionCode="1" 
     android:versionName="1.0"> 
    <permission 
     android:name="sensordata.collector.SURVEY_DATA.permission.READ" 
     android:label="@string/perm_label"   
     android:description="@string/perm_label" /> 

    <permission 
     android:name="sensordata.collector.SURVEY_DATA.permission.WRITE" 
     android:label="@string/perm_label"   
     android:description="@string/perm_label" /> 

    <uses-permission android:name="sensordata.collector.SURVEY_DATA.permission.WRITE" /> 
    <uses-permission android:name="sensordata.collector.SURVEY_DATA.permission.READ" /> 


In application tag : 

    <provider android:name="sensordata.collector.SurveyDbProvider" 
     android:authorities="sensordata.collector" 
     android:readPermission="sensordata.collector.SURVEY_DATA.permission.READ" 
     android:writePermission="sensordata.collector.SURVEY_DATA.permission.WRITE" /> 

    </application> 
<uses-sdk android:minSdkVersion="4" /> 

</manifest> 

请帮助。

+0

一些如何无法粘贴entitre清单 <提供商机器人:名字=“sensordata.collector。 SurveyDbProvider” 机器人:当局= “sensordata.collector” 机器人:readPermission = “sensordata.collector.SURVEY_DATA.permission.READ” 机器人:writePermission = “sensordata.collector.SURVEY_DATA.permission.WRITE”/> \t – 2011-05-03 19:17:35

+0

任何人都可以告诉在清单中做的更改。我创建了一个内容提供商SurveyDbProvider,并希望在此应用程序以及其他应用程序中进行访问。另外我得到运行时异常:RuntimeException:无法获取提供者sensordata.collector.SurveyDbProvider – 2011-05-03 19:51:05

回答

0

该机构缺少ContentProvider名称。它应该是:

<provider android:name="sensordata.collector.SurveyDbProvider" 
      android:authorities="sensordata.collector.surveydbprovider" ... /> 

而且作为一个好习惯,您应该在提供程序类中声明一个与此权限匹配的CONTENT_URI常量。

0

您的提供者是否有公共构造函数? sensordata.collector.SurveyDbProvider必须是可初始化的,所以它不能是例如抽象类。

,如果你没有看到异常,您使用的是Eclipse,按F8键,也许多次,并检查您的logcat

相关问题