【Androidアプリ開発】アプリからLINEやFacebookに投稿する

自分のアプリの内部だけに留まらず、
LINEやFacebookなど、外部のアプリに何かを送信したい!
と思う場合があるはず。

そんなとき、Androidでは、
LINEやFacebookを立ち上げて、投稿することができます。

使い方の例としては、
自分のアプリ内の記事などのコンテンツを、
「LINEで教える!」みたいなボタンを設置する、とかでしょうか?
WebサイトのSNSで広める、みたいな効果を期待できるかもしれないですね。

黙示的 Intent

Activityから、アプリ内の別のActivityを呼び出す、
つまり新しいActivityを始める方法はご紹介しました。

なにそれ?って人は以下のページを参照。
https://calculus-app.com/blog/develop_android/android_basic/233

実はこれ、現在のActivityから、飛び先の新しいActivityを明確に指定しているので、
「 明示的Intent 」と呼ばれます。

これに対して、飛び先の新しいActivityを明確に指定せず、
「こんな感じ(種類)のアプリを呼び出してくださ~い」とIntent することを、
「 黙示的Intent 」と呼びます。

LINEやFacebookへの投稿は、
自分のアプリから、この「 黙示的Intent 」を利用して、
「投稿にふさわしいアプリを立ち上げてくださ~い」
とやるわけです。

 

やり方

Intent intent = new Intent(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_TEXT, "String"); // 送信する文字列をputExtraする
intent.setType("text/plain");
startActivity(intent); // 文字列情報を送るのに適したアプリを選択して起動させる

① Intentのインスタンスを作成するときに、引数に Intent.ACTION_SENDを指定します。
② IntentにputExtraで情報を付与します。Stringの場合は、第1引数に Intent.EXTRA_TEXT
③情報のタイプを設定。
④後は通常通り、 startActivityします。

これで、アプリから情報を送る、
上記のコードの場合は文字列を投稿するアプリを選択する画面になります。

選択画面でユーザーがLINEやFacebookを選択すると、
投稿できる、というわけです。

ただし、情報を他のアプリに渡した後、その情報をどう処理するかは、
情報を渡された方のアプリに任せられていますので、ご注意を。

コメントを残す

メールアドレスが公開されることはありません。