-1

我想将 sd 卡上的 torrent 文件添加到已安装的 torrent 应用程序(uTorrent、BitTorrent)。我做了我自己的文件选择器活动,我在其中显示文件。当用户单击任何文件时,如果安装了超过 1 个 torrent 应用程序,则显示建议,否则添加可用的 torrent 应用程序。

一切正常。它在安装超过 1 个应用程序时显示建议,并在仅安装 1 个支持 torrent 的应用程序时启动可用应用程序。但问题是当应用程序启动时它显示“无法添加”文件路径“”。

下面是我的代码。

Intent i = new Intent(Intent.ACTION_VIEW);
i.addCategory(Intent.CATEGORY_DEFAULT);
File file123 = new File(seleFile.getAbsolutePath());
MimeTypeMap map = MimeTypeMap.getSingleton();
String ext = MimeTypeMap.getFileExtensionFromUrl(file123.getName());
String type = map.getMimeTypeFromExtension(ext);
Uri data = Uri.fromFile(file123);
i.setDataAndType(data, type);
startActivity(Intent.createChooser(i, "Select Application"));
4

1 回答 1

0

检查所选文件路径中的“/”。它一定是正确的,因为有时我们会在文件名中添加它(根路径 + 文件名)。最后一个“/”在根路径中。有时会变成下面这样。

File seleFile = new File(curPath + seleFileName); 

它会变成 /mnt/sdcard/FolderFilename 这是错误的。用这个:

File seleFile = new File(curPath + "/" +seleFileName); 

所以它会变成 /mnt/sdcard/Folder/Filename 这是正确的。

于 2013-10-25T07:07:35.250 回答