Устанавливать.apk программно
В порядке,
Я знаю, что есть довольно много вопросов, подобных этому, но не дал мне ответ, который я ищу.
У меня есть пользовательское рутованное ПЗУ (без магазина игр). Это android stick pc (поэтому у меня нет системного ключа для подписи моего приложения, если я не пропустил что-то в документации по ядру). Я хочу, чтобы мое приложение проверяло обновления с моего сервера каждый вечер. Если есть новая версия, я хочу загрузить и установить ее без участия пользователя.
Я знаю, что могу вызвать экран обновления с
Intent intent = new Intent(Intent.ACTION_VIEW);
Uri uri = Uri.fromFile(new File(pathToApk));
intent.setDataAndType(uri, "application/vnd.android.package-archive");
startActivity(intent);
Но, как я уже сказал, это не то, что я хочу. SU и busybox находятся на устройстве. Кто-нибудь знает способ сделать это?
1 ответ
Вы можете получить доступ к PackageManager из командной строки, используя pm
, Если su
присутствует, нужно запустить
su pm install pathToApk.apk
Чтобы запустить его из приложения Java, используйте ProcessBuilder
,