Реагировать на родной 0.61.3 андроид - не может изменить идентификатор приложения - PullRequest
0 голосов
/ 30 октября 2019

Я перевожу проект rn с 0.59 на 0.61.3 (последний) со свежим npx react-native init.

Мне нужно изменить идентификатор приложения defaut, который он дал приложению android. Для этого я:

  • изменил значение package="com.myapp" в manifest.xml на package="mycomp.myapp"
  • изменил значение applicationId "com.myapp" на applicationId "mycomp.myapp" в app/build.graddle
  • изменить пакеты src com/myapp/MainApplication на mycomp/myapp/MainApplication
  • изменить это ниже в файле _BUCK (не уверен, что именно ...):

    android_build_config(
        name = "build_config",
        package = "mycomp.myapp",
    )
    android_resource(
        name = "res",
        package = "mycomp.myapp",
        res = "src/main/res",
    )
    

После этого, даже после успешного выполнения ./gradlew clean, при запуске команды npx react-native run-android приложение устанавливается, но вылетает с:

2019-10-30 15:43:26.978 30576-30743/mycomp.myapp E/AndroidRuntime: FATAL EXCEPTION: create_react_context
    Process: mycomp.myapp, PID: 30576
    java.lang.RuntimeException: Unable to load script. Make sure you're either running a Metro server (run 'react-native start') or that your bundle 'index.android.bundle' is packaged correctly for release.
        at com.facebook.react.bridge.CatalystInstanceImpl.jniLoadScriptFromAssets(Native Method)
        at com.facebook.react.bridge.CatalystInstanceImpl.loadScriptFromAssets(CatalystInstanceImpl.java:227)
        at com.facebook.react.bridge.JSBundleLoader$1.loadScript(JSBundleLoader.java:28)
        at com.facebook.react.bridge.CatalystInstanceImpl.runJSBundle(CatalystInstanceImpl.java:261)
        at com.facebook.react.ReactInstanceManager.createReactContext(ReactInstanceManager.java:1175)
        at com.facebook.react.ReactInstanceManager.access$1000(ReactInstanceManager.java:125)
        at com.facebook.react.ReactInstanceManager$5.run(ReactInstanceManager.java:951)
        at java.lang.Thread.run(Thread.java:764)

Мытакже обратите внимание, что Metro запущен и прослушивает, но приложение отладки никогда не достигает этого:

warn The following packages use deprecated "rnpm" config that will stop working from next release:
- react-native-orientation: https://github.com/yamill/react-native-orientation#readme
- react-native-push-notification: https://npmjs.com/package/react-native-push-notification
- react-native-sentry: https://github.com/getsentry/react-native-sentry
Please notify their maintainers about it. You can find more details at https://github.com/react-native-community/cli/blob/master/docs/configuration.md#migration-guide.
┌──────────────────────────────────────────────────────────────────────────────┐
│                                                                              │
│  Running Metro Bundler on port 8081.                                         │
│                                                                              │
│  Keep Metro running while developing on any JS projects. Feel free to        │
│  close this tab and run your own Metro instance if you prefer.               │
│                                                                              │
│  https://github.com/facebook/react-native                                    │
│                                                                              │
└──────────────────────────────────────────────────────────────────────────────┘

Looking for JS files in
/Users/thomasfetiveau/wksp_myapp/myapp-rn61/bin
/Users/thomasfetiveau/wksp_myapp/myapp-rn61 

Loading dependency graph, done.

Есть идеи почему?

Найдите ниже моего npx react-native info вывода:

$ npx react-native info
warn The following packages use deprecated "rnpm" config that will stop working from next release:
- react-native-orientation: https://github.com/yamill/react-native-orientation#readme
- react-native-push-notification: https://npmjs.com/package/react-native-push-notification
- react-native-sentry: https://github.com/getsentry/react-native-sentry
Please notify their maintainers about it. You can find more details at https://github.com/react-native-community/cli/blob/master/docs/configuration.md#migration-guide.
info Fetching system and libraries information...
System:
    OS: macOS Mojave 10.14.5
    CPU: (4) x64 Intel(R) Core(TM) i7-7567U CPU @ 3.50GHz
    Memory: 78.62 MB / 16.00 GB
    Shell: 3.2.57 - /bin/bash
Binaries:
    Node: 8.11.3 - ~/.nvm/versions/node/v8.11.3/bin/node
    Yarn: 1.10.1 - /usr/local/bin/yarn
    npm: 5.6.0 - ~/.nvm/versions/node/v8.11.3/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
    iOS SDK:
    Platforms: iOS 13.0, DriverKit 19.0, macOS 10.15, tvOS 13.0, watchOS 6.0
    Android SDK:
    API Levels: 18, 23, 24, 25, 26, 27, 28, 29
    Build Tools: 23.0.1, 23.0.3, 25.0.0, 25.0.2, 25.0.3, 26.0.0, 26.0.1, 26.0.2, 26.0.3, 27.0.3, 28.0.3, 29.0.2
    System Images: a...google_apis | Google APIs Intel x86 Atom Sys..., a...google_apis | Google APIs Intel x86 Atom Sys..., a... | Intel x86 Atom_64, a...google_apis | Google APIs Intel x86 Atom Sys..., a...gle_apis | Google APIs Intel x86 Atom_64 ..., a...-28 | Intel x86 Atom, a... | Intel x86 Atom_64, a...google_apis | Google APIs Intel x86 Atom Sys..., a...-29 | Intel x86 Atom, a... | Intel x86 Atom_64, a...google_apis | Google APIs Intel x86 Atom Sys...
IDEs:
    Android Studio: 3.5 AI-191.8026.42.35.5900203
    Xcode: 11.0/11A420a - /usr/bin/xcodebuild
npmPackages:
    react: ^16.11.0 => 16.11.0 
    react-native: 0.61.3 => 0.61.3 
npmGlobalPackages:
    create-react-native-module: 0.11.1
    react-native-create-library: 3.1.2

Ответы [ 2 ]

0 голосов
/ 01 ноября 2019

Проблема, с которой я столкнулся, не была связана с изменением идентификатора приложения. Это произошло из-за использования собственной встроенной навигации + неправильный импорт файла Java: https://github.com/wix/react-native-navigation/issues/5617

0 голосов
/ 30 октября 2019

пожалуйста, запустите

adb reverse tcp:8081 tcp:8081

Затем перезагрузите приложение

...