Android应用打开外部文件
Posted changemsblog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android应用打开外部文件相关的知识,希望对你有一定的参考价值。
我们有时候遇到要打开一个文件,我们可以选择用其他应用打开,这时弹出来的应用列表,那么我们如何让自己开发的应用也能出现在里面呢?
第一步:设置启动Activity的intent-filter,给data 指定可以打开的mimeType.(注意允许文件操作的权限)
<activity
android:name=".StartActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<data android:mimeType="*/*"/>
</intent-filter>
</activity>
mimeType的值,我们可以根据需要设置对应的文件类型
文件类型 | mimeType |
application/pdf | |
.jpg | image/jpeg |
.txt | text/plain |
.apk | application/vnd.android.package-archive |
所有文件 | */* |
第二步:在我们设置接受的Activity 中获取文件的Uri
//StartActivity
Intent intent=getIntent(); if (intent!=null) { Uri uriFileShare = intent.getData(); if(uriFileShare!=null){ String filePath= uriFileShare.getPath(); } }
如此我们便能获取到打开文件的路径,接下来就能自己操作该文件了。
以上是关于Android应用打开外部文件的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向使用 DB Browser 查看并修改 SQLite 数据库 ( 从 Android 应用数据目录中拷贝数据库文件 | 使用 DB Browser 工具查看数据块文件 )(代码片段
Android 逆向使用 DB Browser 查看并修改 SQLite 数据库 ( 从 Android 应用数据目录中拷贝数据库文件 | 使用 DB Browser 工具查看数据块文件 )(代码片段
Android 在我的应用程序中打开 pdf 没有外部 API