I am using eas build and update in my expo app, followed the docs for the implementation and everything was working fine. But I just tested it yesterday and it is not working now.
But what I realised is that, when I refresh the app 2 times (as mentioned in docs), it doesn't download any new updates but if I do it multiple times (nearly 5 times), though the update works on that particular refresh but the assets (images and icons) are gone.
And if I refresh the app again, then the update is gone and assets are back, like it reverts back to older update (which is actually the build itself).
Right now, i am using app.config.js as well as app.json (i need app.json for google ads as that is not reading the config from app.config.js).
Here are the config files;
app.config.js
import "dotenv/config";
export default {
expo: {
backgroundColor: "#1A1A1A",
owner: "owner",
name: "name",
slug: "slug",
version: "1.0.0",
assetBundlePatterns: ["**/*"],
extra: {
eas: {
projectId: "<project id>",
},
...
},
runtimeVersion: "1.0.1", // changed the runtime version from 1.0.0 to 1.0.1 as i thought this may be the reason
updates: {
url: "https://u.expo.dev/<project id>",
},
android: {
...,
},
},
};
app.json
{
"react-native-google-mobile-ads": {
"android_app_id": "ca-app-pub-****************" // my google ads id
}
}
androidManifest.xml
<meta-data android:name="expo.modules.updates.EXPO_UPDATE_URL" android:value="https://u.expo.dev/<project id>"/>
<meta-data android:name="expo.modules.updates.ENABLED" android:value="true"/>
<meta-data android:name="expo.modules.updates.EXPO_UPDATES_CHECK_ON_LAUNCH" android:value="ALWAYS"/>
<meta-data android:name="expo.modules.updates.EXPO_UPDATES_LAUNCH_WAIT_MS" android:value="0"/>
<meta-data android:name="expo.modules.updates.EXPO_RUNTIME_VERSION" android:value="1.0.1"/>
I think this is the only relevant code to eas and eas updates.
Any help is greatly appretiated.
Thanks