React-Native:错误类型 3:活动类不存在

时间:2021-01-27 21:31:43

标签: android react-native android-studio mobile react-native-android

我知道有很多关于这个问题的问题/答案。但是,过去几天我一直在尝试在 SO 上找到的许多解决方案,但到目前为止都没有奏效。

我的错误:

BUILD SUCCESSFUL in 52s
372 actionable tasks: 352 executed, 20 up-to-date
info Running C:\Users\User\AppData\Local\Android\Sdk/platform-tools/adb -s emulator-5554 reverse tcp:8081 tcp:8081
info Starting the app on emulator-5554 (C:\Users\User\AppData\Local\Android\Sdk/platform-tools/adb -s emulator-5554 shell am start -n mypackage/mypackage.MainActivity)...
Starting: Intent { cmp=mypackage/.MainActivity }
Error type 3
Error: Activity class {mypackage/mypackage.MainActivity} does not exist.

以下是我根据其他 SO 帖子尝试做的所有事情的列表:

尝试

  1. 运行adb kill-serveradb start-server,然后react-native run-android

  2. 运行 adb reverse tcp:8081 tcp:8081,然后运行 ​​react-native run-android(我曾经合作过的一位资深开发人员告诉我这个问题可能与此相关很久以前,但我无法与他取得联系)

  3. 从模拟器卸载应用程序以及我的物理设备

  4. Build -> Clean Project

  5. Files -> Invalidate Cache / Restart

  6. Files -> Sync Project with Gradle Files

  7. Build -> Rebuild Project

  8. 已删除 /project/android/.gradle/5.1.1 中的 gradle 缓存文件

  9. AndroidManifest.xml -> <activity android:name=".MainActivity"<activity android:name="packagename.MainActivity"

  10. android/app/build.gradle 查看构建类型

debug {
  applicationIdSuffix ".debug"
}
stagingRelease {
  applicationIdSuffix ".staging"
}
release {

}

react-native run-android --variant=[debug] --appIdSuffix '[.debug]'

&&

react-native run-android --variant=[stagingRelease] --appIdSuffix '[.staging]'

(这些带有不同的错误)

  1. 确保 android/app/build.gradle
defaultConfig {
        applicationId "WHATEVER_THIS_IS" 
}

需要匹配android/app/src/main/java/com/app_name/MainActivity.java第一行:

package WHATEVER_THIS_IS;

需要匹配android/app/src/main/java/com/app_name/MainApplication.java第一行:

package WHATEVER_THIS_IS;

需要匹配android/app/src/main/AndroidManifest.xml第一行:

package="WHATEVER_THIS_IS">
  1. 去了android/app/build.gradle并改变了:
splits {
    abi {
        reset()
        enable enableSeparateBuildPerCPUArchitecture
        universalApk false  // If true, also generate a universal APK
        include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
    }
}

splits {
    abi {
        reset()
        enable true
        universalApk true  // If true, also generate a universal APK
        include "armeabi-v7a", "x86", "arm64-v8a", "x86_64"
    }
}
  1. C:/Users/User/.gradle删除cache。无法删除所有内容,因为我不断收到警报,提示其中的许多文件/文件夹当前“在另一个程序中打开”(据我所知是不真实的)

没有任何效果。

我关注解决方案的帖子

Error type 3 Error: Activity class {} does not exist

https://github.com/facebook/react-native/issues/8653

"react-native run-android" - BUILD is SUCCESSFUL but get error type 3 Error: Activity class MainActivity does not exist

Error type 3. Activity class {com.awesome_project/ com.awesome_project.MainActivity} does not exist in react native (Android device)

2 个答案:

答案 0 :(得分:1)

对于 RN 项目尝试运行 adb reverse tcp:8081 tcp:8081

答案 1 :(得分:1)

即使我也面临同样的问题,但我终于找到了解决方案。

  1. 删除应用程序/构建目录。
  2. cd 进入 android 并运行 ./gradlew uninstallAll(即,您的设备应该连接到您的系统)。 执行上述步骤后,它开始工作。
相关问题