我刚开始接触React-Native。我使用Atom作为编辑器,Genymotion作为模拟器。代码运行得很好。但是当涉及到生成发布APK时,我遇到了困难。
我按照https://facebook.github.io/react-native/docs/signed-apk-android中的教程进行操作,但是出现了一些错误。
经过一些研究,我运行了以下命令:
- react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
- cd android && ./gradlew assembleRelease
但是我遇到了很多错误。
Starting a Gradle Daemon, 1 stopped Daemon could not be reused, use --status for details
> Task :realm:forwardDebugPort
adb: error: no devices/emulators found
===========================================================================
WARNING: Failed to automatically forward port 8083.
In order to use Realm in Chrome debugging mode, port 8083 must be forwarded
from localhost to the device or emulator being used to run the application.
You may need to add the appropriate flags to the command that failed:
adb forward tcp:8083 tcp:8083
===========================================================================
> Task :app:bundleReleaseJsAndAssets
warning: the transform cache was reset.
Loading dependency graph, done.
info Writing bundle output to:, /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/assets/react/release/index.android.bundle
info Done writing bundle output
info Copying 6 asset files
info Done copying assets
> Task :app:mergeReleaseResources FAILED
[drawable-xxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-xxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-xxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-xxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backiconmask] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backiconmask.png [drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backiconmask] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backiconmask.png: Error: Duplicate resources
[drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-xhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-xhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-xhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-xhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-xxxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-xxxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-xxxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-xxxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-hdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-hdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-hdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-hdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:mergeReleaseResources'.
> [drawable-xxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-xxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-xxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-xxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backiconmask] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backiconmask.png [drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backiconmask] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backiconmask.png: Error: Duplicate resources
[drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-mdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-mdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-xhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-xhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-xhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-xhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-xxxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-xxxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-xxxhdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-xxxhdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
[drawable-hdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/src/main/res/drawable-hdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png [drawable-hdpi-v4/node_modules_reactnavigationstack_src_views_assets_backicon] /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/res/react/release/drawable-hdpi/node_modules_reactnavigationstack_src_views_assets_backicon.png: Error: Duplicate resources
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/4.10.2/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 7m 0s
67 actionable tasks: 4 executed, 63 up-to-date
一些研究告诉我必须清空 res 文件夹,我按此操作了,但在运行 ./gradlew assembleRelease
后我还是遇到了其他错误。
> Task :react-native-dialogs:compileReleaseJavaWithJavac
Note: /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/node_modules/react-native-dialogs/android/src/main/java/com/aakashns/reactnativedialogs/modules/DialogAndroid.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
> Task :react-native-fs:compileReleaseJavaWithJavac
Note: /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/node_modules/react-native-fs/android/src/main/java/com/rnfs/RNFSManager.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
> Task :react-native-gesture-handler:compileReleaseJavaWithJavac
Note: /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/node_modules/react-native-gesture-handler/android/src/main/java/com/swmansion/gesturehandler/react/RNGestureHandlerButtonViewManager.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
> Task :realm:forwardDebugPort
adb: error: no devices/emulators found
===========================================================================
WARNING: Failed to automatically forward port 8083.
In order to use Realm in Chrome debugging mode, port 8083 must be forwarded
from localhost to the device or emulator being used to run the application.
You may need to add the appropriate flags to the command that failed:
adb forward tcp:8083 tcp:8083
===========================================================================
> Task :app:bundleReleaseJsAndAssets
warning: the transform cache was reset.
Loading dependency graph, done.
info Writing bundle output to:, /home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/generated/assets/react/release/index.android.bundle
info Done writing bundle output
info Copying 6 asset files
info Done copying assets
> Task :app:processReleaseResources FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:processReleaseResources'.
> Android resource linking failed
/home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/intermediates/merged_manifests/release/AndroidManifest.xml:15: AAPT: error: resource mipmap/ic_launcher (aka com.asqquestionnaire:mipmap/ic_launcher) not found.
/home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/intermediates/merged_manifests/release/AndroidManifest.xml:15: AAPT: error: resource string/app_name (aka com.asqquestionnaire:string/app_name) not found.
/home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/intermediates/merged_manifests/release/AndroidManifest.xml:15: AAPT: error: resource mipmap/ic_launcher_round (aka com.asqquestionnaire:mipmap/ic_launcher_round) not found.
/home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/intermediates/merged_manifests/release/AndroidManifest.xml:15: AAPT: error: resource style/AppTheme (aka com.asqquestionnaire:style/AppTheme) not found.
/home/maelfosso/Documents/Projects/Apps/Guitou/Customers/jnadia40/ASQQuestionnaire/android/app/build/intermediates/merged_manifests/release/AndroidManifest.xml:23: AAPT: error: resource string/app_name (aka com.asqquestionnaire:string/app_name) not found.
error: failed processing manifest.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/4.10.2/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 3m 10s
70 actionable tasks: 64 executed, 6 up-to-date
我希望在进行Facebook React-native网站配置后,能够得到一个APK文件。但是不知道出了什么问题。
我不知道如何解决这个问题。请问有什么建议吗?