前言
Content Provider做为四大组件之一,通常情况下并没有其他的组件使用频繁,但这不能作为我们不去深入学习它的理由。关于Content Provider一篇文章是写不完的,这一篇文章先来介绍它的启动过程。
1.query方法到AMS的调用过程
在Android IPC机制(四)用ContentProvider进行进程间通信这篇文章我举了一个Content Provider使用的例子,在Activity中我是使用如下代码调用Content Provider的:
public class ContentProviderActivity extends AppCompatActivity { private final static String TAG = "ContentProviderActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_content_provider); Uri uri = Uri.parse("content://com.example.liuwangshu.mooncontentprovide.GameProvider"); ContentValues mContentValues = new ContentValues(); mContentValues.put("_id", 2); mContentValues.put("name", "大航海时代ol"); mContentValues.put("describe", "最好玩的航海网游"); getContentResolver().insert(uri, mContentValues);//1 Cursor gameCursor = getContentResolver().query(uri, new String[]{"name", "describe"}, null, null, null); ... } }