部分安卓手机打不开自定义文件扩展名

Nic*_*ick 4 android intentfilter email-attachments mime-types

我有一个应用程序,它通过电子邮件发送带有自定义文件扩展名的文件,这些文件本质上只是加密的 xml 文件。我的应用程序有一个意图过滤器来打开这些,它适用于我的特定手机(Samsung Galazy S Mesmerize),但是当我尝试在其他手机(Electrify、Thunderbolt 等)上打开带有自定义文件扩展名的附件时,它说没有任何东西可以打开那个文件。(顺便说一句,正在尝试的手机确实安装了我的应用程序)。

这是我的意图过滤器:

<intent-filter>
  <action android:name="android.intent.action.VIEW" />
  <category android:name="android.intent.category.DEFAULT" />
  <data android:scheme="file" />
  <data android:mimeType="*/*" />
  <data android:pathPattern=".*\\.tgtp" />   
  <data android:host="*" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)

我能做些什么来确保所有 android 手机在安装我的应用程序后都能够打开我的自定义文件扩展名?

谢谢

Muz*_*ant 5

我想这取决于文件在其他设备上的路径。我发现pathPattern意图过滤器中的属性对文件的完整路径非常敏感。

看一下类似问题的以下答案:https : //stackoverflow.com/a/7102838/624109

基本上,您需要有几个pathPattern最有可能捕获文件位置的属性。

还有一点是我觉得即使你使用本地文件,你仍然需要有这个port属性。

经过数小时的挖掘,这两个变化使它对我有用。