react-native: Error: Activity class ... does not exist
Is this a bug report?
Yes
Have you read the Bugs section of the Contributing to React Native Guide?
Yes
Environment
react-native -v
: 0.45 & 0.46.1node -v
: v6.9.1npm -v
: 3.10.8yarn --version
(if you use Yarn): 0.17.6
Then, specify:
- Target Platform (e.g. iOS, Android): Android
- Development Operating System (e.g. macOS Sierra, Windows 10): macOS Sierra
Steps to Reproduce
- Create a new react-native project using
react-native init ExampleProject
- Add auth0 with
yarn add react-native-auth0
and link itreact-native link react-native-auth0
- And configure the Android project: https://github.com/auth0/react-native-auth0#configuration
- Add Redux, React Navigation and a few other JS libraries.
Expected Behavior
App should run without any kind of errors.
Actual Behavior
When I want to run the app with react-native run-android
after writing some code and adding logic without touching the native Java code and with a successful build, I get this error:
BUILD SUCCESSFUL
Total time: 10.072 secs
Running adb -s 0259749fb8c21037 reverse tcp:8081 tcp:8081
Starting the app on 0259749fb8c21037 (adb -s 0259749fb8c21037 shell am start -n com.woodyapplication/com.woodyapplication.MainActivity)...
Starting: Intent { cmp=com.woodyapplication/.MainActivity }
Error type 3
Error: Activity class {com.woodyapplication/com.woodyapplication.MainActivity} does not exist.
I managed to fix this with the following hacks:
- creating a new project and copy the JS code over (which is not a solution)
- replace the package name
com.woodyapplication
withcom.woody.application
(or something else). This fixes it for a few runs but then the error message appears again.
I’ve tested this with RN 0.45 and RN 0.46.1 the bug appears on both versions
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Comments: 17 (1 by maintainers)
@theobouwman Check whether the following values are same,
package (usually line 2) in /android/app/src/main/AndroidManifest.xml
applicationId (usually line 90) in defaultConfig section of /android/app/build.gradle
Line 1 of /android/app/src/main/java/com/paysack/MainApplication.java
Line 1 of /android/app/src/main/java/com/paysack/MainActivity.java
This helped me. You may have deleted/uninstalled your app, but when you check in your settings/apps, you can see that it’s not totally uninstalled.
Go to Settings. Go to Apps. Select your app. (here, you can verify that your app is not uninstalled properly). Open the overflow menu on the top right and select Uninstall for all users. Done. Try to install then launch your app again.
I had the same issues and it turned out that the cause was a previously installed app with the same name that wasn’t properly uninstalled.
https://medium.com/@thehenrytsai/react-native-troubleshooting-history-c876adda2d67
@theobouwman try adding the following to android/settings.gradle
include ':app'
Mine was missing that line because I was messing around. I assume that means that gradle skips compiling the actual app and just compiles 3rd party stuff eg
I got the same error when adding mutiple build variants to app/build.gradle with different applicationIdSuffix’s. According to this unmerged PR, it seems to be a well known RN problem 😦
I had the same issues and none of the above fixes worked for me. Here’s what did:
Settings.gradle
,app/build.gradle
, andMainApplication.java
) for any duplications. I was playing around withreact-native link
and a particular package appeared twice and that was messing up my build.NOTE: The app crashed on opening it. The error in the terminal still persists but the app runs on the device (emulator & physical device)
@jenskuhrjorgensen Thanks that’s what caused this error for me.
I was using CodePush and had several
buildTypes
(releaseStaging
) defined inandroid/app/build.gradle
.After restoring it to just
debug
andrelease
, it works again@thevolcanomanishere saved my life! I’ve removed that line (
include ':app'
) by accident, when removing some duplicated entries of plugins.@hramos the Auth0 library requires the MainActivity to have the launchMode as singleTask. Could that be the cause of this bug?