我正在开发一个在应用程序中导入文件的程序,在这种情况下我正在使用谷歌驱动器文件。
当用户选择文件startActivityForResult
时,会返回如下所示的网址:
content: //com.google.android.apps.docs.storage/document/acc%%3D1%%3Bdoc%%3D1214
我无法解析此网址以访问该文件的内容。有没有人有这方面的经验?
在谷歌上我找到了一些旧模块,但是,我认为不能解决我的问题。
谢谢。
答案 0 :(得分:0)
最后我找到了解决方案。 在尝试获取内容之前,您需要将文件复制到applicationDataDirectory。
复制文件将自动解析内容uri。
var intent = Ti.Android.createIntent({
action: Ti.Android.ACTION_GET_CONTENT,
type: '*/*'
});
$.win.activity.startActivityForResult(intent, function(e) {
if (e.intent) {
var filePath = e.intent.data;
var file = Ti.Filesystem.getFile(filePath);
var copiedFile = Ti.Filesystem.getFile(Ti.Filesystem.applicationDataDirectory, file.name);
file.copy(copiedFile.nativePath);
if (!copiedFile.exists()) {
// show your error message
return;
}
// file content
console.log(copiedFile.read().text);
}
});