Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AMS中缓存mProviderMap即使缓存了目标ContentProvider,还是需要判断ContentProvider是否与客户端运行中同一进程 #25

Open
rigortek opened this issue Dec 15, 2020 · 0 comments

Comments

@rigortek
Copy link

分析得很好,只是有个地方似乎不太对,可以讨论:

ActivityManagerService对于ContentProvider启动请求的处理.png 时序中:

AMS中缓存变量mProviderMap即使缓存了目标ContentProvider,还是需要判断ContentProvider是否与客户端运行中同一进程
中,如果ContentProvider与客户端进程可以运行中同一进程,即android:multiprocess为true,客户端进程还是需要实例化自己的ContentProvider。

场景是:ContentProvider所在APK进程CRUD调用,肯定会启动ContentProvider,它将会被缓存到AMS的mProviderMap,
此时另一个APK进程启动,判断android:multiprocess为true,即ContentProvider与客户端运行中同一进程中,此时该APK所在应用需要实例化一份自己的ContentProvider

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant