インテントで他のアプリと連携する
インテントとはAndroid OSでアプリ間やアプリとシステム間の橋渡しをする素晴らしい機能です。
自分のアプリでできないことは他の機能を持つアプリにしてもらえばいい
というエコな機能です。
そんなインテントで他のアプリと連携する方法をまとめておく。
・テキストを他のアプリに送るインテント
Intent intent = new Intent();
intent.setAction(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, "テキスト");
startActivity(intent);
・ブラウザを起動するインテント
Uri uri = Uri.parse("https://www.google.com");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
・画像を取得するインテント
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, 0);
・マーケット(現Playストア)を検索するインテント
Uri uri = Uri.parse("market://search?q=" + "検索キーワード");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
・YouTubeアプリで検索するインテント
Intent intent = new Intent(Intent.ACTION_SEARCH);
intent.setPackage("com.google.android.youtube");
intent.putExtra("query", "検索キーワード");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
・EverNoteアプリで検索するインテント
Intent intent = new Intent();
intent.setAction("com.evernote.action.SEARCH_NOTES");
intent.putExtra(SearchManager.QUERY, "検索キーワード");
startActivity(intent);
・明示的にアプリを呼び出すインテント
Intent intent = new Intent();
// パッケージ名とアクティビティ名を明示してインテントを呼び出す
intent.setClassName("パッケージ名", "アクティビティ名");
try{
startActivity(intent);
}catch (ActivityNotFoundException e){
// 明示的に指定したアプリが見つからない場合、Playストアへ直行する
Uri uri = Uri.parse("market://details?id=" + "パッケージ名");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
}
登録:
コメントの投稿
(
Atom
)
0 件のコメント :
コメントを投稿