expo 49.0.16 → 49.0.17

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.
@@ -33,7 +33,7 @@ def getRNVersion() {
33
33
  ensureDependeciesWereEvaluated(project)
34
34
 
35
35
  group = 'host.exp.exponent'
36
- version = '49.0.16'
36
+ version = '49.0.17'
37
37
 
38
38
  buildscript {
39
39
  def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
@@ -97,7 +97,7 @@ android {
97
97
  minSdkVersion safeExtGet("minSdkVersion", 21)
98
98
  targetSdkVersion safeExtGet("targetSdkVersion", 33)
99
99
  versionCode 1
100
- versionName "49.0.16"
100
+ versionName "49.0.17"
101
101
  consumerProguardFiles("proguard-rules.pro")
102
102
  }
103
103
  lintOptions {
@@ -3,6 +3,7 @@ package expo.modules
3
3
  import android.app.Activity
4
4
  import android.content.Context
5
5
  import android.content.Intent
6
+ import android.os.Build
6
7
  import android.os.Bundle
7
8
  import android.view.KeyEvent
8
9
  import android.view.ViewGroup
@@ -123,9 +124,7 @@ class ReactActivityDelegateWrapper(
123
124
  if (newDelegate != null && newDelegate != this) {
124
125
  val mDelegateField = ReactActivity::class.java.getDeclaredField("mDelegate")
125
126
  mDelegateField.isAccessible = true
126
- val modifiers = Field::class.java.getDeclaredField("accessFlags")
127
- modifiers.isAccessible = true
128
- modifiers.setInt(mDelegateField, mDelegateField.modifiers and Modifier.FINAL.inv())
127
+ removeFinalModifier(mDelegateField)
129
128
  mDelegateField.set(activity, newDelegate)
130
129
  delegate = newDelegate
131
130
 
@@ -300,5 +299,24 @@ class ReactActivityDelegateWrapper(
300
299
  return method!!.invoke(delegate, *args) as T
301
300
  }
302
301
 
302
+ /**
303
+ * Remove the Java `final` modifier from the field
304
+ */
305
+ @Suppress("DiscouragedPrivateApi")
306
+ private fun removeFinalModifier(field: Field) {
307
+ if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
308
+ val artField = Field::class.java.getDeclaredField("artField")
309
+ artField.isAccessible = true
310
+ val modifiers = Class.forName("java.lang.reflect.ArtField").getDeclaredField("accessFlags")
311
+ modifiers.isAccessible = true
312
+ modifiers.setInt(artField.get(field), field.modifiers and Modifier.FINAL.inv())
313
+ return
314
+ }
315
+
316
+ val modifiers = Field::class.java.getDeclaredField("accessFlags")
317
+ modifiers.isAccessible = true
318
+ modifiers.setInt(field, field.modifiers and Modifier.FINAL.inv())
319
+ }
320
+
303
321
  //endregion
304
322
  }
@@ -31,7 +31,7 @@
31
31
  "expo-constants": "~14.4.2",
32
32
  "expo-contacts": "~12.2.0",
33
33
  "expo-crypto": "~12.4.1",
34
- "expo-dev-client": "~2.4.11",
34
+ "expo-dev-client": "~2.4.12",
35
35
  "expo-device": "~5.4.0",
36
36
  "expo-document-picker": "~11.5.4",
37
37
  "expo-face-detector": "~12.2.0",
@@ -40,7 +40,7 @@
40
40
  "expo-gl": "~13.0.1",
41
41
  "expo-google-app-auth": "~8.3.0",
42
42
  "expo-haptics": "~12.4.0",
43
- "expo-image": "~1.3.4",
43
+ "expo-image": "~1.3.5",
44
44
  "expo-image-loader": "~4.3.0",
45
45
  "expo-image-manipulator": "~11.3.0",
46
46
  "expo-image-picker": "~14.3.2",
@@ -78,9 +78,10 @@
78
78
  "expo-system-ui": "~2.4.0",
79
79
  "expo-task-manager": "~11.3.0",
80
80
  "expo-tracking-transparency": "~3.1.0",
81
- "expo-updates": "~0.18.16",
81
+ "expo-updates": "~0.18.17",
82
82
  "expo-video-thumbnails": "~7.4.0",
83
83
  "expo-web-browser": "~12.3.2",
84
+ "jest-expo": "~49.0.0",
84
85
  "lottie-react-native": "5.1.6",
85
86
  "react": "18.2.0",
86
87
  "react-dom": "18.2.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo",
3
- "version": "49.0.16",
3
+ "version": "49.0.17",
4
4
  "description": "The Expo SDK",
5
5
  "main": "build/Expo.js",
6
6
  "module": "build/Expo.js",
@@ -89,5 +89,5 @@
89
89
  "react-dom": "18.2.0",
90
90
  "react-native": "0.72.6"
91
91
  },
92
- "gitHead": "f7d7afdcebcb194d0862cee6e5587fa5e5e3cd02"
92
+ "gitHead": "9b361dbd519d2aa0e7c041fb1d73885cae65de55"
93
93
  }