[英]Storage Access Framework - Saving Uri
我的应用程序需要以合适的形式存档文件夹Uri(来自Inten with ACTION_OPEN_DOCUMENT_TREE
并且其中的右侧标志已经从用户选择返回到应用程序),以便在下次运行应用程序或启动设备时使用它(takePersistableUriPermission用来)。
将Uri路径保存为字符串似乎是不够的,因为
Uri uri;
uri=Uri.parse(uriPath);
docUri= DocumentsContract.buildDocumentUriUsingTree(uri,
DocumentsContract.getTreeDocumentId(uri));
给出一个像无效的Uri一样的错误。
保存Uri id也没用。
我看到Uri里面有很多参数。 我检查了哪些参数在我的样本Uri中有值,有些是。
因此我知道如何保存Uri以便应用程序具有重新创建它的所有必要数据,而DocumentsContract
类(或类似的)可以查询其参数而不会抛出任何异常。
任何建议都是受欢迎的
归档Uri的正确方法是保存uri.toString()
值。
然后检索它: uri=Uri.parse(archivedUriString);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.