总的来说此问题分为两个步骤:
初始化content provider。这一阶段主要是参照AndroidManifest.xml,初始化content provider。注意这里只有当包含content provider的进程运行的时候,才会对该进程内所有的content provider进行初始化。其它provider是按需初始化的(后续文章会介绍该问题)。
调用content provider,进行数据库操作。这个调用通常发生在用户定义的Activity子类的相关接口内。调用时,首先会获取对应的content provider对象(有可能是代理对象)。然后,再调用(直接调用或者通过IBinder接口)。
本文主要探讨第一个问题:初始化content provider。
应用进程的管理模型
Android框架内,应用程序Java代码的入口为ActivityThread.main。用来管理不同的应用的服务为ActivityManagerService。它的模型大致为:
网友评论 ()条 查看