Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Здравствуйте, пишу приложение с возможностью обновления через установку apk

SDK 30

APK файл скачан во внутреннюю директории программы и находится по адресу

/data/user/0/app.com.testaccess/app_apk/update.apk

Пытаюсь установить

void OpenNewVersion(Context context) {

File fileApkToInstall = new File(context.getDir("apk", Context.MODE_PRIVATE), "update.apk");

if (fileApkToInstall.exists()) {

Log.d(TAG,"Utils.OpenNewVersion Load APK " + fileApkToInstall.toString());

 Intent intent = new Intent(Intent.ACTION_VIEW);

   Uri fileUri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".provider", fileApkToInstall);

   Log.d(TAG,"Utils.OpenNewVersion Get Uri");

  intent.setDataAndType(fileUri, "application/vnd.android.package-archive");

  intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

 context.startActivity(intent);

}

}

На этапе создания Uri прога подвисает, т.е. лог

Utils.OpenNewVersion Get Uri

Уже не падает в logcat

Вообщем нужна помощь, нужно стартануть apk.

3 года назад
jorah
48 летНидерланды
11 лет в сервисе
Был
2 года назад