現在、私は彼らと、デフォルトのアプリを置き換えるために、単純なAndroidアプリの束を作成しようとしています。
私はすでにで見たこの記事のデフォルトとしてSMSアプリを設定する方法:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="vnd.android-dir/mms-sms" />
</intent-filter>
しかし、私は、これらのアプリケーションのために同じことを達成するためにどのように思っていました。
- (写真を撮るために)カメラアプリケーション
- ギャラリー/写真アプリケーション(選択して、表示画像に)
- (表示、編集、削除、および呼び出しの連絡先に)連絡先アプリケーション
- 電話アプリケーション(連絡先/電話番号を呼び出し、着信コールを受信するには)
- インターネット・ブラウザ・アプリケーション(インターネットを閲覧するには)
- キーボード・アプリケーション(デフォルトのキーボードのように書き込みテキスト)
- ランチャーアプリケーション(ホーム画面にインストールされているすべてのアプリを表示するには)
私はすでにそれがユーザーの操作なしで、プログラムのデフォルトアプリとしてアプリを設定することはほぼ不可能だということに気づきました。これは、主な目標になりますが、ユーザが、彼らは、デフォルトのアプリケーションとして使用したいアプリケーションを選択することができた場合、それはまた、大丈夫だろう。しかし、私は上記のアプリが選択可能であることを確認したいです。私の質問があるので、何たMIMEタイプは、私は、Androidマニフェストファイルにインテントフィルタに追加する必要がありますか?
だから私の質問は、私はAndroidのマニフェストファイルにインテントフィルタに追加する必要があります種類を何たMIMEていますか?
mimetype
それは、コンテンツを記述するだけで、標準的だし、それは次の処理です。これは、Androidの新しいものではありません、あなたはメディアタイプの詳細について確認することができWikiページを。この情報mimetype
内の属性のAndroidのドキュメント:
アンドロイド:MIMEタイプ - 、画像/ JPEGやオーディオ/ MPEG4-ジェネリックとしてA MIMEメディアタイプ、。サブタイプは、その任意のサブタイプの一致を示すために、アスタリスクのワイルドカードすることができ
しかし、あなたが見ることができるようにvnd
MIMEタイプに接頭辞を、それはつまり、「ベンダー接頭辞」ではない公式のIETF MIMEタイプ。だから、それぞれのアプリケーションのために、このタイプをチェックする必要があります。ただ、いくつかの例では、我々は以下のものを持っています。
注意!セットのデフォルトのアプリケーションにするために、次のように指定する必要がありますandroid.intent.action
最初。それは、プロセスの相互作用との間の主なフラグなので、(例のため。)ランチャーそれほど持っていないmimetype
、とだけ意図アクション android.intent.action.MAIN
、android.intent.action.SET_WALLPAPER
。
カメラ:
<data android:mimeType="vnd.android.cursor.dir/image" />
<data android:mimeType="vnd.android.cursor.dir/video" />
画像/ビデオ/オーディオ:
<data android:mimeType="video/*" />
<data android:mimeType="video/mpeg4" />
<data android:mimeType="video/mp4" />
<data android:mimeType="video/3gp" />
......
<data android:mimeType="image/*" />
<data android:mimeType="application/sdp" />
......
<data android:mimeType="audio/x-mpegurl" />
<data android:mimeType="audio/mpegurl" />
<data android:mimeType="application/vnd.apple.mpegurl" />
<data android:mimeType="application/x-mpegurl" />
....
連絡先:
<data android:mimeType="vnd.android.cursor.item/phone" />
<data android:mimeType="vnd.android.cursor.item/person" />
<data android:mimeType="vnd.android.cursor.dir/calls" />
ブラウザ:
<data android:mimeType="application/xhtml+xml"/>
<data android:mimeType="application/vnd.wap.xhtml+xml"/>
<data android:mimeType="vnd.android.cursor.item/postal-address" />
<data android:mimeType="vnd.android.cursor.dir/bookmark"/>
<data android:mimeType="vnd.android.cursor.item/download"/>