Нет подключения к Интернету в приложении Cordova на некоторых устройствах Android - PullRequest
0 голосов
/ 20 мая 2018

У меня есть приложение Ionic, которое было в магазине приложений более года.Теперь внезапно несколько человек сообщают, что приложение не работает.Они не могут пройти экран загрузки, который ожидается, если у телефона нет подключения к Интернету.

Я установил все необходимые настройки в файлах index.html и config.xml:

index.html

<meta http-equiv="Content-Security-Policy" content="default-src * data: gap: content: https://ssl.gstatic.com ; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' localhost:35729; media-src * content: cdvphotolibrary:; img-src * content: data: blob: cdvphotolibrary:">

config.xml

<access origin="*" />
<allow-navigation href="*" />
<allow-intent href="*" />
<plugin name="cordova-plugin-whitelist" spec="^1.3.3" />

В последнее время я ничего не изменил в этих настройках.

Приложение использует https://sentry.io для регистрации ошибок, но я также не вижу никаких ошибок, отправляемых часовому, что означает, что либо ошибок нет, либо приложение не имеет доступа к Интернету.

Проблема существует только на Android,мы не получили ни одного отчета от пользователей iOS.Телефоны Android, как правило, немного старше (Android 5 и Android 6), и у нас был один пользовательский отчет о том, что ошибка была устранена после обновления до последней версии.

Единственный вариант теперь - это вытолкнутьновая версия с улучшенной обработкой ошибок, позволяющая точно определить проблему, но это сложно, потому что я не могу воспроизвести ее на своих тестовых устройствах, а также не могу получить никаких отзывов от устройств.

Любая помощь будет принята с благодарностью.

1 Ответ

0 голосов
/ 26 мая 2018

Таким образом, ошибка не была напрямую связана с проблемой подключения, а скорее с тем фактом, что приложение не могло сохранить учетные данные в indexedDB, что привело к сбоям всех запросов из-за их неаутентификации.

Проблема описана здесь и должна быть решена через пару дней, когда chrome выпускает новую версию: Chrome на Android: предоставленная квота для IndexedDB внезапно почти 0

Не удалось отправить HTTP-запрос на отправку,вероятно из-за подобной проблемы.Эту проблему можно решить, установив для allowSecretKey значение true.

...