资源池的构建依赖于 assets.ensureStringBlocks 方法。其中,tmStringBlocks 是一个 StringBlock 对象数组,用于描述当前已创建的所有资源池,并采用单例模式,避免重复创建。 tmakeStringBlocks 方法负责读取系统资源表项对应的资源池并将其加入 mStringBlocks 中,同时也会将当前 APK 资源表项对应的资源加入其中。至此,资源管理器的创建和初始化过程宣告完成。