Я пишу приложение для обновления приложения. После того, как я убедился, что у меня есть apk на устройстве, это то, что я делаю в приложении, которое я пытаюсь обновить:
Intent promptInstall = new Intent(Intent.ACTION_VIEW);
File f = new File(apkLocation);
promptInstall.setDataAndType(Uri.fromFile(f), "application/vnd.android.package-archive");
_context.startActivity(promptInstall);
Это запускает мой установщик, который отображает разрешения приложений, и я могу нажать "Установить". Но отсюда приложение просто закрывается, я не получаю никакого сообщения (я бы ожидал, что диалог говорит мне, что установка прошла успешно, давая мне возможность нажать "Закрыть" или "Открыть" ). Он просто переходит на главный экран устройства без дополнительного уведомления.
С другой стороны, приложение действительно обновляется, когда я вручную открываю его. Как я могу заставить установщика пройти весь путь, как ожидалось? Есть ли что-то, что нужно для намерения?
Во время написания этого вопроса мне интересно, может ли причина, по которой это происходит, заключается в том, что текущее приложение просто перезаписывается на устройстве, тем самым закрывая его, и по мере того, как не получается результат намерения, потому что его источник был убит?