首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >移动DocumentFile

移动DocumentFile
EN

Stack Overflow用户
提问于 2017-03-17 16:18:35
回答 1查看 1.6K关注 0票数 4

我正在尝试将所有文件从source移动到destination文件夹。

使用SAF获取用户挑选的destinate URI:

代码语言:javascript
复制
@Override
public void onActivityResult(int requestCode, int resultCode, Intent resultData) {
    if (requestCode == INTENT_CODE && resultCode == Activity.RESULT_OK) {
        if (resultData != null) {
            destinationUri = resultData.getData();
            destinationDocumentFile = DocumentFile.fromTreeUri(this, destinationUri);
            getContentResolver().takePersistableUriPermission(destinationUri,
                    Intent.FLAG_GRANT_READ_URI_PERMISSION | Intent.FLAG_GRANT_WRITE_URI_PERMISSION );

创建source DocumentFile实例(source文件夹放在内存,destination文件夹放在移动SD卡):

代码语言:javascript
复制
sourceFile =new File("sdcard/somewhere/music");
sourceDocumentFile =DocumentFile.fromFile(sourceFile);

以及将文件从source移动到destinate

代码语言:javascript
复制
DocumentFile documentFiles[]= sourceDocumentFile.listFiles();
    for (DocumentFile doc:documentFiles) {
        DocumentsContract.moveDocument(getContentResolver(),
                doc.getUri(),
                doc.getParentFile().getUri(),
                destinationUri);
    }

但我有个例外

代码语言:javascript
复制
java.lang.NullPointerException: Attempt to invoke virtual method 'android.os.Bundle android.content.ContentProviderClient.call(java.lang.String, java.lang.String, android.os.Bundle)' on a null object reference
                                                               at android.provider.DocumentsContract.moveDocument(DocumentsContract.java:1237)
                                                               at android.provider.DocumentsContract.moveDocument(DocumentsContract.java:1219)
                                                               at mo.drud.lmcc.MainActivity.move(MainActivity.java:96)

Android 7.1.1,如果重要的话

EN

回答 1

Stack Overflow用户

发布于 2019-05-20 17:01:53

请检查调试中的上下文。上下文可能为空!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42852427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档