React native app keeps an old version in release - react-native

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

Related

The release build apk is not reflecting the changes made in source code why ? -React native

I have made the changes in source code. when running it in debug mode it's working fine changes are. working there. After taking the release build changes are not reflecting in it. why ??? Android build
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle
run this command.. may be it's sounds weird but it's work for me
reference : https://stackoverflow.com/a/60015205/6654562
Before Trying to build APK run gradlew clean and clean the gradle folder this will remove all the previous builds. Then try to build the release APK

Why release build works differently than debug?

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

react-native run-android dev mode not working

I created the app by working on the following tasks for the launch of the Android app.
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle
After that, I tried to build the app again in development mode (react-native run-android), but the app continues to be built in release mode. How do you build it development mode like before?
react-native run-android
When I do this react-native run-android, Metro Bundle does not run and just build the release app on my device.
I want the Metro Bundle to be turned on and built in development mode when I execute this.
I had the same problem, it was fixed by deleting the line:
import com.facebook.react.BuildConfig;
from the MainApplication.java
Below can clear your thoughts about the metro server and development mode
When you are in development mode and need to debug the application
live by changing the content of the code the you should always do:
react-native run-android, it will always run the metro server and
you have the feature to live reload the application whenever the code
changes. Note: This will work for both the emulator and phones
connected to your pc through cables or by server.
Now, in case you want to build an apk and wanted to test on a real
device which enables you to discard the consoles and for the further
testing the application before making it live then you should always
run the below command
Bundle first all the files, by going inside your project
structure
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/
Now, create a bundle apk by going inside the android folder and run the below command./gradlew assembleDebug
Note : it will create the apk in you build folder inside this
directory project_name\android\app\build\outputs\apk\debug
I hope this helps....Thanks :)

App is shipped with old persisted data even after release build

I am using redux persist and I have previously persisted a list of data, but even after building the app in release, the app is shipped with some previous data that's not cleared out. A fresh build is not there , I have tried the following
react-native run-android --variant=release
cd android && ./gradlew assembleRelease
I have also run this code to bundle, but no use
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 is causing an error for me on initial app start up cuz of the old data, and the only way I am able to clear data is clearing app data from device settings
Ok, it seems the issue was from backup process being enabled , this helped https://stackoverflow.com/a/55294158/7266219

React native building release isn't reflecting changes that debug does (android)

I made some styling changes to my react native app. Everything looks good in debug so I tried to run the release variant using 'react-native run-android --variant=release' and none of that changes in debug show up. I made sure I wasn't crazy and removed the background image. The release variant didn't change at all. I then tried generating the signed apk and installing it manually. Same thing.
I can't seem to find anything on google. Has anyone had this problem before or have suggestions on what to try? I've combed through all the config files and everything seems right. I know its hard without being able to look at the code but I can't share it since its for internal company use only.
For anyone still struggling with this, updating index.android.bundle usually solves this issue:
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/
1 - Perform adb reverse..check below got to platform-tools in cmd
C:\Users\username\AppData\Local\Android\Sdk\platform-tools --> adb reverse tcp:8081 tcp:8081
2 - Then delete any bundle file if present in assets folder
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
3 - run --> react-native run-android --variant=release
or react-native run-android