sut*_*her 6 react-native react-navigation-v6
升级react-native-navigationreact-native-safe-area-context后尝试升级时出现以下错误
Note: Recompile with -Xlint:deprecation for details.
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaUtils.kt: (12, 34): Unresolved reference: R
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaUtils.kt: (15, 34): Unresolved reference: getInsets
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaUtils.kt: (16, 24): Unresolved reference: Type
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaUtils.kt: (17, 28): Unresolved reference: Type
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaUtils.kt: (18, 28): Unresolved reference: Type
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaUtils.kt: (55, 50): Unresolved reference: R
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt: (8, 37): Unresolved reference: FabricViewStateManager
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt: (9, 37): Unresolved reference: FabricViewStateManager
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt: (19, 66): Unresolved reference: HasFabricViewStateManager
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt: (24, 41): Unresolved reference: FabricViewStateManager
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt: (26, 3): 'getFabricViewStateManager' overrides nothing
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaView.kt: (26, 45): Unresolved reference: FabricViewStateManager
e: /home/me/myProject/node_modules/react-native-safe-area-context/android/src/main/java/com/th3rdwave/safeareacontext/SafeAreaViewManager.kt: (71, 10): Unresolved reference: fabricViewStateManager
FAILURE: Build failed with an exception.
Run Code Online (Sandbox Code Playgroud)
我的构建脚本:
buildscript {
ext {
buildToolsVersion = "29.0.2"
minSdkVersion = 16
compileSdkVersion = 29
targetSdkVersion = 29
}
repositories {
google()
jcenter()
}
dependencies {
classpath('com.android.tools.build:gradle:3.5.3')
}
}
Run Code Online (Sandbox Code Playgroud)
sut*_*her 16
如果您使用ReactNative <= 0.63,请安装react-native-safe-area-context在V3(例如3.4.1)中,因为它与v4不兼容safe-area-context
这可以帮助我解决它:
\n首先,设置您的构建脚本版本:
\n解释这些版本的作用:\n| 标题 | 另一个标头 |\n| -------- | -------------- |\n| minSdkVersion | 设置您希望应用程序支持的最低 Android 版本。但请记住,您的应用程序\xe2\x80\x99s minSdkVersion 必须至少与您的依赖要求一样高
Google Play 商店还使用此来确定应用程序可以在用户\xe2\x80\x99s 设备中使用安装在 |\n| 目标SdkVersion | 这是 Android 提供前向兼容性的主要方式,除非更新 targetSdkVersion,否则不应用行为更改 |\n| 编译SdkVersion| 是您的应用程序将使用的版本进行编译。更改此值不会更改运行时行为,您的compileSdkVersion不包含在您的APK中|
如果您想了解更多相关信息,请参阅此处
\n注意:如果您增加compileSdkVersion,请确保您还在电脑上安装了新的SDK。\n就我而言,我错过了这一点,并收到了一个无帮助的错误,例如:
\n* Where:\nBuild file \'/home/me/myProject/android/app/build.gradle\' line: 130\n\n* What went wrong:\nA problem occurred evaluating project \':app\'.\n> No signature of method: build_bzoaxr1mlfb80yiyz2yt0w97u.android() is applicable for argument types: (build_bzoaxr1mlfb80yiyz2yt0w97u$_run_closure1) values: [build_bzoaxr1mlfb80yiyz2yt0w97u$_run_closure1@1068678f]\n\nRun Code Online (Sandbox Code Playgroud)\n\n然后看看升级gradle-plugin。
\nhttps://developer.android.com/studio/releases/gradle-plugin.html#updating-gradle
\n升级 Gradle 后,出现此错误:
\n10:01 Gradle sync failed: Could not get unknown property \'compile\' for configuration container of type org.gradle.api.internal.artifacts.configurations.DefaultConfigurationContainer. (3 s 273 ms)\nRun Code Online (Sandbox Code Playgroud)\n所以我已经from configurations.compile改为implementation:android/app/build.gradle
* Where:\nBuild file \'/home/me/myProject/android/app/build.gradle\' line: 130\n\n* What went wrong:\nA problem occurred evaluating project \':app\'.\n> No signature of method: build_bzoaxr1mlfb80yiyz2yt0w97u.android() is applicable for argument types: (build_bzoaxr1mlfb80yiyz2yt0w97u$_run_closure1) values: [build_bzoaxr1mlfb80yiyz2yt0w97u$_run_closure1@1068678f]\n\nRun Code Online (Sandbox Code Playgroud)\n然后gradle-sync成功,没有错误。
\n正如我在中所做的那样,android studio我已经清除了项目 buy run > clean project,但您也可以转到/android并运行./gradlew clean
但当我尝试启动应用程序时,遇到了问题。在 stackoverflow 上搜索了一下,原因似乎是 RN 仍然与 Gradle7 不兼容。\n所以回到 6.9:
\n10:01 Gradle sync failed: Could not get unknown property \'compile\' for configuration container of type org.gradle.api.internal.artifacts.configurations.DefaultConfigurationContainer. (3 s 273 ms)\nRun Code Online (Sandbox Code Playgroud)\n我还必须将 build:gradle-tools 更改为 4.2.2
\ndependencies {\n classpath(\'com.android.tools.build:gradle:4.2.2\')\n}\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
16236 次 |
| 最近记录: |