Ошибка после отправки приложения: java.lang.NoSuchFieldError ⇐ Android
-
Гость
Ошибка после отправки приложения: java.lang.NoSuchFieldError
Я отправил нативное приложение для внутреннего тестирования Google Play, эти тесты показывают некоторые ошибки стабильности, тот же файл aab установлен на моем устройстве и работает нормально, режим отладки также работает нормально, без ошибок, но во внутреннем тестировании Google Play тестирование показывает ошибки:
java.lang.NoSuchFieldError: нет "Lcom/facebook/jni/HybridData;" поле «mHybridData» в классе «Lcom/shopify/reactnative/skia/SkiaDomView;» или его суперклассы
и еще один говорит:
Исключение java.lang.RuntimeException: невозможно приостановить действие {com.imagewatermarks/com.imagewatermarks.MainActivity}: com.facebook.react.uimanager.IllegalViewOperationException: попытка добавить неизвестный тег просмотра: 199 подробно: Тег просмотра: 239 Тип просмотра: класс com.facebook.react.views.view.ReactViewGroup Children(1): [ 193, ], viewsToAdd(1): [[1,199], ], at android.app.ActivityThread.performPauseActivityIfNeeded (ActivityThread.java:4896) на android.app.ActivityThread.performPauseActivity (ActivityThread.java:4845) на android.app.ActivityThread.handlePauseActivity (ActivityThread.java:4796) на android.app.servertransaction.PauseActivityItem.execute (PauseActivityItem.java:46) в android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:176) на android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:97) на android.app.ActivityThread$H.handleMessage (ActivityThread.java:2144) в android.os.Handler.dispatchMessage (Handler.java:106) в androidx.test.espresso.base.Interrogator.loopAndInterrogate (Interrogator.java:10) на androidx.test.espresso.base.UiControllerImpl.loopUntil (UiControllerImpl.java:7) в androidx.test.espresso.base.UiControllerImpl.loopUntil (UiControllerImpl.java:1) в androidx.test.espresso.base.UiControllerImpl.loopMainThreadForAtLeast (UiControllerImpl.java:7) в androidx.test.espresso.action.Tap$1.sendTap (Tap.java:4) на androidx.test.espresso.action.GeneralClickAction.perform (GeneralClickAction.java:4) на androidx.test.espresso.ViewInteraction$SingleExecutionViewAction.perform (ViewInteraction.java:2) на androidx.test.espresso.ViewInteraction.doPerform (ViewInteraction.java:23) на androidx.test.espresso.ViewInteraction.-$$Nest$mdoВыполнить в androidx.test.espresso.ViewInteraction$1.call (ViewInteraction.java:6) в androidx.test.espresso.ViewInteraction$1.call (ViewInteraction.java:1) в java.util.concurrent.FutureTask.run (FutureTask.java:266) в android.os.Handler.handleCallback (Handler.java:938) в android.os.Handler.dispatchMessage (Handler.java:99) в android.os.Looper.loop (Looper.java:240) в android.app.ActivityThread.main (ActivityThread.java:8000) по адресу java.lang.reflect.Method.invoke в com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:603) по адресу com.android.internal.os.ZygoteInit.main. (ZygoteInit.java:947) Вызвано com.facebook.react.uimanager.IllegalViewOperationException: попытка добавить неизвестный тег просмотра: 199 подробно: Тег просмотра: 239 Тип просмотра: класс com.facebook.react.views.view.ReactViewGroup Children(1): [ 193, ], viewsToAdd(1): [[1,199], ],
Я где-то прочитал, что ошибки связаны с файлом proguard, поэтому они предложили добавить несколько строк кода в мой файл, поэтому вот мой файл proguard-rules.pro:
-keep class com.facebook.react.cxxbridge.ModuleRegistryHolder { *; } -keep class com.facebook.react.cxxbridge.CatalystInstanceImpl { *; } -keep class com.facebook.react.cxxbridge.JavaScriptExecutor { *; } -keep class com.facebook.react.bridge.queue.NativeRunnable { *; } -keep class com.facebook.react.bridge.ExecutorToken { *; } -keep class com.facebook.react.bridge.ReadableType { *; } -keep class com.facebook.react.** { *; } -keepclassmembers класс com.facebook.react.** { *; } а вот код из моего /android/app/build.gradle: защита EnableProguardInReleaseBuilds = true ....
buildTypes { отладка { SigningConfig SigningConfigs.release } выпускать { SigningConfig SigningConfigs.release minifyEnabled EnableProguardInReleaseBuilds proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" ShrinkResources true } } } и из моего файла android/build/build.gradle:
buildscript { доб. { buildToolsVersion = "30.0.3" минСдкВерсион = 30 компиляцияSdkVersion = 33 targetSdkVersion = 33 // Мы используем NDK 23, который поддерживает как M1, так и параллельную версию NDK из AGP. ndkVersion = "23.1.7779620" } репозитории { Google() mavenCentral() } зависимости { путь к классам("com.android.tools.build:gradle") classpath("com.facebook.react:реагировать-родной-gradle-плагин") } } После создания нового файла aab и его отправки эти изменения не оказали никакого эффекта, но при внутреннем тестировании Google Play появляются те же ошибки. Не могли бы вы посмотреть, можете ли вы помочь? спасибо.
Я отправил нативное приложение для внутреннего тестирования Google Play, эти тесты показывают некоторые ошибки стабильности, тот же файл aab установлен на моем устройстве и работает нормально, режим отладки также работает нормально, без ошибок, но во внутреннем тестировании Google Play тестирование показывает ошибки:
java.lang.NoSuchFieldError: нет "Lcom/facebook/jni/HybridData;" поле «mHybridData» в классе «Lcom/shopify/reactnative/skia/SkiaDomView;» или его суперклассы
и еще один говорит:
Исключение java.lang.RuntimeException: невозможно приостановить действие {com.imagewatermarks/com.imagewatermarks.MainActivity}: com.facebook.react.uimanager.IllegalViewOperationException: попытка добавить неизвестный тег просмотра: 199 подробно: Тег просмотра: 239 Тип просмотра: класс com.facebook.react.views.view.ReactViewGroup Children(1): [ 193, ], viewsToAdd(1): [[1,199], ], at android.app.ActivityThread.performPauseActivityIfNeeded (ActivityThread.java:4896) на android.app.ActivityThread.performPauseActivity (ActivityThread.java:4845) на android.app.ActivityThread.handlePauseActivity (ActivityThread.java:4796) на android.app.servertransaction.PauseActivityItem.execute (PauseActivityItem.java:46) в android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:176) на android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:97) на android.app.ActivityThread$H.handleMessage (ActivityThread.java:2144) в android.os.Handler.dispatchMessage (Handler.java:106) в androidx.test.espresso.base.Interrogator.loopAndInterrogate (Interrogator.java:10) на androidx.test.espresso.base.UiControllerImpl.loopUntil (UiControllerImpl.java:7) в androidx.test.espresso.base.UiControllerImpl.loopUntil (UiControllerImpl.java:1) в androidx.test.espresso.base.UiControllerImpl.loopMainThreadForAtLeast (UiControllerImpl.java:7) в androidx.test.espresso.action.Tap$1.sendTap (Tap.java:4) на androidx.test.espresso.action.GeneralClickAction.perform (GeneralClickAction.java:4) на androidx.test.espresso.ViewInteraction$SingleExecutionViewAction.perform (ViewInteraction.java:2) на androidx.test.espresso.ViewInteraction.doPerform (ViewInteraction.java:23) на androidx.test.espresso.ViewInteraction.-$$Nest$mdoВыполнить в androidx.test.espresso.ViewInteraction$1.call (ViewInteraction.java:6) в androidx.test.espresso.ViewInteraction$1.call (ViewInteraction.java:1) в java.util.concurrent.FutureTask.run (FutureTask.java:266) в android.os.Handler.handleCallback (Handler.java:938) в android.os.Handler.dispatchMessage (Handler.java:99) в android.os.Looper.loop (Looper.java:240) в android.app.ActivityThread.main (ActivityThread.java:8000) по адресу java.lang.reflect.Method.invoke в com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:603) по адресу com.android.internal.os.ZygoteInit.main. (ZygoteInit.java:947) Вызвано com.facebook.react.uimanager.IllegalViewOperationException: попытка добавить неизвестный тег просмотра: 199 подробно: Тег просмотра: 239 Тип просмотра: класс com.facebook.react.views.view.ReactViewGroup Children(1): [ 193, ], viewsToAdd(1): [[1,199], ],
Я где-то прочитал, что ошибки связаны с файлом proguard, поэтому они предложили добавить несколько строк кода в мой файл, поэтому вот мой файл proguard-rules.pro:
-keep class com.facebook.react.cxxbridge.ModuleRegistryHolder { *; } -keep class com.facebook.react.cxxbridge.CatalystInstanceImpl { *; } -keep class com.facebook.react.cxxbridge.JavaScriptExecutor { *; } -keep class com.facebook.react.bridge.queue.NativeRunnable { *; } -keep class com.facebook.react.bridge.ExecutorToken { *; } -keep class com.facebook.react.bridge.ReadableType { *; } -keep class com.facebook.react.** { *; } -keepclassmembers класс com.facebook.react.** { *; } а вот код из моего /android/app/build.gradle: защита EnableProguardInReleaseBuilds = true ....
buildTypes { отладка { SigningConfig SigningConfigs.release } выпускать { SigningConfig SigningConfigs.release minifyEnabled EnableProguardInReleaseBuilds proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" ShrinkResources true } } } и из моего файла android/build/build.gradle:
buildscript { доб. { buildToolsVersion = "30.0.3" минСдкВерсион = 30 компиляцияSdkVersion = 33 targetSdkVersion = 33 // Мы используем NDK 23, который поддерживает как M1, так и параллельную версию NDK из AGP. ndkVersion = "23.1.7779620" } репозитории { Google() mavenCentral() } зависимости { путь к классам("com.android.tools.build:gradle") classpath("com.facebook.react:реагировать-родной-gradle-плагин") } } После создания нового файла aab и его отправки эти изменения не оказали никакого эффекта, но при внутреннем тестировании Google Play появляются те же ошибки. Не могли бы вы посмотреть, можете ли вы помочь? спасибо.
Мобильная версия