我正在查看PackageManager
类的源代码,它是抽象的以及所有方法。制造商是否应该为它编写真正的实现,或者我错过了什么?
答案 0 :(得分:9)
PackageManager的真正实现是位于frameworks / base / services / java / com / android / server /
的PackageManagerService您可以在GrepCode中找到源代码here。
答案 1 :(得分:7)
PackageManager
是抽象的,需要提供具体的实现来调用实例方法。可以将此类的实现作为ApplicationContext
的包私有静态类找到,它本身在ContextImpl
中可用。 (对于源代码see here)。请注意,PackageManager的此实现是最终的,因此无法覆盖。
还有一个MockPackageManager实现可能会让您感兴趣。
答案 2 :(得分:5)
答案 3 :(得分:0)
对于任何绊倒这个老问题的人,请转到源(android.googlesource.com
)https://android.googlesource.com/platform/frameworks/base/+/master/services/core/java/com/android/server/pm/PackageManagerService.java,grepcode已久。