Android资源对象mResource的生成及调用总结
在Android中,资源对象的生成涉及多个步骤和组件。首先,通过ActivityThread的主线程获取当前应用的顶级资源信息,如果已经存在则直接返回该实例;否则使用getTopLevelResources方法初始化并创建mResources单例对象。接着,检查resDir对应的资源是否已经在mActivityResources(一个以ResourcesKey为索引的哈希表)中存在,若存在且是最新的,则获取并返回AssetManager对象及添加Asset路径;如果不存在或不是最新的,则创建一个新的AssetManager对象并将resDir的资产路径加入其中。最后,根据设备配置信息创建新的Resources对象,并将其添加到mActiveResources哈希表中后返回该实例。
下载地址
用户评论