作成しているAndroidアプリのサポートと
プログラミングやいろんなガジェットについて
備忘録を残していくブログです

インテントで他のアプリと連携する

0 件のコメント
インテントとは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); 
    }

0 件のコメント :

コメントを投稿