expo-dev-launcher 57.0.8 → 57.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/android/build.gradle +2 -2
- package/android/src/debug/java/expo/modules/devlauncher/compose/AuthActivity.kt +35 -15
- package/android/src/debug/java/expo/modules/devlauncher/react/activitydelegates/DevLauncherReactActivityNOPDelegate.kt +1 -0
- package/package.json +3 -3
- package/plugin/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,12 @@
|
|
|
10
10
|
|
|
11
11
|
### 💡 Others
|
|
12
12
|
|
|
13
|
+
## 57.0.9 — 2026-07-23
|
|
14
|
+
|
|
15
|
+
### 🐛 Bug fixes
|
|
16
|
+
|
|
17
|
+
- [Android] Fix onUserLeaveHint NPE and lost EAS sign-in redirect. ([#47347](https://github.com/expo/expo/pull/47347) by [@vicprz](https://github.com/vicprz))
|
|
18
|
+
|
|
13
19
|
## 57.0.8 — 2026-07-22
|
|
14
20
|
|
|
15
21
|
_This version does not introduce any user-facing changes._
|
package/android/build.gradle
CHANGED
|
@@ -26,13 +26,13 @@ expoModule {
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
group = "host.exp.exponent"
|
|
29
|
-
version = "57.0.
|
|
29
|
+
version = "57.0.9"
|
|
30
30
|
|
|
31
31
|
android {
|
|
32
32
|
namespace "expo.modules.devlauncher"
|
|
33
33
|
defaultConfig {
|
|
34
34
|
versionCode 9
|
|
35
|
-
versionName "57.0.
|
|
35
|
+
versionName "57.0.9"
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
buildTypes {
|
|
@@ -8,6 +8,8 @@ import androidx.activity.result.contract.ActivityResultContract
|
|
|
8
8
|
import androidx.appcompat.app.AppCompatActivity
|
|
9
9
|
import androidx.browser.customtabs.CustomTabsIntent
|
|
10
10
|
import androidx.core.net.toUri
|
|
11
|
+
import expo.modules.devlauncher.launcher.DevLauncherActivity
|
|
12
|
+
import expo.modules.devlauncher.services.DependencyInjection
|
|
11
13
|
import java.net.URLEncoder
|
|
12
14
|
|
|
13
15
|
enum class AuthRequestType(val type: String) {
|
|
@@ -57,11 +59,43 @@ class AuthActivity : AppCompatActivity() {
|
|
|
57
59
|
}
|
|
58
60
|
}
|
|
59
61
|
|
|
62
|
+
private fun consumeAuthRedirect(intent: Intent?): Boolean {
|
|
63
|
+
val data = intent?.data
|
|
64
|
+
if (intent?.action != ACTION_VIEW || data?.scheme != "expo-dev-launcher" || data.host != "auth") {
|
|
65
|
+
return false
|
|
66
|
+
}
|
|
67
|
+
val sessionSecret = data.getQueryParameter("session_secret")
|
|
68
|
+
val userNameOrEmail = data.getQueryParameter("username_or_email")
|
|
69
|
+
if (sessionSecret.isNullOrEmpty() || userNameOrEmail.isNullOrEmpty()) {
|
|
70
|
+
setResult(RESULT_CANCELED)
|
|
71
|
+
} else {
|
|
72
|
+
DependencyInjection.sessionService?.setSession(Session(sessionSecret))
|
|
73
|
+
setResult(
|
|
74
|
+
RESULT_OK,
|
|
75
|
+
Intent().apply {
|
|
76
|
+
putExtra(SESSION_KEY, sessionSecret)
|
|
77
|
+
putExtra(USERNAME_KEY, userNameOrEmail)
|
|
78
|
+
}
|
|
79
|
+
)
|
|
80
|
+
}
|
|
81
|
+
return true
|
|
82
|
+
}
|
|
83
|
+
|
|
60
84
|
var wasStarted = false
|
|
61
85
|
|
|
62
86
|
override fun onCreate(savedInstanceState: Bundle?) {
|
|
63
87
|
super.onCreate(savedInstanceState)
|
|
64
88
|
|
|
89
|
+
if (consumeAuthRedirect(intent)) {
|
|
90
|
+
wasStarted = true // guard onResume's RESULT_CANCELED path on this instance
|
|
91
|
+
startActivity(
|
|
92
|
+
Intent(this, DevLauncherActivity::class.java)
|
|
93
|
+
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
|
|
94
|
+
)
|
|
95
|
+
finishAndRemoveTask()
|
|
96
|
+
return
|
|
97
|
+
}
|
|
98
|
+
|
|
65
99
|
val extraType = intent.getStringExtra(AUTH_REQUEST_TYPE_KEY)
|
|
66
100
|
if (extraType != null) {
|
|
67
101
|
wasStarted = true
|
|
@@ -90,21 +124,7 @@ class AuthActivity : AppCompatActivity() {
|
|
|
90
124
|
override fun onNewIntent(intent: Intent) {
|
|
91
125
|
super.onNewIntent(intent)
|
|
92
126
|
|
|
93
|
-
if (intent
|
|
94
|
-
val sessionSecret = intent.data?.getQueryParameter("session_secret")
|
|
95
|
-
val userNameOrEmail = intent.data?.getQueryParameter("username_or_email")
|
|
96
|
-
|
|
97
|
-
if (sessionSecret.isNullOrEmpty() || userNameOrEmail.isNullOrEmpty()) {
|
|
98
|
-
setResult(RESULT_CANCELED)
|
|
99
|
-
finish()
|
|
100
|
-
return
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
val resultIntent = Intent().apply {
|
|
104
|
-
putExtra(SESSION_KEY, sessionSecret)
|
|
105
|
-
putExtra(USERNAME_KEY, userNameOrEmail)
|
|
106
|
-
}
|
|
107
|
-
setResult(RESULT_OK, resultIntent)
|
|
127
|
+
if (consumeAuthRedirect(intent)) {
|
|
108
128
|
finish()
|
|
109
129
|
}
|
|
110
130
|
}
|
|
@@ -12,6 +12,7 @@ open class DevLauncherReactActivityNOPDelegate(activity: ReactActivity) :
|
|
|
12
12
|
override fun onCreate(savedInstanceState: Bundle?) {}
|
|
13
13
|
override fun onResume() {}
|
|
14
14
|
override fun onPause() {}
|
|
15
|
+
override fun onUserLeaveHint() {}
|
|
15
16
|
override fun onDestroy() {}
|
|
16
17
|
override fun onNewIntent(intent: Intent?): Boolean = true
|
|
17
18
|
override fun onBackPressed(): Boolean = true
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "expo-dev-launcher",
|
|
3
3
|
"title": "Expo Development Launcher",
|
|
4
|
-
"version": "57.0.
|
|
4
|
+
"version": "57.0.9",
|
|
5
5
|
"description": "Pre-release version of the Expo development launcher package for testing.",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"homepage": "https://docs.expo.dev",
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"@expo/schema-utils": "^57.0.2",
|
|
19
|
-
"expo-dev-menu": "~57.0.
|
|
19
|
+
"expo-dev-menu": "~57.0.9",
|
|
20
20
|
"expo-manifests": "~57.0.1"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@types/node": "^22.14.0",
|
|
28
28
|
"expo": "57.0.8"
|
|
29
29
|
},
|
|
30
|
-
"gitHead": "
|
|
30
|
+
"gitHead": "fd9d8a5a544dcb10ac047e78780f5f53d67d352f",
|
|
31
31
|
"scripts": {
|
|
32
32
|
"build:plugin": "expo-module build plugin",
|
|
33
33
|
"expo-module": "expo-module"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["./src/index.ts","./src/pluginconfig.ts","./src/withdevlauncher.ts"],"version":"6.0.
|
|
1
|
+
{"root":["./src/index.ts","./src/pluginconfig.ts","./src/withdevlauncher.ts"],"version":"6.0.3"}
|