Android的内容提供商给未知的URL内容:// COM [英] android content provider gives Unknown URL content://com
本文介绍了Android的内容提供商给未知的URL内容:// COM的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想创建一个自定义的内容提供商,我得到一个错误信息
I am trying to create a custom content provider and I get a error message
未知的URL内容://com.example.test.samplecontentprovider/yay
Unknown URL content://com.example.test.samplecontentprovider/yay
我在我的清单和内容提供商以下信息
I have the following info in my manifest and content provider
<provider
android:authorities="com.example.test.samplecontentprovider"
android:multiprocess="true"
android:name="com.example.test.SampleContentProvider"></provider>
AUTHORITY = "com.example.test.samplecontentprovider"
我在这里可能是错的,请建议。
where could I be wrong, please suggest.
我还包括源$ C $ C包在这里。 http://www.fileserve.com/file/p4eNVgK
I am also including the source code package here. http://www.fileserve.com/file/p4eNVgK
推荐答案
在这里你去项目菲克桑
几件事情... 雷诺回答......但也有多个错误:
few things ... Renaud answer ... but there are more errors:
// there is no such constructor ... Android looking for simple SampleContentProvider()
//public SampleContentProvider(Context context){
// mContext=context;
//}
@Override
public boolean onCreate() {
//so we move mContext initialization here
mContext = getContext();
dbHelper = new DatabaseHelper(mContext);
return true;
}
接下来的:
public static final class ContentProviderHelper {
private ContentProviderHelper() {}
//private static final String BASE_PATH = "yay"; we don't need it
public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY); //you dont need it + "/" + BASE_PATH);
public static final String CONTENT_ITEM_TYPE = ContentResolver.CURSOR_ITEM_BASE_TYPE +
"/vnd." + COMPANY_NAME + "." + TABLE_NAME;//yay it's stupid :P BASE_PATH;
public static final String CONTENT_TYPE = ContentResolver.CURSOR_DIR_BASE_TYPE +
"/vnd." + COMPANY_NAME + "." + TABLE_NAME;//yay it's stupid :P BASE_PATH;
public static final String ID = "_id";
public static final String TITLE = "title";
public static final String TEXT = "text";
}
下一个test.java:
next in test.java:
Uri uri = getContentResolver().insert(
// we should replace SampleContentProvider.ContentProviderHelper.CONTENT_URI with CONTENT_URI + TABLE_NAME
Uri.withAppendedPath(SampleContentProvider.ContentProviderHelper.CONTENT_URI, SampleContentProvider.TABLE_NAME), values);
这篇关于Android的内容提供商给未知的URL内容:// COM的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文