关闭

更改 android 文件存放目录 getWritablePath() 为 sdCard

4073人阅读 评论(0) 收藏 举报
分类:

放在 sd 卡中的好处:

1,卸载或更新包以后不需要重新下载扩展包资源

2,应用的空间是有限的,如果空间不够,可能导致下载失败,但如果扩展包资源放在 sd 卡上面,则没有大小限制


CCFileUtils::sharedFileUtils()->getWritablePath() 默认为 /data/data/projName/

cocos2dx/platform/android/jni/Java_org_cocos2dx_lib_Cocos2dxHelper.h

的 std::string getFileDirectoryJNI() 方法通过 jni 调用

cocos2dx/platform/android/java/src/org.cocos2dx.lib.Cocos2dxHelper.getCocos2dxWritablePath() 获取


具体"路径str" 在org.cocos2dx.lib.Cocos2dxHelper.init() 中

edit line:70 

Cocos2dxHelper.sFileDirectory = pContext.getFilesDir().getAbsolutePath();//设置

to

/* 方法用于获取SDCard的状态,如果手机装有SDCard,并且可以进行读写,那么方法返回的状态等于 Environment.MEDIA_MOUNTED */

if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {

    Cocos2dxHelper.sFileDirectory = Environment.getExternalStorageDirectory()+"/"+applicationInfo.packageName;

}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:2137676次
    • 积分:23098
    • 等级:
    • 排名:第303名
    • 原创:232篇
    • 转载:740篇
    • 译文:1篇
    • 评论:188条
    最新评论