Существует одна большая проблема: кажется, что каждые несколько дней Android System WebView обновляется. сам по себе, даже несмотря на то, что даже не настроена учетная запись Google (поэтому не должно быть никаких обновлений через Play Store), даже когда я вручную установил нужную версию WebView через ADB, и хотя все параметры, которые я смог найти, связаны с обновление чего-либо отключено.
Проблема в том, что это приводит к сбою моего киоск-приложения (в logcat я вижу, что оно принудительно закрывается из-за этого обновления), что уже достаточно плохо, но это затем оставляет систему в сломанном состоянии, потому что мое приложение использует режим задачи блокировки, и этот режим задачи блокировки не отключается, когда приложение закрывается, и когда мое приложение пытается снова включить задачу блокировки или снова отключить ее, дела идут плохо, приложение зависает или вылетает. Но еще хуже - иногда мое приложение (которое также зарегистрировано как лаунчер) перезапускается и вроде работает, но не может запустить другие приложения (например, платежный процессор), но чаще всего тогда просто зависает вся система, так сильно, что я не могу Я даже не открываю меню питания, чтобы перезагрузить систему. Похоже, что это происходит, когда приложение выходит из строя из-за обновления, и «под» ним нет других приложений, а задача блокировки все еще включена. Это происходит на разных устройствах и даже на разных версиях Android, поэтому я не думаю, что это проблема конкретной модели устройства.
Конечно, это довольно плохо, поскольку у клиентов остается сломанный устройство, и из-за этого я не могу позволить пользователям перезагружать устройства каждую неделю... это выглядит непрофессионально.
Поскольку я не хочу, чтобы это произошло, и в на самом деле я даже не хочу, чтобы WebView обновлялся вообще, за исключением тех случаев, когда я так говорю, потому что это также может повлиять на код, работающий в приложении (в конце концов, он внезапно запускается под новой, еще не протестированной версией механизма рендеринга !), я ищу способ отключить это автоматическое обновление, но пока не смог найти решения. Я подумывал об установке другого стороннего WebView, который, надеюсь, не будет автоматически получать обновления, но, похоже, большинство альтернатив больше не поддерживаются или просто не работают (я получаю сообщение об ошибке при попытке для установки APK).
Обратите внимание, что я не могу сделать ничего, что потребовало бы root-доступа, потому что приложение платежной системы больше не будет работать (для них требуется «безопасная» среда без каких-либо ограничений). root, с SafetyNet в порядке и отключенным режимом разработчика).
Есть идеи?
- Могу ли я как-то отключить это обновление?
- Или я могу каким-то образом пометить свое приложение как «критическое», чтобы обновление не происходило во время его работы/не закрывалось?
- Или есть хотя бы какой-то способ предотвратить неработающее состояние, гарантируя, что задача блокировки отключена при выходе моего приложения, даже если оно закрывается?
- Или я могу как-то «объединить» копия WebView, которая используется вместо системной (кстати, приложение основано на Cordova)? - Я нашел проект «Пешеходный переход», который делал именно это, но он устарел много лет назад и больше не разрабатывается...
Подробнее здесь: https://stackoverflow.com/questions/785 ... m-updating
Мобильная версия