-
Notifications
You must be signed in to change notification settings - Fork 4.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SDK51][Dev Client] Development client on android fails to open eas update from updates list with "Failed to open app" #28888
Comments
More information: it appears that expo server is responding with this is the request from the android network inspector:
adding
|
hi there! can you share a link to the full update url to secure@expo.dev? thanks |
will do |
@brentvatne sorry to bother you, but did you by any chance have time to check update? |
for comparison: curl 'https://u.expo.dev/update/:uuid:' \
-H 'accept: multipart/mixed,application/expo+json,application/json' \
-H 'accept-encoding: br,gzip' \
-H 'connection: Keep-Alive' \
-H 'eas-client-id: :uuid:' \
-H 'expo-accept-signature: false' \
-H 'expo-api-version: 1' \
-H 'expo-dev-client-id: :uuid:' \
-H 'expo-json-error: true' \
-H 'expo-platform: android' \
-H 'expo-protocol-version: 1' \
-H 'expo-release-channel: default' \
-H 'expo-runtime-version: 7.3.1' \
-H 'expo-updates-environment: DEVELOPMENT' \
-H 'host: u.expo.dev' \
-H 'user-agent: okhttp/4.11.0' \
--compressed this is after update: curl 'https://u.expo.dev/update/:uuid:' \
-H 'accept: application/expo+json,application/json' \
-H 'accept-encoding: gzip' \
-H 'connection: Keep-Alive' \
-H 'expo-dev-client-id: :uuid:' \
-H 'expo-platform: android' \
-H 'host: u.expo.dev' \
-H 'user-agent: okhttp/4.11.0' \
--compressed so somehow during the upgrade path I lost relevant headers?.. |
Thank you for filing this issue! |
@romanonthego - can you try to share a minimal reproducible example of this? i can't reproduce this in a new project. |
I am in process of creating new project with the same versions. |
My best guess at a PR that could've affected this is #28662 though a repro is needed to verify definitively. This occurs when a EAS update is being loaded without using expo-updates to do the loading. Before that PR, this was only done if |
@brentvatne here is a public repo https://github.com/romanonthego/empty-app (basically the same repo I send you in email) |
@wschurman will check, thank you. |
@romanonthego thanks for having the repro. i tried it and it works for me though. could you clarify if i did something differently than your?
diff --git a/android/app/src/development/AndroidManifest.xml b/android/app/src/development/AndroidManifest.xml
index d0bd782..49efcc5 100644
--- a/android/app/src/development/AndroidManifest.xml
+++ b/android/app/src/development/AndroidManifest.xml
@@ -36,7 +36,7 @@
<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_UPDATE_URL" android:value="https://u.expo.dev/0d4825d6-c926-4ccf-87a2-199cafa37ec9"/>
+ <meta-data android:name="expo.modules.updates.EXPO_UPDATE_URL" android:value="https://u.expo.dev/04e358b1-adf0-48b8-8f3e-58e4905fbbb3"/>
<meta-data android:name="expo.modules.updates.EXPO_RUNTIME_VERSION" android:value="@string/expo_runtime_version"/>
<activity
android:name=".MainActivity"
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 782b0fb..1ed4a9f 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -28,7 +28,7 @@
<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_UPDATE_URL" android:value="https://u.expo.dev/0d4825d6-c926-4ccf-87a2-199cafa37ec9"/>
+ <meta-data android:name="expo.modules.updates.EXPO_UPDATE_URL" android:value="https://u.expo.dev/04e358b1-adf0-48b8-8f3e-58e4905fbbb3"/>
<meta-data android:name="expo.modules.updates.EXPO_RUNTIME_VERSION" android:value="@string/expo_runtime_version"/>
<activity android:name=".MainActivity" android:label="@string/app_name" android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode" android:launchMode="singleTask" android:windowSoftInputMode="adjustResize" android:theme="@style/AppTheme" android:exported="true" android:screenOrientation="portrait">
<intent-filter>
diff --git a/app.json b/app.json
index ab57804..a28ebc1 100644
--- a/app.json
+++ b/app.json
@@ -2,7 +2,7 @@
"expo": {
"name": "empty-app",
"slug": "empty-app",
- "owner": "romanonthego",
+ "owner": "kudochien",
"privacy": "hidden",
"jsEngine": "hermes",
"platforms": ["android"],
@@ -15,7 +15,7 @@
"fallbackToCacheTimeout": 0,
"checkAutomatically": "ON_LOAD",
"enabled": true,
- "url": "https://u.expo.dev/0d4825d6-c926-4ccf-87a2-199cafa37ec9"
+ "url": "https://u.expo.dev/04e358b1-adf0-48b8-8f3e-58e4905fbbb3"
},
"assetBundlePatterns": ["**/*"],
@@ -25,7 +25,7 @@
},
"extra": {
"eas": {
- "projectId": "0d4825d6-c926-4ccf-87a2-199cafa37ec9"
+ "projectId": "04e358b1-adf0-48b8-8f3e-58e4905fbbb3"
}
},
"runtimeVersion": "1.0.0",
|
@Kudo that's very interesting, and maybe key to something here.I did check reproducibility before moving app from org account to personal one: I will track my steps and recreate build with error; |
you are right, this example does not present error anymore when building on EAS, but does so when you run |
I am also seeing a similar issue on my side with Android the the expo sdk 51 when running eas build locally: The HEADGETEdit:Actually get the same behaviour with expo 50, so my 51 crash is unrelated to this apologies. Reading through the expo-updates protocol here: https://github.com/expo/expo/blob/main/docs/pages/technical-specs/expo-updates-1.mdx. I don't see anything regarding HEAD requests. |
sorry, was caught up in some work stuff.
it was not the case before the upgrade and my best guess right now is that EAS Build does something during |
@Kudo @wschurman thank you for the help, we are moved from local build in favour for EAS Build compiled APK for a moment and I will try spend some time to figure out more about this behaviour - at this point I am not even sure if it is a bug rather than just unclear error message and/or missing part in the documentation? What would you think we should do with issue? |
@romanonthego - i believe this is indeed a bug, this should work for local builds. we'll follow up on it |
@romanonthego i tried $ cd android
$ ./gradlew assembleDevelopmentDebug
$ adb install -r app/build/outputs/apk/development/debug/app-development-debug.apk i can still load the updates with the app. did i miss something in the repro? |
Summary
Development client on android fails to open an update from the updates list with "Failed to open app" message:
Update itself also seems fine as you could open it just fine from direct url:
iOS seems fine, no issues encountered as well no issues had been seen with
SKD49
andSDK50
;Managed or bare workflow?
bare
What platform(s) does this occur on?
Android
Package versions
Environment
Reproducible demo
https://github.com/romanonthego/empty-app
Stacktrace (if a crash is involved)
No response
The text was updated successfully, but these errors were encountered: