Иногда, после долгого нахождения в фоновом режиме, мое приложение не загружается и застревает на заставке.
Мне удалось воспроизвести это в режиме отладки:
- запуск приложения
- удаленное использование debug js
- убить приложение
- запуск приложения
И в режиме выпуска:
- запуск приложения
- заходим в Параметры
- параметры разработчика
- включить не сохранять активности
- снова запустить приложение
Если я попытаюсь воспроизвести эту ошибку с помощью метода выпуска в режиме отладки, я получу следующую ошибку:
Process: com.situaction, PID: 22308
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:318)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Caused by: java.lang.IllegalStateException: closed
at okhttp3.internal.ws.RealWebSocket.close(RealWebSocket.java:164)
at com.facebook.react.packagerconnection.ReconnectingWebSocket.closeWebSocketQuietly(ReconnectingWebSocket.java:110)
at com.facebook.react.packagerconnection.ReconnectingWebSocket.closeQuietly(ReconnectingWebSocket.java:103)
at com.facebook.react.packagerconnection.JSPackagerClient.close(JSPackagerClient.java:96)
at com.facebook.react.devsupport.DevServerHelper$2.doInBackground(DevServerHelper.java:158)
at com.facebook.react.devsupport.DevServerHelper$2.doInBackground(DevServerHelper.java:154)
at android.os.AsyncTask$2.call(AsyncTask.java:304)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
at java.lang.Thread.run(Thread.java:761)
Кажется, это связано с реагировать на родную навигацию и / или реагировать на родное сокращение так вот мои зависимости:
"react": "16.0.0-alpha.6",
"react-native": "0.43.3",
"react-native-navigation": "1.1.398",
"react-redux": "^5.0.5",
"redux": "^3.7.0",
"redux-logger": "^3.0.1",
"redux-observable": "^0.14.1",
"redux-persist": "^4.8.1",
"redux-persist-transform-filter": "0.0.13",
Хорошо, если выяснится, что это проблема с исходной навигацией. Я решил свою проблему, перейдя на версию 1.1.250.
Кажется, это решает проблему, так как я больше не могу ее воспроизвести, и теперь мое приложение работает нормально.