10

私は今、これに何日も苦労しています。

特定のカスタム ファイル タイプを gmail で開くために、インテント フィルタを介してアクティビティを登録しようとしています。

問題は、私が何をしようとしても、ファイルを開くオプションが表示されないか、任意のファイル タイプ (私のファイルを含む) の添付ファイルにアプリケーションで開くオプションが表示されるかのいずれかです。

問題は、gmail が提供する URI にファイルの詳細が含まれていないことだと思います。

これと同じ質問をする人はたくさんいますが、それらすべてに対する解決策は、インテント フィルターをカスタム ファイル タイプだけに制限することはありません。

私の Android マニフェストの現在のインテント フィルターは次のとおりです...

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

繰り返しますが、このインテント フィルターは、アプリケーションで gmail からの添付ファイルを開くオプションを追加します。

どんな助けでも大歓迎です

4

1 に答える 1

6

content:// Uriファイルを指す値に必ずしもファイル拡張子があるとは限りません。私の知る限り、Gmailにはファイル拡張子が含まれていないため、pathPattern. また、名前空間hostのプレフィックスがありません。android:

メールがファイルの個別の MIME タイプで送信される場合は、それを使用しandroid:mimeTypeて残りの<data>属性を削除します。メールがファイルの個別の MIME タイプで送信されない場合、私の知る限り、あなたは運が悪いです。

于 2013-01-10T12:38:55.440 に答える