-
-
[原创]android设备下的几个目录说明
-
发表于:
2015-4-2 18:07
10067
-
1、data/dalvik-cache : 存放已经安装的APK对应的odex文件,这类odex文件仍然以dex作为后缀,保存形式如下:apk路径@apk名@classes.dex。该目录下的odex如果直接替换APK中的classes.dex,重打包后APK是不能正常运行的。
2、system/framework: APK成功安装后,依赖的Jar包会复制到该目录下。
3、etc/permissions: 存放xml格式文件。这些xml文件是APK依赖的JAR包的映射路径,例如:APK中依赖了一个jar包名为com.test.jar,则在该目录下回生成com.test.xml,里面的路径映射描述如下:
<?xml version="1.0" encoding="utf-8"?>
<permissions>
<library name="com.test"
file="/system/framework/com.test.jar"/>
</permissions>
反编译该APK,可以查看AndroidManifest.xml里面有如下描述:
<uses-library android:name="com.test.jar"/>
4、/data/app: 存放用户安装的APK,文件名格式如:com.test.testdemo-1.apk,或者com.test.testdemo-2.apk,其中的“-1”、“-2”表示:当该APK第一次被安装为“-1”,重复安装后变成“-2”,如果再次安装又从“-1”开始标记,如此反复循环。
5、/system/app:存放系统APK(设备自带的APK安装包),该目录下有些APK是有两部分组成的,如test.apk 和 test.odex,如果只拷贝test.apk到其他设备安装是不能成功的,要先把test.odex转换成test.dex格式(odex2dex工具下载地址:b0aK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3y4G2k6r3g2Q4x3X3g2Y4L8$3!0Y4L8r3g2Q4x3X3g2U0L8$3#2Q4x3V1k6H3i4K6u0r3j5h3&6V1M7X3!0A6k6q4)9J5k6r3q4H3K9%4c8G2L8$3I4Q4x3V1k6V1L8%4N6F1L8r3!0S2k6s2y4Q4x3V1k6D9K9i4y4@1i4@1g2r3i4@1u0o6i4K6R3&6i4@1g2r3i4@1u0o6i4K6S2o6i4@1f1%4i4K6R3@1i4@1t1$3i4@1f1#2i4K6V1H3i4K6S2q4i4@1f1&6i4K6R3%4i4K6S2p5i4@1f1$3i4K6R3&6i4K6V1K6i4@1f1#2i4K6S2o6i4K6R3#2i4@1f1#2i4K6R3^5i4@1t1H3N6r3g2K6N6q4)9J5k6h3q4H3K9#2!0q4z5g2)9^5y4#2)9^5b7#2!0q4z5g2)9&6c8q4!0m8x3W2!0q4c8W2!0n7b7#2)9^5b7#2!0q4y4W2)9^5z5g2)9^5c8q4!0q4z5q4)9^5x3#2!0n7c8q4!0q4y4W2!0m8c8q4!0m8x3#2!0q4y4g2!0n7z5q4!0n7z5q4!0q4y4g2!0m8c8g2)9^5z5g2!0q4z5q4!0m8x3#2)9^5y4b7`.`.
6、、data/data :用户成功安装APK后,会生成相应的文件夹目录,如安装了包名为com.test.testdemo的test.apk,就会生成文件夹com.test.testdemo,进入这个目录,通常有如下一些子目录:
1):databases: 存放APK中使用的的数据库 ;
2):lib :存放so包;
3)shared_prefs: 用SharedPreferences存储数据的xml格式文件;
7、data/system: 该目录下的packages.xml文件主要记录了,当前设备已经安装的APK所对应的配置信息,如果发现一个APK提示安装失败,可以试着删除该文件里记录当前APK的package信息,然后重新安装
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课