私は第三者のアプリケーションを起動するためにpackagenamesを使用するアプリケーションを開発しています。私はいくつかの調査を行い、すべてのアプリをランチャーの意図から開始できることを発見しました。ボタンのクリックからこれを行う方法を知っている人はいますか?第三者のアプリケーションを開く
答えて
あなたは本当に 'アプリケーションを開始' することはできません。あなたがパッケージ名を知っていれば、サードパーティのアプリケーションから起動インテントを取得しようとすることができます:サードパーティのアプリがあなたのエミュレータにインストールされていない場合
Intent intent = getPackageManager().getLaunchIntentForPackage("com.thirdparty.package");
startActivity(intent);
すでに開いているアプリケーションを再オープンするには、フラグを "setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED)"に設定する必要があります。 – JacksOnF1re
だけView.OnClickListenerにそれを置く:
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = getPackageManager().getLaunchIntentForPackage(theOtherActivityPackage);
startActivity(intent);
}
});
上記受け入れ答えのために、あなたは優雅にも、それを処理する必要があります。これは重複ではありません
public void openThirdPartyApp() {
Intent intent = new Intent("com.thirdparty.package");
intent.setPackage("com.thirdparty.package");
try {
((Activity) context).startActivityForResult(intent, REQUEST_CODE);
} catch (ActivityNotFoundException e) {
downloadIt();
}
}
private void downloadIt() {
Uri uri = Uri.parse("market://search?q=pname:" + "com.thirdparty.package");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
try {
context.startActivity(intent);
} catch (ActivityNotFoundException e) {
//creates a small window to notify there is no app available
}
}
}
}
良い答えが、これは私がやっていることでは機能しません。私は、パッケージ名を取得して起動するpackagemanagerを使用しています。しかし、これは後のプロジェクトで有用かもしれません。答えてくれてありがとう! – Magakahn
これは機能しません...インテント初期化コードでは:Intent intent = new Intent( "com.thirdparty.package"); "android.intent.action.MAIN"のようなアクションが必要ですか? – syonip
@syonip、なぜあなたは "android.intent.action.MAIN"を使用しますか? – YuDroid
- 1. htmlの第三者Androidアプリを開く
- 2. インテントから第三者アプリを開く
- 3. 第三者のHTML5 .HTAアプリケーションですか?
- 4. 第三者から第三者にメールを送信する
- 5. OpenSceneGraph:第三者ビュー
- 6. Sharepointの第三者コンポーネント
- 7. 第三者コンポーネントへのinnerRef
- 8. アンドロイドの第三者アプリ
- 9. 第三者のソーシャルメディアAPI'S
- 10. 第三者CRMとのコンタクトフォーム
- 11. 第三者モジュールのオーバーライドメソッド
- 12. 第三者のライブラリメソッドにアクセス
- 13. JNLP Web Startアプリケーションで第三者ライセンスをロードするアプリケーション
- 14. Windowsアプリケーションの第三者アプリケーションに依存すること
- 15. 第三者FloatingActionButtonライブラリはCoordinatorLayout
- 16. NetBeans RCPアプリケーションで第三者のルックアンドフィールを使用する
- 17. 第三者アプリケーションのインストールディレクトリを決定する
- 18. ディスプレイシステムの着信音リスト第三者のアプリケーションでwp7の
- 19. 再定義属性は、Web開発者の第三版のエラー
- 20. Appceleratorハイパーループ - 第三者のスウィフトライブラリを使用
- 21. Nugetで第三者のライセンスを探す
- 22. 第三者のウェブサイトを埋め込む
- 23. 第三者のAndroidライブラリのフォーマット
- 24. 第三者のアプリレベルの仮入力
- 25. Resharperは第三者decompiled dllをデバッグ
- 26. TDDを使用した第三者コンポーネント
- 27. データベースデザインと第三者の統合
- 28. 第三者コンポーネントのCOM代理人
- 29. Googleアナリティクス - 第三者サイトのコンバージョントラッキング
- 30. どの層が第三者に
重複http://stackoverflow.com/questions/3422758/start-application-knowing-package-name – Calvin
: はここに同じのための完全なコードです。私はそれを始める方法を尋ね、その質問はパッケージ名を見つける方法です。私はすでにパッケージ名を見つける方法を知っています。 – Magakahn