第一个进程的MyContentProvider.Java public class MyContentProvider extends ContentProvider { public MyContentProvider() { } public static final int person_dir=0; public static final int person_item=1; public static final String AUTHORITY="com.app.provider"; private static UriMatcher uriMatcher; private MyDatabaseHelper dbHelper; static { uriMatcher=new UriMatcher(UriMatcher.NO_MATCH); // if resource is AUTHORITY/person,back person_dir, // if resource is AUTHORITY/person/#,back person_item, uriMatcher.addURI(AUTHORITY,"person",person_dir); uriMatcher.addURI(AUTHORITY,"person/#",person_item); } }剩下的就是一些方法,在该程序内成功使用ContentResolve调用person表。 第一个进程的AndroidManifest.xml文件
</provider>
<uses-permission android:name="com.example.test2"/>
第二个进程的MainActivity.java文件 Button btn_insert=findViewById(R.id.button_insert); btn_insert.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ContentValues values=new ContentValues(); values.put("_id","10"); values.put("name","new"); values.put("age","66"); Uri uri=Uri.parse("content://com.app.provider/person/"); ContentResolver resolver=getContentResolver(); int count=resolver.update(uri,values,"id=?",new String[]{}); } }); 第二个进程的Mainfest文件
运行显示E/ActivityThread: Failed to find provider info for com.app.provider