cocos默认/assets目录。。我希望能使用Environment.getExternalStorageDirectory()所输出的路径。本来在android 7.0之前这个路径/storage/emulated/0 可以使用的。使用android 7.0就不行了
在libcocos2dx gradle文件中增加依赖库,而不是在工程gradle文件增加依赖库
implementation ‘com.android.support:appcompat-v7:28.0.0’
implementation ‘com.android.support:support-v4:28.0.0’
然后在cocos2dxActivity.java中onCreate()调用verifyStoragePermissions(this)增加动态打开权限:
private static String[] PERMISSIONS_STORAGE = {
Manifest.permission.READ_EXTERNAL_STORAGE,
Manifest.permission.WRITE_EXTERNAL_STORAGE
};
public static void verifyStoragePermissions(Activity activity) {
// Check if we have write permission
int permission = ActivityCompat.checkSelfPermission(activity, Manifest.permission.WRITE_EXTERNAL_STORAGE);
if (permission != PackageManager.PERMISSION_GRANTED) {
// We don't have permission so prompt the user
ActivityCompat.requestPermissions(
activity,
PERMISSIONS_STORAGE,
REQUEST_EXTERNAL_STORAGE
);
}
}
然后就ok了
用activity.getExternalFilesDir(null)比较好,不需要额外授权,app卸载时这块的数据也会自动一同被删除。
但是我的数据是不能卸载或退出删除的,比如后台设置的一些参数,需要开机读取。所以我就没用这个activity.getExternalFilesDir,我用的是Environment.getExternalStorageDirectory(),获取外部存储
请教一下,cocos creator怎么获取外部存储