1

拡張子が .abc のファイルがあり、個人アプリでこのファイルを読み込もうとしています。マニフェスト xml に次のインテント フィルターがあります。

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

このフィルタは、ファイル ブラウザ、サード パーティの電子メール クライアントなどから送信されたすべてのインテントをキャッチします。ただし、ネイティブの電子メール クライアントは除きます。ファイル ブラウザ アプリケーションとネイティブの電子メール クライアントの唯一の違いは、ファイル ブラウザのスキームが「ファイル」であり、ネイティブの電子メール クライアントのスキームが「コンテンツ」であることです。ネイティブの電子メール クライアントで添付ファイルの拡張子が .abc のファイルをクリックしても、ファイルがダウンロードされず、インテントが起動されません。問題がどこにある可能性があるかについて何か提案はありますか?

情報が不足している場合は、質問に追加させていただきます。

4

1 に答える 1

1

これは問題の解決策でした。カスタム拡張子を持つファイルの MIME タイプは application/. 以下のフィルターをマニフェスト ファイルに追加すると、問題が解決しました。

<intent-filter>
  <action android:name="android.intent.action.VIEW" />
  <category android:name="android.intent.category.DEFAULT" />        
  <data android:scheme="file" />
  <data android:mimeType="application/abc" />
  <data android:host="*" />
</intent-filter>
于 2013-01-21T13:55:19.513 に答える