Android開発記録雑記 -15ページ目

Android開発記録雑記

パソコン中級者ぐらいの私が
スマホアプリの開発をしてみようと思い立ち
Androidで動くアプリ開発過程をこれから書き記していきます。

ちょっと長い間空いてしまいましたが、すいません。

いやーまいった
ノロにかかっちゃいまして
1週間ほど死んでました・・・


それは置いといてさっそく続きを
本日は、 Receiving Content from Other Apps です。

今度は受け取る場合の処理ですが
やっぱり前にやった Interacting with Other Apps part3
と内容とかぶります。

まず、マニフェストファイルに <intent-filter> を追加
<activity android:name=".ui.MyActivity" >
    <intent-filter>
        <action android:name="android.intent.action.SEND" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="image/*" />
    </intent-filter>
    <intent-filter>

        <action android:name="android.intent.action.SEND" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="text/plain" />
    </intent-filter>
    <intent-filter>

        <action android:name="android.intent.action.SEND_MULTIPLE" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="image/*" />
    </intent-filter>
</activity>

用件の数だけ用意するってことも前回やりました。


そして受け取るときの処理
void onCreate (Bundle savedInstanceState) {
    ...
    Intent intent = getIntent();
    String action = intent.getAction();
    String type = intent.getType();

    if (Intent.ACTION_SEND.equals(action) && type != null) {
        if ("text/plain".equals(type)) {
            handleSendText(intent);
        } else if (type.startsWith("image/")) {
            handleSendImage(intent);
        }
    } else if (Intent.ACTION_SEND_MULTIPLE.equals(action) && type != null) {
        if (type.startsWith("image/")) {
            handleSendMultipleImages(intent);
        }
    } else {
    }
    ...
}

受信するデータに合わせた処理に分けているだけです。

本日は以上ー。
うーんお腹がまだ悪い・・・