2011-05-03 156 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