您的位置:首页 > 移动开发 > Android开发

android 关联自定义文件,文件管理器中打开自定文件类型

2016-11-14 11:51 281 查看
1:这个问题在百度一搜都是如下面的解决方案

<!--<data android:scheme="file"/>-->
<!--<data android:host="*" />-->
<!--<data android:pathPattern=".*\\.stl" />-->


刚开始发现没问题确实能打开/storage/路径下的stl文件,然而在往深一层的文件点的时候,app就没办法识别自定义的文件类型了

2:解决方法

1: 多写几个data  ,pathPattern 中的意思你的路径样式,如第一个是在/storage/sdcard/emulated/0/下的文件能支持stl格式文件,第二个比第一个多了"/.*" 所以可以打开下一层的自定义文件

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<!--<data android:scheme="file"/>--> <!--<data android:host="*" />--> <!--<data android:pathPattern=".*\\.stl" />-->
<data android:scheme="file" android:host="*" android:mimeType="*/*"
android:pathPattern=".*\\.stl"/>
<data android:scheme="file" android:host="*" android:mimeType="*/*"
android:pathPattern="/.*/.*\\.stl"/>
<data android:scheme="file" android:host="*" android:mimeType="*/*"
android:pathPattern="/.*/.*/.*\\.stl"/>
<data android:scheme="file" android:host="*" android:mimeType="*/*"
android:pathPattern="/.*/.*/.*/.*\\.stl"/>
<data android:scheme="
4000
file" android:host="*" android:mimeType="*/*"
android:pathPattern="/.*/.*/.*/.*/.*\\.stl"/>
<data android:scheme="file" android:host="*" android:mimeType="*/*"
android:pathPattern="/.*/.*/.*/.*/.*/.*\\.stl"/>
<data android:scheme="file" android:host="*" android:mimeType="*/*"
android:pathPattern="/.*/.*/.*/.*/.*/.*/.*\\.stl"/>
<data android:scheme="file" android:host="*" android:mimeType="*/*"
android:pathPattern="/.*/.*/.*/.*/.*/.*/.*/.*\\.stl"/>
</intent-filter>


2:只需要就可一打开所有文件了

<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="*/*"/>
</intent-filter>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: