android - 如何在 Android 的应用程序中显示文件预览和打开文件?

标签 android android-intent android-file

我可以选择在应用程序中附加文件。我需要向用户显示特定项目类型的预览或图标。扩展名为 .txt、.doc、.pdf、.jpeg、.mp4 的图标需要有自己的特定图标,或者如果可能的话,一个好的预览缩略图图标。当用户想要查看它时,他会单击图标或预览。我需要启动一个 Intent 来查看文件。

我的意思是 pdf 应该在 pdf 阅读器中打开,或者 txt 或 doc 应该在文本阅读器中打开,mp3 或 mp4 应该在音频或视频播放器中打开。当他们退出 View 应用程序时返回到我的应用程序。

我唯一的想法是搜索文件名并手动拆分扩展名并进行字符串比较以将其与常量字符串值(如“.mp3”或“.mp4”等)进行比较。这不是一个好主意,因为有很多图像、音频和视频类型的扩展。如果有任何直接的方法可以做到这一点,请告诉我。感谢您的帮助。

最佳答案

您还可以读取文件的 MIME 类型并按此方式进行。可能比只阅读扩展名更准确,尽管两者都可能有效。

http://developer.android.com/reference/android/webkit/MimeTypeMap.html

guessContentTypeFromStream(InputStream)

然后您可以获得一个引用每个图标的可绘制对象数组列表。

关于android - 如何在 Android 的应用程序中显示文件预览和打开文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6447848/

相关文章:

java - 在上传多个 apk 的情况下从 Google PlayStore 获取最新的应用程序版本

android - 如何使用默认的 android 共享( Intent )将文本共享到 facebook?

android - 从 Intent 中获取所选文件的文件扩展名

java - Android 中缓存目录名称的问题

Android - 如何从文档中获取选定的文件名

android - 如何通过estimote android sdk更改estimote beacon的UUID?

java - 设置音源时MediaRecorder抛出异常(android开发)

android - 在 android 中获取保存的光标位置 2/2 超出范围(恢复)文本错误?

android - 没有收到 MEDIA_BUTTON 回调

android - 无法让广播接收器处理具有多个操作的 Intent