为何android.jar中不包含NetworkSecurityTrustManager?(compileSdk为33)
为什么源码中存在
NetworkSecurityTrustManager但android.jar里没有? android.jar是编译用的Stub类库,非完整框架实现
Android SDK提供的android.jar并非包含全部Android框架类的完整包,它是一个仅用于应用编译阶段的stub文件——只保留了公开API的类结构(方法签名、字段定义),没有实际实现,同时会过滤掉系统内部专用的非公开类。该类属于框架内部实现类,未对外暴露
android.security.net.config.NetworkSecurityTrustManager是Android系统网络安全模块的内部逻辑类,仅用于系统自身的信任管理流程,不属于官方对外公开的SDK API范畴。为了防止开发者依赖这类未稳定的内部接口(这类接口可能在后续系统版本中无预警变更),Google不会将其纳入供第三方应用使用的android.jar中。源码目录包含完整系统代码,与android.jar定位不同
你访问的/AndroidSdk/sources/android-33是完整的Android系统源码镜像,包含了所有系统组件的实现代码(包括内部类),而platforms/android-33/android.jar是专门为应用编译优化的精简类库,二者的定位和内容范围本来就不一致。
内容的提问来源于stack exchange,提问作者Eugene Chumak
相关产品推荐
相关产品推荐

