我想为Android开发一个文件夹浏览器.. 一个文件夹可以有任何类型的文件,即doc文件,txt文件,mp3,avi,apk文件等。 我如何推出基于用户点击了文件... 我的意思是我如何构造一个文件型的意图...... 感谢 普拉香特基于文件类型的Android意图
1
A
回答
0
特定的应用程序创建一个活动。在哪里你可以找到文件的扩展名,无论是mp3还是dic等等。根据扩展名从这个活动中调用另一个活动。
感谢 迪帕克
2
刚刚成立的意图的类型,例如:intent.setType("video/mpeg");
。
编辑:使用MimeTypeMap动态获取文件的MIME类型。
0
可能是这样的......因为我想在我的代码...
//differentiate file type
String filename = o.getName();
String filenameArray[] = filename.split("\\.");
String extension = filenameArray[filenameArray.length-1];
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
if (extension.contains("png") || extension.contains("gif") || extension.contains("jpg")
|| extension.contains("jpeg") || extension.contains("bmp"))
{
intent.setDataAndType(Uri.parse("file://" + o.getPath()), "image/*");
}
if (extension.contains("txt") || extension.contains("csv") || extension.contains("xml"))
{
intent.setDataAndType(Uri.parse("file://" + o.getPath()), "text/*");
}
if (extension.contains("pdf"))
{
intent.setDataAndType(Uri.parse("file://" + o.getPath()), "application/pdf");
}
if (extension.contains("doc") || extension.contains("docx"))
{
intent.setDataAndType(Uri.parse("file://" + o.getPath()), "application/msword");
}
if (extension.contains("mp3") || extension.contains("wav") || extension.contains("oog")
|| extension.contains("mid") || extension.contains("amr") || extension.contains("midi"))
{
intent.setDataAndType(Uri.parse("file://" + o.getPath()), "audio/*");
}
if (extension.contains("mpeg") || extension.contains("3gp"))
{
intent.setDataAndType(Uri.parse("file://" + o.getPath()), "video/*");
}
我还在寻找短代码,但我希望这个代码可以帮助你..
0
我找到了。也许这可以帮助你:
Intent intent= new Intent();
intent.setAction(Intent.ACTION_VIEW);
File file = new File(filePath);
MimeTypeMap mime = MimeTypeMap.getSingleton();
String ext = file.getName().substring(file.getName().indexOf(".")+1);
String type = mime.getMimeTypeFromExtension(ext);
intent.setDataAndType(Uri.fromFile(file), type);
相关问题
- 1. Android的意图文件类型失败
- 2. 基于类型
- 3. 用于多种NFC类型的Android意图过滤器
- 4. 如何实现基于文件类型的文件系统?
- 5. 如何将图像意图转换为android中的文件类型
- 6. 基于文件名而不是数据类型读取文件
- 7. Pyspark:基于类型
- 8. 基于类的基于Django的视图
- 9. 基于文件类型上传的条件提醒
- 10. 通用类:基于类型
- 11. Android意图子类
- 12. 基于泛型的类
- 13. Django的 - 基于类型
- 14. 基于其他成员类型的条件成员类型
- 15. 基于文件类型的自动硬与软标签缩进?
- 16. 基于用户类型的角度4动态头文件
- 17. 基于文件类型的应用程序选择对话框
- 18. 如何基于模型的“类型”显示正确的视图?
- 19. 注册意图过滤器接受任何类型的文件?
- 20. Android - 基于日期的Widget意图不会改变
- 21. Android的意图过滤基于SDK版本
- 22. C#动态基于类的类型生成视图,视图模型
- 23. 删除基于js和类的设备类型的图像
- 24. 基于pref的加载意图
- 25. 基于图像的Facebook民意调查
- 26. 泛型:基于通用类
- 27. SUM基于不同类型
- 28. 与包括基于类型
- 29. 返回基于类型
- 30. Django基于类的视图 - 任意日期范围?
我不想硬编码在我app..cant扩展基于活动推出它由系统来完成itself..i要使用通用的一个,所以在某些时候在未来,如果用户为某些“.abc”扩展程序安装应用程序,那么使用我的应用程序并单击“.abc”文件必须启动该应用程序。 – prash 2011-05-26 06:09:45