Mam reagujący projekt, który jest zbudowany przy użyciu Expo i właśnie zaktualizowaliśmy go z SDK 35 do SDK 36, ale teraz nie zaczyna się na Androida i iOS. W systemie iOS rzeczywiście spowoduje awaryjną aplikację Expo i na Androidzie po prostu siedzi na białym ekranie. Zakładam, że jest to problem z jedną z zależności, ale normalnie nie jestem reagującym deweloperem, więc nie jestem pewien, który może być, ale prawdopodobnie Netinfo na podstawie wyjątku poniżej?

Oto kilka dzienników z symulatora iOS.

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFNumber 
isEqualToString:]: unrecognized selector sent to instance 0x86ab4ddf6b4312df'*** 
First throw call stack:
(
0   CoreFoundation                      0x00007fff23c4f02e __exceptionPreprocess + 350
1   libobjc.A.dylib                     0x00007fff50b97b20 objc_exception_throw + 48
2   CoreFoundation                      0x00007fff23c6ff94 -[NSObject(NSObject) doesNotRecognizeSelector:] + 132
3   CoreFoundation                      0x00007fff23c53dac ___forwarding___ + 1436
4   CoreFoundation                      0x00007fff23c55f38 _CF_forwarding_prep_0 + 120
5   Exponent                            0x00000001020ed764 -[ABI37_0_0RNCNetInfo detailsFromInterface:withState:] + 97
6   Exponent                            0x00000001020ed51c -[ABI37_0_0RNCNetInfo currentDictionaryFromUpdateState:withInterface:] + 147
7   Exponent                            0x00000001020ed44c -[ABI37_0_0RNCNetInfo getCurre<…>

Dziennik 2.

2020-09-07 08:38:42.448 [info][tid:com.facebook.ABI37_0_0React.JavaScript] │ '<decode: mismatch for [%c] got [STRING public sz:639]> next state', 'color: #4CAF50; font-weight: bold', { offline:    
{ busy: false,     
lastTransaction: 0,     
online: false,     
outbox: [],     
retryCount: 0,     
retryScheduled: false,     
netInfo: { isConnectionExpensive: null, reach: 'NONE' } },  
newCatchRecord: {},  
signIn: { authToken: undefined, isSignedIn: false, userId: undefined, refreshToken: undefined, numRefreshRetries: 0 },  
preferences: { vessels: [], gears: {}, ports: {},species: {} },  
submissions: {},  
_persist: { version: -1, rehydrated: false } }

I zależności wymienione w package.json}

 "dependencies": {
        "@expo/vector-icons": "^10.0.0",
        "@redux-offline/redux-offline": "^2.6.0-expo.0",
        "axios": "^0.18.0",
        "bson": "^4.0.2",
        "expo": "^36.0.0",
        "expo-font": "~8.0.0",
        "lodash": "^4.17.11",
        "moment": "^2.24.0",
        "promise.prototype.finally": "^3.1.0",
        "react": "16.9.0",
        "react-native": "https://github.com/expo/react-native/archive/sdk-36.0.1.tar.gz",
        "react-native-appearance": "~0.3.1",
        "react-native-gesture-handler": "~1.5.0",
        "react-native-screens": "2.0.0-alpha.12",
        "react-native-simple-radio-button": "^2.7.3",
        "react-native-status-bar-height": "^2.3.1",
        "react-navigation": "^3.11.0",
        "react-redux": "^6.0.1",
        "redux": "^4.0.1",
        "redux-logger": "^3.0.6",
        "redux-persist": "^5.10.0",
        "redux-persist-transform-encrypt": "^2.0.1",
        "redux-thunk": "^2.3.0",
        "styled-components": "^4.1.3",
        "@react-native-community/netinfo": "4.6.0"
    }
0
ChrisWay 7 wrzesień 2020, 10:51

1 odpowiedź

Najlepsza odpowiedź

Zostało to spowodowane problemem w netinfo 4.x.x modernizacji do netinfo 5.x.x (w szczególności 5.9.7).

0
ChrisWay 30 wrzesień 2020, 08:13