Problem
I have just finished making a few changes in my React Native app and on the android emulator when reloading ( R, R) then changes appear.
I then ran the command:
./gradlew assembleDebug
to generate a debug apk.
When I run it on the phone then changes aren't there, it still is an old version.
I have tried:
Deleting the apk in:
./app/build/outputs/apk
Deleting the whole:
./app/build directory
Tried the command:
./gradlew cleanBuildCache
Rebooting after cleaning the cache (3) and deleting the build directory (2)
Tried the command:
gradlew clean
However I still get an old version of the apk generated each time.
I think you must generate the bundle manually since you run the app on your real device.
Unable to load script from assets index.android.bundle on windows
Go to your project directory and check if this folder exists android/app/src/main/assets
If it exists then delete two files viz index.android.bundle and index.android.bundle.meta
If the folder assets don't exist then create the assets directory there.
From your root project directory do
cd android && ./gradlew clean
Finally, navigate back to the root directory and check if there is one single entry file calledindex.js
If there is only one file i.e. index.js then run following command 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
If there are two files i.e index.android.js and index.ios.js then run this react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
Now run react-native run-android
Related
I get a duplicate error after running 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 and consecutively react-native run-android --variant=release.
Deleting the duplicate resources by running rm -rf android/app/src/main/res/drawable-* actually helps. However, my changes doesn't get bundled after deleting those files. Hence, when I run react-native run-android --variant=release again, my changes isn't effected in the build.
Only the drawable_* delete.
android/app/sec/main/res/ and it work.
Or
Generate keystore
Place keystore under your project/android/app/
Edit android/gradle.properties file with your password for keystore
Edit android/app/build.gradle in your project folder and add the
signing config
Run this code in the command line cd android && gradlew
assembleRelease
If you run into a problem in building APK like this error:
Unable to process incoming event 'ProgressComplete ' (ProgressCompleteEvent)
I recommend to
upgrade gradle to 4.3 to avoid building problems
or use Gradlew.bat assembleRelease instead
I have a react native project. it works fine on android. but can not create debug apk file of this project.
first run this command in your terminal
npm run 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/
after this go inside your android folder by running this command
cd android && ./gradlew assembleDebug
then you can get your apk from this location
app/build/outputs/apk/debug/app-debug.apk
I built a new APK after I added react-redux and persist. The debug build is working perfect but the release one seems it didn't get the new code cause its working like before.
I'm not sure, why it's happening?. I tried ./gradlew clean too but it didn't help.
Delete the build folder from the android/app directory. Delete Node Modules and do a fresh install. If this does not work then run metro bundler using the below command.
react-native start --reset-cache
The solution was to run react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/ and then building the apk again
I inherited a react native project, the original programmers generated an apk for android, but they are not available anymore.
In the project I see react-native.config.js, package.json and an android folder with gradlew.
For the moment I'd like just to generate apk for android...but I don't know where to start...
You can create an assemble release following these commands. Open up a command line / terminal within you project and run the following commands.
Install node modules.
npm install
Link dependencies.
react-native link
Create the metro bundle.
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
Change the directory to android.
cd android
Clean the Gradle.
gradlew clean
Create the assemble release.
gradlew assembleRelease -x bundleReleaseJsAndAssets
You can find the APK in
PROJECT_PATH\android\app\build\outputs\apk\release
Follow these steps.
perform npm start in your root-dir of project
run npm i in same root-dir of project
can perform react-native link in root-dir location
now cd android
now gradlew assembleRelease
it will generate your .apk file at project_name/android/app/build/outputs/apk/release
I have made many changes in my js code, when I run in debug mode I'm able to see all the changes but when I run the app in release mode or generate a release apk, the changes that were made and visible in debug mode are not visible.
What I have already tried?
react-native run-android --variant=release
Deleted the builds folder and android.bundle.js in assets
Run the below command before you run release variant in the project directory.
So command sequence will be first execute
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/
This may take little time to finsh.
Then execute your run command:
react-native run-android --variant=release