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

来源:互联网 发布:revit是什么软件 编辑:程序博客网 时间:2024/05/16 14:10

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="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>

0 0
原创粉丝点击