Android:原始资源是否存储在本地文件系统上?
我正在分析 APK,并在应用程序的 /res/raw/ 目录中看到一组 .txt 资源。在模拟器上安装应用程序后,我希望在 /data/data/[app]/files 目录中看到这些相同的文件,但它们似乎不存在。原始资源存储在哪里?原始资源是在应用程序运行时在文件系统的其他地方生成的吗?或者当它们被访问时,是从本地 .apk 文件动态获取的吗?谢谢。
I am analyzing an APK, and see a set of .txt resources in the /res/raw/ directory of the application. After installing the application on an emulator, I would expect to see those same files in the /data/data/[app]/files directory, but they do not seem to exist. Where are the raw resources stored? Are raw resources generated at application runtime somewhere else on the filesystem? Or when they are accessed, is it dynamically from the local .apk file? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
原始资源(实际上是所有资源)都捆绑在 APK 文件中(这包括放置在
assets/
中的文件),这就是为什么您无法使用File
句柄。 APK 文件本身通常位于设备的system/app
目录中。您提到的内部存储位置(
/data/data/[app]/files
)是使用Context.openFileInput()
、Context.openFileOutput( )
或Context.getFilesDir()
被放置。华泰
Raw resources (and really, all resources) are bundled in the APK file (this includes files placed in
assets/
), which is why you cannot get to the usingFile
handles. The APK files themselves usually live in thesystem/app
directory of the device.The internal storage location you mentioned (
/data/data/[app]/files
) is where files created withContext.openFileInput()
,Context.openFileOutput()
, orContext.getFilesDir()
are placed.HTH