在 Android R+ 中通过 SAF 访问 Android/data
在 Android R+ 中通过 SAF 访问 Android/data

在 Android R+ 中通过 SAF 访问 Android/data

阅读时长 ≈38 秒

Loading

通过手动拼接 SAF 的 URI,再传给 OPEN_DOCUMENT_TREE intent,达到选中内置存储中无法授权的 Android/data 效果

话不多说,直接上代码

Intent intent = new Intent("android.intent.action.OPEN_DOCUMENT_TREE");
intent.putExtra("android.provider.extra.INITIAL_URI", Uri.parse("content://com.android.externalstorage.documents/tree/primary%3AAndroid%2Fdata/document/primary%3AAndroid%2Fdata"));
startActivityForResult(intent, SOME_RESULT_CODE);

访问 obb 同理

Intent intent = new Intent("android.intent.action.OPEN_DOCUMENT_TREE");
intent.putExtra("android.provider.extra.INITIAL_URI", Uri.parse("content://com.android.externalstorage.documents/tree/primary%3AAndroid%2Fobb/document/primary%3AAndroid%2Fobb"));
startActivityForResult(intent, SOME_RESULT_CODE);

完整代码:GitHub@SAFTest

发表回复