Параллельная установка в Android с использованием PackageInstaller

#android #installation #android-source #packageinstaller

#Android #установка #android-исходный код #packageinstaller

Вопрос:

Я работаю над приложением для Android, чтобы установить несколько других приложений. Я использую PackageInstaller для установки приложений, и все работает нормально. Пример кода, как я устанавливаю другие приложения

 PackageInstaller.SessionParams sessionParams = new PackageInstaller.SessionParams(
                    PackageInstaller.SessionParams.MODE_FULL_INSTALL);
sessionParams.setInstallLocation(someInstallLocation);
sessionParams.setAppPackageName(somePackageName);

sessionId = packageInstaller.createSession(sessionParams);
session = packageInstaller.openSession(sessionId);
copyApkToPackageInstaller(session);
session.commit(callbackIntent);
  

Я определяю время ожидания, после которого я бы отказался от установки, если я не получу никакого обратного вызова. Для этого мне нужно понять, что произойдет, если я отправлю установки для двух приложений одно за другим. Будет ли вторая установка ждать, пока первая не будет завершена? или Android будет обрабатывать обе установки одновременно?

Предположим, что пользователь нажмет «Установить» в PackageInstallerActivity, как только он появится.

Комментарии:

1. У меня нет решения для вас, но Android имеет открытый исходный код, поэтому вы можете просто посмотреть на код и узнать cs.android.com/android/platform/superproject / /…

2. @RickSanchez Благодарим за ваш комментарий. Я просмотрел код, но несколько вещей показались мне действительно сложными. Итак, я подумал, что если у кого-то уже есть идея, это было бы полезно.