一、权限的管理基础知识
1.系统的权限机制分为:权限解析、权限分配、鉴权、动态添加权限
2.PermissionInfo : PackageParser.Permission中包含一个对应的PermissionInfo,权限信息的表示,其中包含权限等级的定义(NORMAL, DANGER, SIGNERATURE),另外实现了序列化,用户于进程间通信
3. BasePermission : 系统权限的基本表示单元是BasePermission,Settings中维护了一个总的权限映射表mPermissions,所有的权限都会添加到mPermissions列表中,其中key是权限的名字,value是具体的BasePermission实例
4. PackageParser.Permission : PackageParser.Permission在上面分析PackageParser解析apk过程中有提及过,解析apk的AndroidManifest.xml文件中的<permission>标签后得到的权限表示
5. GrantedPermissions : 类里面定义了一个字符串列表grantedPermissions保存pkg已经被赋予的所有权限
6. PackageSettingBase : 保存为了如pkg的codePath, resourcePath, signature等信息,同时PackageSettingBase是GrantedPermissions的子类,因为也包含了pkg被赋予的权限列表
7. PackageSetting : PackageSetting继承了PackageSettingBase类,并新增如PackageParser.Package和SharedUserSetting
8. SharedUserSetting :