2

詳細に関しては、私はまだこの「意図」のことを完全に把握していません。私がやりたいのは、特定の電子メールの添付ファイルが開かれたときにインテントを受け取ることです。添付ファイルは、実際にはアプリ固有の構造を持つ SQLite データベースであり、アプリ固有のファイル拡張子を持つファイルになります。

これを実験して気付いたのは、PC から (Thunderbird を使用して) 添付ファイルを送信すると、"application/octet-stream" の MIME タイプでコード化されていることです。これを Android フォンで (K-9 メールを使用して) 開こうとすると、「application/octet-stream」用のアプリがないと表示されます。

では、この特定のタイプの添付ファイルのサービス アプリとして認識されるようにするには、アプリで何をすればよいでしょうか。特に、この MIME タイプで何かを開こうとするのは得策ではないことが予想されるためです。

4

1 に答える 1

3

では、この特定のタイプの添付ファイルのサービス アプリとして認識されるようにするには、アプリで何をすればよいでしょうか。特に、この MIME タイプで何かを開こうとするのは得策ではないことが予想されるためです。

あなたはそうしない。

電子メールの添付ファイルとして新しいドキュメントを発明することは、ほとんどどこでもうまくいきません。この点では、Android は一段と劣っています。

ACTION_VIEW <intent-filter>MIME タイプが一般的すぎるため、現実的に MIME タイプごとに設定することはできません。ACTION_VIEW <intent-filter>AOSP 電子メール アプリや他の電子メール クライアントによって処理されるような電子メールの添付ファイルにはファイル拡張子がないため、ファイル拡張子ごとに設定することはできません。

ファイルの配信手段として電子メールの添付ファイルを使用することをやめ、MIME タイプをカスタマイズできる他のソリューションを見つけることをお勧めします (たとえば、ファイルへのリンクを含む電子メールを使用して、Web サーバーからファイルをダウンロードします)。次に、ACTION_VIEW <intent-filter>MIME タイプごとに問題なく動作します。

于 2011-02-22T17:10:08.413 に答える