我有从Google云端硬盘下载的文件列表。这些文件具有不同的mimeType,如
"application/vnd.google-apps.folder"
"application/vnd.google-apps.file"
"application/pdf"
"video/mpeg"
"application/vnd.ms-powerpoint.presentation.macroEnabled.12"
如何以新意图打开这些文件?
也打开文件我应该使用id(0B_uvNTGVtbi****zOS1WY78yVlU
)或title(RJ_****_462324_20417.pdf
)
现在我正在使用,但“系统Android已停止”:)
Intent myIntent = new Intent(Intent.ACTION_VIEW);
myIntent.setData(Uri.parse(localFile.getTitle()));
myIntent.setType("*/*");
Intent intent = Intent.createChooser(myIntent, "Choose an application to open with:");
context.startActivity(intent);
答案 0 :(得分:0)
如果通过"打开"您想要允许用户选择应该打开的应用程序的文件,您需要使用驱动器文件的URL并使用此URL发送ACTION_VIEW意图(有关详细信息,请参阅here)。如果用户没有安装Drive App,则会在浏览器中打开该URL,否则用户将获得在DriveApp或浏览器中打开它的选项。
答案 1 :(得分:0)
您正在使用文件名作为URI,但它不是有效的URI:
myIntent.setData(Uri.parse(localFile.getTitle()))//this is wrong
您需要致电:
myIntent.setData(Uri.fromFile(localFile))// use this instead