Możliwym rozwiązaniem jest to, że najprawdopodobniej najpierw nie pakujesz aplikacji w pakiet, wykonaj następujące kroki, a następnie wdróż plik app-debug.apk na swoim urządzeniu
$ cd myproject
$ react-native start > /dev/null 2>&1 &
$ curl "http://localhost:8081/index.android.bundle?platform=android" -o "android/app/src/main/assets/index.android.bundle"
(jeśli folder assets
nie istnieje, utwórz go)
Następnie uruchom z katalogu głównego projektu
$> (cd android/ && ./gradlew assembleDebug)
zainstaluj utworzony apk na swoim urządzeniu z lokalizacji: android/app/build/outputs/apk/app-debug.apk
daj mi znać, jeśli to rozwiąże problem
EDYCJA :
Możesz po prostu umieścić go w swoim pliku package.json jako skrypt, aby go zautomatyzować, wierzę, że zostanie to naprawione w nadchodzących wydaniach react-native i zostanie wykonane przed złożeniem ostatecznego APK, więc nie będzie to potrzebne (mam nadzieję także)
położyć :
"scripts": {
"build": "(cd android/ && ./gradlew assembleDebug)",
"start": "node node_modules/react-native/local-cli/cli.js start",
"bundle-android": "react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --sourcemap-output android/app/src/main/assets/index.android.map --assets-dest android/app/src/main/res/"
},
lub, jak wspomniano, odpowiednik curl, ale w większości przypadków powyższy jest bardziej wytrzymały
react-native run-android
? W tym przypadku pojawia się błąd, który jest dziwny, ponieważ w trybie debugowania pakiet JS afaik nie powinien być potrzebny, ponieważ ma łączyć się z serwerem pakietów.