0

私のアプリは、タイプ「text/plain」のインテント ACTION_VIEW を処理するので、.txt ファイルを開くことができます。どのプログラムからでもこれらのファイルを開くのに問題はありません。また、電子メールから添付ファイルを「開く」場合は Gmail から問題なく開くことができます。添付ファイルを「プレビュー」したいときに問題が発生します-gmailは私に異なる意図を与えます。対処方法は?OPEN と PREVIEW のインテントを比較しました。

OPEN:
START OF INTENT!
action = android.intent.action.VIEW
getDataString = file:///mnt/sdcard/download/anime_rozne-1.txt
getData = file:///mnt/sdcard/download/anime_rozne-1.txt
getCategories = null
getComponent = {pl.my.package.deszyfrator/pl.my.package.deszyfrator.MainActivity}
getExtras = null
getPackage = null
getScheme = file
getType = text/plain
END OF INTENT!


PREVIEW:
START OF INTENT!
action = android.intent.action.VIEW
getDataString = content://gmail-ls/messages/my.email@0gmail.com/129/attachments/0.1/BEST/false
getData = content://gmail-ls/messages/my.email@gmail.com/129/attachments/0.1/BEST/false
getCategories = null
getComponent = {pl.my.package.deszyfrator/pl.my.package.deszyfrator.MainActivity}
getExtras = null
getPackage = null
getScheme = content
getType = text/plain
END OF INTENT!

これをどうすればいいですか? content://gmail-ls/messages/my.email@gmail.com/129/attachments/0.1/BEST/false

4

1 に答える 1

0

これは、Gmail の特定のインテントのように見えます。ユーザーの Gmail アカウントにアクセスできる場合は、それを試して処理できます。ただし、特定の種類のコンテンツのみを処理するように、Dataタグを追加することをお勧めします。Intent Filter

詳細については、こちらをご覧ください

基本的に、コードは次のようになります。

<intent-filter>
    <data android:mimeType="text/plain" android:scheme="file" /> 
</intent-filter>

の有効なフィールドはすべてドキュメントIntent Filterに記載されています。

于 2013-10-17T14:01:40.677 に答える