Мое приложение зависает на заставке после возобновления:

  • Запустить приложение
  • Нажать назад (перейти на панель управления Android)
  • Нажмите на значок приложения
  • приложение зависает на заставке

Вот мои зависимости:

"react-native": "^0.57.4",
"react-native-code-push": "^5.4.2",
"react-native-collapsible": "^1.1.0",
"react-native-datepicker": "^1.7.2",
"react-native-fast-image": "^5.1.0",
"react-native-geocoder": "git://github.com/pizzahutuk/react-native-geocoder",
"react-native-google-analytics-bridge": "^6.1.2",
"react-native-google-autocomplete": "^0.1.5",
"react-native-image-picker": "^0.27.1",
"react-native-iphone-x-helper": "^1.2.0",
"react-native-linear-gradient": "^2.4.2",
"react-native-maps": "git://github.com/react-community/react-native-maps.git#1844d46902629e2caa55527d5bff48a550d92525",
"react-native-picker-select": "^4.4.0",
"react-native-sensors": "^4.0.0",
"react-native-splash-screen": "^3.1.1",
"react-native-svg": "^8.0.8",
"react-native-video": "^3.2.1",
"react-navigation": "^2.16.0",
"react-navigation-redux-helpers": "^2.0.6",
"react-redux": "^5.0.7",
"react-router": "^4.3.1",
"redux": "^4.0.0"

Вот журнал adb logcat во время проблемы:

11-13 15: 45: 30.710 2290 2290 W ResourceType: неизвестный пакет при получении имени для ресурса с номером 0x9c020204 11-13 15: 45: 30.710 2290 2290 I HwLauncher: Запуск по щелчку начинается com.huawei.android.launcher.BubbleTextView {d7d30af VFED..CL. ... P..ID 528,1280-792,1570 # 9c020204} 11-13 15: 45: 30.710 2290 2290 I HwLauncher: Launcher.Utilities startActivitySafely useLaunchAnimation = true 11-13 15: 45: 30.710 2290 2290 I HwLauncher: Launcher.Utilities startActivitySafely begin startActivity () для текущего пользователя 11-13 15: 45: 30.714 2239 2239 I K3V3CpuGovernorPolicy: установить сцену Hmp policy: 300, 150 11-13 15: 45: 30.717 2290 2290 I HwLauncher: Launcher.Utilities startActivitySafely end startActivity () для текущего пользователя 11-13 15: 45: 30.717 2290 2290 I HwLauncher: Launcher родительского элемента этого представления не является SearchGridView, поэтому нет необходимости сообщать RecentApp. 11-13 15: 45: 30.717 2290 2290 I HwLauncher: Запуск по щелчку конца 11-13 15: 45: 30.719 2290 2290 I HwLauncher: Launcher onPause () 11-13 15: 45: 30.720 2290 12810 I HwLauncher: Launcher.MotionManager stopMotionAppsReco begin, flg = 403 11-13 15: 45: 30.720 2290 12810 Вт HwLauncher: Launcher.MotionManager stopMotionAppsReco service flg 403 недоступен 11-13 15: 45: 30.725 2239 3057 Вт PGApi_client: recv actoionId = 10000, action = com.huawei.pgmng.PGAction@3b9ef2f actionId = 10000 pkg = air.com.unit9.frapp extend1 = 1390 extend2 = flag = 3 type = 1 11-13 15: 45: 30.726 2290 12809 I HwLauncher: Launcher.MotionManager stopMotionAppsReco begin, flg = 402 11-13 15: 45: 30.726 2290 12809 W HwLauncher: Launcher.MotionManager stopMotionAppsReco service flg 402 недоступен 11-13 15: 45: 30.729 1893 2018 I HwSystemManager: NotificationGuideService: дескриптор MSG_ACTIVIY_FOREGROUND, uid: 10185 11-13 15: 45: 30.729 10855 10985 I HwSystemManager: NotificationGuideService: дескриптор MSG_ACTIVIY_FOREGROUND, uid: 10185 11-13 15: 45: 30.730 2290 2290 I SendBroadcastPermission: действие: com.huawei.android.action.WIDGET_FOCUS_CHANGE, mPermissionType: 0 11-13 15: 45: 30.732 10855 11018 W System.err: android.content.pm.PackageManager $ NameNotFoundException: air.com.unit9.frapp 11-13 15: 45: 30.732 10855 11018 W System.err: в android.app.ApplicationPackageManager.getApplicationInfo (ApplicationPackageManager.java:321) 11-13 15: 45: 30.732 10855 11018 W System.err: в com.huawei.systemmanager.netassistant.netapp.service.NetControllService.checkShowNetWorkToast (NetControllService.java:170) 11-13 15: 45: 30.732 10855 11018 W System.err: at com.huawei.systemmanager.netassistant.netapp.service.NetControllService.access 100 долларов США (NetControllService.java:56) 11-13 15: 45: 30.732 10855 11018 W System.err: в com.huawei.systemmanager.netassistant.netapp.service.NetControllService $ 1.handleMessage (NetControllService.java:114) 11-13 15:45: 30.732 10855 11018 W System.err: at android.os.Handler.dispatchMessage (Handler.java:102) 11-13 15:45: 30.732 10855 11018 W System.err: at android.os.Looper.loop (Looper.java:150) 11-13 15: 45: 30.733 10855 11018 W System.err: at android.os.HandlerThread.run (HandlerThread.java:61) 11-13 15:45: 30.737 1893 2093 I HwResources: идентификатор значка загрузки: 7f0a0000, pkgName: air.com.unit9.frapp 11-13 15:45: 30.744 388 1107 I gralloc: Alloc req: dev = 0x7f83e42540, w = 1080, h = 1920, format = 0x1, usage = 0x933 11-13 15:45: 30.744 388 1107 I gralloc: дескриптор Alloc (0x7f68a58400): interfmt = 0x1, stride = 1088, size = 8486912 11-13 15:45: 30.745 1893 2093 I HwResources: icon: air.com.unit9.frapp найден в приложении 11-13 15: 45: 30.745 12692 12738 I ReactNativeJS: Запуск приложения "App" с appParams: {"rootTag": 11}. DEV === false, предупреждения на уровне разработки выключены, оптимизация производительности включена 11-13 15:45: 30.770 388 12146 I gralloc: Свободная ручка (0x7f68a42b00) 11-13 15:45: 30.770 388 12146 I gralloc: Свободная ручка (0x7f68a58300) 11-13 15:45: 30.771 388419 I gralloc: Alloc req: dev = 0x7f83e42540, w = 1080, h = 1920, format = 0x1, usage = 0xb00 11-13 15: 45: 30.772 388419 I gralloc: дескриптор Alloc (0x7f68a58600): interfmt = 0x200000001, stride = 1088, size = 8486912 11-13 15:45: 30.772 388419 I gralloc: Alloc req: dev = 0x7f83e42540, w = 1080, h = 1920, format = 0x1, usage = 0xb00 11-13 15: 45: 30.781 388419 I gralloc: дескриптор Alloc (0x7f83e88b00): interfmt = 0x200000001, stride = 1088, size = 8486912 11-13 15:45: 30.781 388419 I gralloc: Alloc req: dev = 0x7f83e42540, w = 1080, h = 1920, format = 0x1, usage = 0xb00 11-13 15:45: 30.782 388419 I gralloc: дескриптор Alloc (0x7f68a58700): interfmt = 0x200000001, stride = 1088, size = 8486912 11-13 15:45: 30.788 388419 I gralloc: Alloc req: dev = 0x7f83e42540, w = 1080, h = 1920, format = 0x1, usage = 0xb00 11-13 15:45: 30.793 388419 I gralloc: дескриптор Alloc (0x7f68a58800): interfmt = 0x200000001, stride = 1088, size = 8486912 11-13 15:45: 30.793 388419 I gralloc: Alloc req: dev = 0x7f83e42540, w = 1080, h = 1920, format = 0x1, usage = 0xb00 11-13 15:45: 30.798 388419 I gralloc: дескриптор Alloc (0x7f68a58900): interfmt = 0x200000001, stride = 1088, size = 8486912 11-13 15:45: 30.798 388419 I gralloc: Alloc req: dev = 0x7f83e42540, w = 1080, h = 1920, format = 0x1, usage = 0xb00 11-13 15:45: 30.798 388419 I gralloc: дескриптор Alloc (0x7f68a42200): interfmt = 0x200000001, stride = 1088, size = 8486912 11-13 15: 45: 30.819 961 1609 E HwCHRWebMonitor: выполняется processNameair.com.unit9.frapp 11-13 15: 45: 30.819 961 1609 E HwCHRWebMonitor: HwCHRWifiUIDWebSpeed ​​[appName = com.mobilesrepublic.appy UID = 10104 WEBSENDSEGS = 9 WEBRESENDSEGS = 0 WEBRECVSEGS = 12 WEBRESEGS = 0 WEBRESEGS = 0 = 0 suckTimes = 0 recovage_times = 0] 11-13 15: 45: 30.820 961 1609 E HwCHRWebMonitor: HwCHRWifiUIDWebSpeed ​​[appName = com.google.uid.shared: 10010 UID = 10010 WEBSENDSEGS = 18 WEBRESENDSEGS = 0 WEBRECVSEGS = 11 WEBRESENDSEGS = 0 WEBRECVSEGS = 11 WEBRESEGSEGS = 0 WEBRTTSEGS = 9 WEBSNDDUPACKS = 0 suckTimes = 0 recovage_times = 0] 11-13 15: 45: 30.820 961 1609 E HwCHRWebMonitor: HwCHRWifiUIDWebSpeed ​​[appName = com.google.uid.shared: 10010 UID = 1010010 WEBSENDSEGS = 0 WEBRESENDSEGS = 0 WEBRECVSEGS = 1 WEBRESEGSEGS = 0 WEBRECVSEGS = 1 WEBERRSUTTS = 0 WEBRTTSEGS = 0 WEBSNDDUPACKS = 0 suckTimes = 0 recovage_times = 0] 11-13 15: 45: 30.820 961 1609 E HwCHRWebMonitor: HwCHRWifiUIDWebSpeed ​​[appName = com.meraki.sm UID = 1010109 WEBSENDSEGS = 28 WEBRESENDSEGS = 0 WEBRECVUPTAGS = 24 WEBERRSEGS = 0 WEBOUTS = 0 WEBOUTS = 0 WEBOUTS = 0 WEBOUTS = 0 WEBOUTS = 0 = 0 suckTimes = 0 recovage_times = 0] 11-13 15: 45: 30.820 961 1609 E HwCHRWebMonitor: HwCHRWifiUIDWebSpeed ​​[appName = air.com.unit9.frapp UID = 10185 WEBSENDSEGS = 40 WEBRESENDSEGS = 0 WEBRECVSEGS = 28 WEBERRSEGS = 0 WEBOUTTS = 0 WEBOUTTS = 0 WEBOUTTS = 0 WEBOUTTS = 0 WEBOUTTS = 0 17 WEBSNDDUPACKS = 0 suckTimes = 0 recovage_times = 0] 11–13 15: 45: 30.820 961 1609 E HwCHRWebMonitor: WebMonitor [mNetWorkIsSuck = false mUIDIsSuck =] WebSpeed ​​[WEBSENDSEGS = 132 WEBRESENDSEGS = 8 WEBRECVSEGS = 89 WEBRESENDSEGS = 8 WEBRECVSEGS = 89 WEBRESEGS = 0 WEBOUTESTATION = 5 WEBOUTRSTS = 5 WEBOUTRSLIS = 5 WEBSNDDUPACKS = 0 SENDSEGS = 0 RESENDSEGS = 0 RECVSEGS = 0 ERRSEGS = 0 OUTRSTS = 0 ESTABLISRST = 0 RTTDURATION = 0 RTTSEGS = 0 SNDDUPACKS = 0 suckTimes = 0 recovage_times = 0] 11-13 15: 45: 30.844 961 1084 I ActivityManager: отображается air.com.unit9.frapp / .MainActivity: + 124 мс 11-13 15: 45: 30.898 12692 12738 Я ReactNativeJS: [CodePush] Проверка наличия обновлений. 11-13 15: 45: 30.903 12692 12705 I art: Распределение объектов сейчас занято, поэтому перед увеличением кучи. Размер новой кучи - 45 МБ. 11-13 15: 45: 30.919 12692 12738 I ReactNativeJS: {"event": "gaevent", "eventparameters": {"category": "TAB", "action": "Accueil", "label": "Page Accueil "," значение ": 0," невзаимодействие ": ложь}} 11-13 15: 45: 30.921 12692 12738 I ReactNativeJS: [CodePush] Сообщение об обновлении двоичного файла (2.0) 11-13 15: 45: 30.962 12692 12705 I art: Размещение объектов сейчас занято, поэтому перед увеличением кучи. Размер новой кучи составляет 54 МБ. 11-13 15: 45: 31.006 2290 2290 I HwLauncher: Launcher mUnlockScreenRunnbale getOrientationEnabled false 11-13 15: 45: 31.006 2290 2290 I HwLauncher: Launcher onStop () 11-13 15: 45: 31.025 961 1572 E WifiConfigStore: updateConfiguration freq = 5200 BSSID = 8a: 15: 14: 74: 7c: f2 RSSI = -39 "tiptopdev" WPA_PSK 11-13 15:45: 31.027 961 1618 I HuaweiWifiWatchdogStateMachine: spd good count: 0, add sc: 0.0, rate: 1.0 11-13 15:45: 31.027 961 1618 I HuaweiWifiWatchdogStateMachine: текущий mHighDataFlowRate = 1.0 11-13 15:45: 31.028 961 1618 I HuaweiWifiWatchdogStateMachine: POta txb txg rxg: 0, 58, 0. Lr = 0% Totpkt = 58 11-13 15:45: 31.028 961 961 I WifiProJNI: ######### CMD_QUERY_PKTS ######## 11-13 15:45: 31.028 961 1616 I QosMonitor: postEventFromNative: msg = 100, arg1 = 0, arg2 = 9 11-13 15: 45: 31.028 961 1616 W WifiProJNI: опрос перед: g_monitor_fd = 175 11-13 15: 45: 31.030 961 1618 I HuaweiWifiWatchdogStateMachine: PTcp RTT: 860, rtt pkt = 17, tcp_rx = 30, tcp_tx = 45, tcp_reTran = 0, rtRate = 0 11-13 15: 45: 31.030 961 1618 I HuaweiWifiWatchdogStateMachine: pkt chk неплохо, сбросьте sc до 0. 11-13 15: 45: 31.030 961 1618 I HuaweiWifiWatchdogStateMachine: чистая скорость хорошая 11-13 15:45: 31.030 961 1618 I HuaweiWifiWatchdogStateMachine: судите о хорошей ссылке ######, goodLinkLevel = 3 11-13 15: 45: 31.030 961 1618 I HuaweiWifiWatchdogStateMachine: sendResultMsgToQM bssid: 8a: 15: : : 7c: f2, qoslevel = 3 11-13 15: 45: 31.030 961 1618 I HuaweiWifiWatchdogStateMachine: сообщение о хорошей ссылке, хорошая база rssi: -39 11-13 15:45: 31.035 388 388 I gralloc: Свободная ручка (0x7f68a42e00) 11-13 15:45: 31.051 388 388 I gralloc: Свободная ручка (0x7f68a58400) 11-13 15: 45: 31.132 12692 12738 I ReactNativeJS: [CodePush] Ошибка состояния отчета: {"appVersion": "2.0"} 11-13 15: 45: 31.133 12692 12738 I ReactNativeJS: [CodePush] Произошла неизвестная ошибка. 11-13 15: 45: 31.134 12692 12738 I ReactNativeJS: [CodePush] 400: проверка обновлений должна включать действительный ключ развертывания - убедитесь, что ваше приложение настроено правильно. Чтобы просмотреть доступные ключи развертывания, запустите команду code-push deployment ls -k. 11-13 15: 45: 31.333 12692 12738 I ReactNativeJS: {"event": "pageview", "page": {"category": "Home", "path": "", "title": "tip top ФРАНЦИЯ "}} 11-13 15: 45: 31.428 2239 2239 I K3V3CpuGovernorPolicy: установить сцену Политика Hmp: 665, 256 11-13 15: 45: 31.968 961 961 I TrafficMonitor: обновление: rxPkts: 9, txPkts: 7, rxBytes: 4525, txBytes: 1574 11-13 15: 45: 31.968 961 961 I TrafficMonitor: начало истекло. 1-й уровень 11-13 15: 45: 31.968 961 961 I TrafficMonitor: gettimer: interval = 2000 11-13 15: 45: 32.338 961 1572 E WifiConfigStore: updateConfiguration freq = 5200 BSSID = 8a: 15: 14: 74: 7c: f2 RSSI = -38 "tiptopdev" WPA_PSK

Любая идея?

Благодарность !

0
Hermanus 13 Ноя 2018 в 17:50

1 ответ

Лучший ответ

Вы должны вызвать SplashScreen.hide() из функции componentDidMount().

При желании вы можете добавить задержку, например:

import { InteractionManager } from 'react-native';

...

componentDidMount() {

  // Some code here if needed.

  InteractionManager.runAfterInteractions(() => {
    setTimeout(() => {
      SplashScreen.hide();
    }, 750);
  });
}

Если вам нужно вызвать его из componentDidUpdate() (потому что вам нужны некоторые данные, чтобы быть готовыми), просто вызовите его, а не из оператора if. Если заставка уже исчезла, SplashScreen.hide() не причинит никакого вреда.

(И помните: componentDidUpdate() вызывается не после первого рендеринга, а только после второго)

1
HedeH 13 Ноя 2018 в 16:22