установить apk из другого приложения для Android без использования SD-карты - PullRequest
3 голосов
/ 03 июня 2011

Мне удалось скачать файл apk и сохранить его в моем /data/data/com.android.myApp/anotherApp.apk. Мне было интересно, есть ли способ установить этот файл из другого приложения. Я в настоящее время использую: </p> <p>Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(Uri.parse(filepath), "application/vnd.android.package-archive"); startActivity(intent);</p> <p>

А вот мой файл манифеста:

</p> <p> Когда я запускаю это. Это дает мне сообщение «Ошибка разбора: есть проблема с анализом пакета». Я не знаю, в чем проблема? 1) Нужно ли хранить приложение на SD-карте? Я не хочу этого делать 2) Проблемы с разрешениями? 3) устанавливается ли поврежденный пакет?

Ответы [ 3 ]

2 голосов
/ 21 марта 2013

Вам нужно добавить filepath к file://:

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://" + filepath), "application/vnd.android.package-archive"); startActivity(intent);
1 голос
/ 23 апреля 2015

Попробуй этого приятеля ...

Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(new File(path+"/yourapp.apk")), application/vnd.android.package-archive");
startActivity(intent);
1 голос
/ 03 июня 2011

Обычно, когда вы сохраняете файлы в изолированной программной среде приложения, они сохраняются в папке «files».Таким образом, ваш полный путь должен быть:

/data/data/com.android.myApp/files/anotherApp.apk 

Если вы работаете на эмуляторе, вы можете выполнить adb shell ls, чтобы проверить, действительно ли файл находится там:

...