0

私の問題

拡張機能付きのカスタム zip ファイル.trapを自分宛にメールで送信し、Android フォンの Gmail アカウントで受信します。

私のアプリケーションがこのファイルを開き、それに応じて処理できると言うことができる必要があります。私はすべてを見てきましたが、そこには多くのバリエーションがありますが、どれも私のために働いていないようです. .zipまた、Android ではファイルを開くことができないことも確認しました。

Android マニフェストに追加するインテント フィルターを次に示します。

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

NB: MIME タイプについては、*/*機能しないものと/アプリの起動を停止するものも試しました。

私の質問

  1. Androidは電子メールからzipファイルを開くことができますか?
  2. アプリケーションがこのファイル タイプのオープンを処理できるように指定する方法。

前もって感謝します

4

3 に答える 3

1

Androidは電子メールからzipファイルを開くことができますか?

アプリの助けを借りてのみ。

アプリケーションがこのファイル タイプのオープンを処理できるように指定する方法。

これはうまくいくかもしれません:

    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="application/trap" />
    </intent-filter>

vnd.これは、このメッセージを送信する電子メール クライアントがカスタム MIME タイプを使用していることを前提としています (ところで、これはおそらく名前空間にあるはずです)。

既存のフィルターは、添付ファイルがファイルまたは HTTP 要求であると想定していますが、Gmail の添付ファイルは ContentProvider (content:// スキーム) を介して表示されます。

Web ブラウザ経由でファイルをダウンロードする予定がある場合は、 だけでなく、必要に応じてBROWSABLEそこに含めるDEFAULTこともできます。application/trap

于 2012-11-08T18:58:41.823 に答える
1

contentGMail はコンテンツ プロバイダーとして機能するため、次のようにスキームを追加する必要があります。

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="application/*" 
          host="*" 
          android:pathPattern=".*.trap" 
          android:scheme="content" />
</intent-filter>
于 2012-11-08T19:00:28.007 に答える