我通过图书馆项目在项目之间共享资源。这是结构:
MyLibProject
`-- res
`-- raw
`-- my_shared_res
`-- AndroidManifest.xml
`-- Shared user id -> my.shared.user.id
`-- Package -> some.package
MyProject
`-- AndroidManifest.xml
`-- Shared user id -> my.shared.user.id
`-- Package -> some.other.package
在我想访问Activity
的内部,但后来我注意到以下内容:MyProject
R.raw.My_shared_res
getResources().openRawResource(R.raw.my_shared_res)
-> 返回文件的正确内容,同时Context c = createPackageContext("some.package", Context.CONTEXT_INCLUDE_CODE & Context.CONTEXT_IGNORE_SECURITY); c.getResources().openRawResource(R.raw.my_shared_res);
-> 返回不同的内容,我推测是加密的。
有人可以解释为什么会这样吗?
编辑:我已经在 Android Developers google group 上发布了这个问题。您也可以通过点击此链接查看回复