2012-02-09 20 views
2

私はプログラムでapkをインストールする必要があります。 install/uninstall APKs programmatically (PackageManager vs Intents)Androidインストールapk with Intent

Intent intent = new Intent(Intent.ACTION_VIEW); 
Uri apkUri = Uri.fromFile(new File(Environment.getExternalStorageDirectory() + "/Download/" + "app.apk")); 
intent.setDataAndType(apkUri, "application/vnd.android.package-archive"); 
startActivity(intent); 

をしかし、それは動作しません:私は意図してそれをインストールする方法を見つけます。問題ではなく、他のプログラムのリストが選択のために表示され、インストール作業は表示されませんでしたです:

enter image description here

誰かが問題が何であるかを教えてもらえますか?ありがとう!

更新:

  1. 許可android.permission.INSTALL_PACKAGESは、マニフェストに含まれています。
  2. 私は多分これはあなたの問題を解決するAndroidのバージョン2.3 SDK 10
+0

"apkUri" の値とは何ですか? – AnujAroshA

+0

私はapkUriの詳細を表示するようにコードを更新しました。 – Dagang

+0

投稿されたコード@deepakが動作しています。インストールするapkファイルがダウンロードディレクトリにあることを確認してください。両方のアプリに同じパッケージ名が含まれていないことを確認してください。 – AnujAroshA

答えて

4

を実行しています:

Intent intent = new Intent(Intent.ACTION_VIEW); 
intent.setDataAndType(Uri.fromFile(new File(Environment.getExternalStorageDirectory() + "/download/" + "app.apk")), "application/vnd.android.package-archive"); 
startActivity(intent); 
+0

ありがとうございますが、動作しません。 – Dagang

+0

マニフェストファイルのすべての権限を取っていますか –

+0

android.permission.INSTALL_PACKAGESを含めるだけで十分ですか? – Dagang