Chinaunix首页 | 论坛 | 博客
  • 博客访问: 248091
  • 博文数量: 34
  • 博客积分: 938
  • 博客等级: 准尉
  • 技术积分: 440
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-18 12:07
文章分类

全部博文(34)

文章存档

2012年(28)

2011年(6)

分类: LINUX

2012-03-05 21:18:48

前提SD安装的应用是每装一个应用分一个区出来的。
在packagemanagerservice.java的
getDataPathForPackage中可以得到应用的data路径,即/data/data/app/,下面存有file,lib,cache,databaset等。
在getDataPathForPackage可以把除lib库以外的文件夹移到其它的地方。

OptInvocation.c生成执行时的dalvik-cache目录,即/data/dalvik-cache
dexOptGenerateCacheFileName
必须要改变SD卡的属性为777,如果不想改变,有如下方案,改变应用安装时分区的属主。但有如果问题:
InstallParams->HandlerParams -> handleReturnCode->processPendingInstall调用installPackageLI
scanPackageLI的pkg.applicationInfo.uid = pkgSetting.userId;
中才得到UID,installPackageLI的doRename(SD的情况mountSecureContainer)却是在scanPackageLI前执行的,似乎要改
/mnt/asec/下应用的属主是不可能的。而只能在doRename使用默认的Process.SYSTEM中的这个属主。
似乎要改变/mnt/asec/下应用的属主的计划要破产???只能打开SD卡的所有权限才能搞定吗???
再想想吧,应该还有其它的方法。

现在手机都有内置SD卡,听说framework有对其读写的权限,没有拿到手机,有手机再试吧。

改安装在SD卡应用存DATA分区/data/dalvik-cache
Commands.c的create_cache_path生成cache目录。
OptInvocation.c生成执行时的dalvik-cache目录,即/data/dalvik-cache,
改变dexOptGenerateCacheFileName,可以改/data/dalvik-cache,把它移出DATA分区。

把SD卡改成777的话,有很多问题会首先,在产品上似乎不可行。
实现成功,但没添加进行,就是会有其它的问题产生。
如果DATA分区足够大,没有必要这样做。
阅读(5327) | 评论(0) | 转发(0) |
0

上一篇:六个内核中的页框分配API

下一篇:近况

给主人留下些什么吧!~~