Today we are suddenly no longer seeing updates published with eas update
on our deployed mobile app.
I have thoroughly checked that we have not made any changes to our app.json
/eas.json
files besides version/build numbers since we last used eas update
, at which time it was working fine (early June). Although the updates appear to be published successfully, the app is simply no longer updating.
If I use the expo go app and open the branch manually from here, the update is accessible. It is only on the live version of the app (on the play store, I haven’t yet checked this on iOS) that it is not appearing.
We are using the managed workflow with SDK 48 and I have eas-cli version 3.14.0 win32-x64 node-v18.16.0
.
I have tried the suggestions here: react native - Eas Update does not publish any new Expo Updates - Stack Overflow to no effect.
When I plug in my device and view the logs, I see the following:
Failed to download manifest from URL: https://exp.host/@me/my_project
java.lang.Exception: {"message":"Experience \"@me/my_project\" for platform \"android\" and release channel \"default\" does not exist or is not published.","errorCode":"EXPERIENCE_NOT_FOUND","metadata":{"fullName":"@me/my_project","platform":"android","sdkVersions":[],"runtimeVersion":"exposdk:48.0.0","releaseChannel":"default"}}
at expo.modules.updates.loader.FileDownloader$downloadManifest$1.onResponse(FileDownloader.kt:312)
at expo.modules.updates.loader.FileDownloader$downloadData$1.onResponse(FileDownloader.kt:393)
at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:519)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
at java.lang.Thread.run(Thread.java:1012)
There isn’t a release channel called “default”, but I assume this would refer to our production
channel, linked to our production
branch, where the update is clearly visible. We do have one other channel, but we don’t actually use it for anything, and this has been the case for quite some time. I’m not aware of any way in which the default could have changed.
Does anyone have any idea what could have caused this error? See configuration below (again, this is unchanged since eas update
was last working fine):
app.json
:
{
"expo": {
"name": "myProject",
"slug": "myProject",
"platforms": [
"ios",
"android"
],
"version": "1.8.8",
"orientation": "portrait",
"icon": "./assets/applogo.png",
"splash": {
"image": "./assets/splash.png",
"resizeMode": "contain",
"backgroundColor": "#ffffff"
},
"updates": {
"fallbackToCacheTimeout": 0,
"url": "https://u.expo.dev/[REDACTED]"
},
"assetBundlePatterns": [
"**/*"
],
"ios": {
"supportsTablet": false,
"bundleIdentifier": "com.myProject.ios",
"buildNumber": "1.8.8",
"infoPlist": {
"NSCameraUsageDescription": "[REDACTED]",
"NSLocationWhenInUseUsageDescription": "[REDACTED]"
}
},
"android": {
"package": "com.myProject.android",
"googleServicesFile": "./google-services.json",
"versionCode": 84,
"permissions": [
"CAMERA",
"ACCESS_COARSE_LOCATION",
"ACCESS_FINE_LOCATION",
"BLUETOOTH_SCAN",
"BLUETOOTH_CONNECT"
],
"adaptiveIcon": {
"foregroundImage": "./assets/applogo.png",
"backgroundColor": "#ffffff"
}
},
"privacy": "unlisted",
"runtimeVersion": {
"policy": "sdkVersion"
},
"plugins": [
[
"with-rn-bluetooth-classic",
{
"peripheralUsageDescription": "[REDACTED]",
"alwaysUsageDescription": "[REDACTED]"
}
]
],
"extra": {
"eas": {
"projectId": "[REDACTED]"
}
}
}
}
eas.json
:
{
"cli": {
"version": ">= 0.52.0"
},
"build": {
"development": {
"developmentClient": true,
"distribution": "internal"
},
"staging": {
"channel": "staging",
"distribution": "internal"
},
"production": {
"channel": "production",
"node": "16.15.0"
}
},
"submit": {
...
}
}