[go] fix glide app module kapt issue for expo-image (#21355)# Why close ENG-7642 # How the kapt generated code for AppGlideModule should cover all versioned LibraryGlideModule. previously
[go] fix glide app module kapt issue for expo-image (#21355)# Why close ENG-7642 # How the kapt generated code for AppGlideModule should cover all versioned LibraryGlideModule. previously we put it inside **expoview**, so it includes the unversioned loaders only. this pr moves the AppGlideModule to **android/app**, so that kapt should able to generate modules from all versioned code. # Test Plan versioned expo go + https://github.com/brentvatne/expo-image-go-repro
show more ...
Make expo package linkable by RN instead of expo-modules-core (#14277)
[android] Kotlinize ReactNativeActivity and ExperienceActivity (#13870)
[android] Use autolinking v2 in Expo Go (#13951)# Why Uses a new autolinking in Expo Go on Android. Needs https://github.com/expo/xdl/pull/37 to be able to build standalone apps. # How -
[android] Use autolinking v2 in Expo Go (#13951)# Why Uses a new autolinking in Expo Go on Android. Needs https://github.com/expo/xdl/pull/37 to be able to build standalone apps. # How - Sets up the new autolinking - Adds logic to link AAR instead of source code - Fixes problem with firebase-bom - To get group, I enured that all dependencies will be evaluated before `expo-modules-linker` # Test Plan - Expo Go ✅ - et android-shell-app --url ... --sdkVersion 42.0.0 ✅
[expo-modules] Move code from `unimodules` into `expo-modules-core` (#13703)# Why Migrated `unimodules-core`, `unimodules-react-native-adapter`, `unimodules-app-loader` into `expo-modules-core`
[expo-modules] Move code from `unimodules` into `expo-modules-core` (#13703)# Why Migrated `unimodules-core`, `unimodules-react-native-adapter`, `unimodules-app-loader` into `expo-modules-core` # How - Change package using AS refactor tools - Fix some places where AS wasn't able to do automatically - Fix compatibility with new auto-linking - Ensure that classes which are used during installation steps are still available in the old place # Test Plan - expo-go (tested using unversioned and 41) - bare-expo
[android] migrate OkHttp cache to application cache directory (#11600)# Why Follow-up to #11599. Since OTA update assets are stored in a separate location, it's better to keep the OkHttp cache i
[android] migrate OkHttp cache to application cache directory (#11600)# Why Follow-up to #11599. Since OTA update assets are stored in a separate location, it's better to keep the OkHttp cache in the application cache directory, rather than the files directory -- this allows the OS to clean up files if it needs to, and reduces the chance that developers' application code will unexpectedly interfere with the OkHttp cache. # How - Moved OkHttp cache to `Context.getCacheDir`, and renamed it to match the name of bare RN OkHttp caches. - Added some deletion logic for the old cache in `Context.getFilesDir`. After deleting we set a key in SharedPreferences so we don't try to delete again. - Also increased the maximum cache size to 50Mb -- this is [recommended in the OkHttp docs](https://square.github.io/okhttp/caching/). I checked [`StorageManager.getCacheQuotaBytes`](https://developer.android.com/reference/android/os/storage/StorageManager#getCacheQuotaBytes(java.util.UUID)) for the cache directory of a fresh installation of the Expo Go client on my Pixel 2, and got 64Mb. Since the cache directory also includes a few other caches (image, picasso, home experience data) 50Mb seems like a reasonable maximum size for the OkHttp cache. - Finally, removed some extraneous logic around the OkHttpClient builder that was specifically for ExpoKit apps. # Test Plan Ran the same tests from #11599 again.
[Android][standalone] Fix splash screen in standalone builds (#10519)
[android][ios] pass app.json updates config to expo-updates in standalone apps (#9985)
[android] Remove GCM (#9735)# Why Supersedes https://github.com/expo/expo/pull/6071. Nice to land after https://github.com/expo/expo/pull/9475 landed. # How - copied over changes from http
[android] Remove GCM (#9735)# Why Supersedes https://github.com/expo/expo/pull/6071. Nice to land after https://github.com/expo/expo/pull/9475 landed. # How - copied over changes from https://github.com/expo/expo/pull/6071 - I **did not** copy this part — https://github.com/expo/expo/pull/6071/files#diff-862cf0cf071d02f043199b0056d290c9R137-R141 — as we no longer support ExpoKit, so we don't have to worry about peoples' apps - reformatted all the modified files # Test Plan Expo Client compiled, NCL ran, presenting notifications worked, remote notifications worked too. (I tapped "Send me a push notification" a couple of times, nothing happened, I copied the `ExponentPushToken` and sent a notification using https://expo.io/notifications — this "unclogged" notification drain, they all came down at once and then the one I entered manually too. Strange?)
[android][task-manager] Task manager for bare in Expo (#6828)Task manager for bare android and iOS applications.
[sdk33] Add versioned SDK33 to Android (#4270)# Why A step of https://github.com/expo/expo/issues/4154. # How After fixing `tools`, `gulp android-add-rn-version --abi=33.0.0` # Test Pla
[sdk33] Add versioned SDK33 to Android (#4270)# Why A step of https://github.com/expo/expo/issues/4154. # How After fixing `tools`, `gulp android-add-rn-version --abi=33.0.0` # Test Plan - [x] The project compiles - [x] A sample SDK33 app runs # Commits * [android] Update versioned-react-native * [android] Enable Java 1.8 in expoview * [expokit] Update expokit-npm-package with SDK33 * [android] Upgrade Gradle wrapper in versioned-react-native * [android] Upgrade Gradle tool in versioned-react-native * [tools] Do not add another ADD_NEW_SDKS_HERE template string when versioning * [tools] Update XDL and change JNI libraries in whole versioned-RN project * [tools] Add support for Kotlin files when renaming packages * [tools] Add support for Java 1.8 using a patched version of JarJar Links React Native 0.59.8 added source and target compatibility to Java 1.8. It looks like JarJar Links 1.4 (https://code.google.com/archive/p/jarjar), which we use to rename versioned.host.exp. to abiXX_X_X.host.exp. doesn't support Java 1.8 JARs. (See https://code.google.com/archive/p/jarjar/issues/64 and https://code.google.com/archive/p/jarjar/issues/63). Fortunately, @mike-hogan patched JarJar Links --- updated ASM dependency from v4 to v5 so it supports new classes. I cloned the repository (https://github.com/m081072/jarjar-fork), built the JAR with `ant` and copied `dist/jarjar-1.4.1.jar` to `tools`. * [android] Remove react-native-unimodules reference when versioning * [android] Run gulp android-add-rn-version --abi=33.0.0 * [android] Some post-adding-new-version patches to the project * [tools] Fix add-stripe-activity script * [expokit] Update expokit-npm-package with SDK33
[android] support custom builds (#4025)
[expo-video-thumbnails] Add expo-video-thumbnails# Why This module generates images from videos. This can be useful when creating for example a video gallery. # How I created a new unimodu
[expo-video-thumbnails] Add expo-video-thumbnails# Why This module generates images from videos. This can be useful when creating for example a video gallery. # How I created a new unimodule `expo-video-thumbnails` from the template. # Test Plan Here is an example RN project that I was using to test this library: https://github.com/graszka22/videothumbnails
[packages] Move unimodules foundation to `org.unimodules` scope
[expo-sharing] Add expo-sharing module with basic functionality (#3556)## Why Package was response for users request about possibility to share to other platforms, especially instagram https://
[expo-sharing] Add expo-sharing module with basic functionality (#3556)## Why Package was response for users request about possibility to share to other platforms, especially instagram https://expo.canny.io/feature-requests/p/make-it-possible-to-share-an-image-to-instagram-on-ios-and-android ## How Created new `expo-sharing` package with basic sharing functionality. On Android used Intent `Intent.ACTION_SEND` and to ensure file is accessible for third applications used `FileProvider`. On iOS used `UIDocumentInteractionController presentOpenInMenuFromRect` to open action sheet. For android added `mimeType` property, for iOS added `UTI` to be able to control shown applications that can handle file. ## Test Plan Test using NCL Sharing module.
[expo-blur] Revert submodule in favor of our old implementation (#3625)# Why Closes https://github.com/expo/expo/issues/3523 and https://github.com/expo/expo/issues/2459. # How - removed s
[expo-blur] Revert submodule in favor of our old implementation (#3625)# Why Closes https://github.com/expo/expo/issues/3523 and https://github.com/expo/expo/issues/2459. # How - removed submodule according to https://stackoverflow.com/a/16162000/1123156, - brought back `EXBlur` implementation from a4598c6a439bcdfa03f7cd835929897a4e352f3d, moved to unimodules architecture, - reverted changes to NCL. # Test Plan BlurViewScreen on both platforms looks ok.
[expo-av][android] Unscope okhttp in unversioned, upgrade ExoPlayer, scope okhttp and ExoPlayer in versioned ABIs (#3539)# Why Should fix https://github.com/expo/expo/issues/2941, https://github
[expo-av][android] Unscope okhttp in unversioned, upgrade ExoPlayer, scope okhttp and ExoPlayer in versioned ABIs (#3539)# Why Should fix https://github.com/expo/expo/issues/2941, https://github.com/expo/expo/issues/2298, may fix https://github.com/expo/expo/issues/3488. # How - prefixed `exoplayer` in versioned expoviews, - removed prefixing from unversioned codebase - upgraded exoplayer # Test Plan Cloned from branch [example/android-video-bug] and ran https://github.com/natterstefan/playlist-example.
Convert IntentLauncherAndroid to unimodule (#3427)# Why Making modules universal. # How - Moved `IntentLauncherAndroid` module to universal module `expo-intent-launcher`. - Changed name t
Convert IntentLauncherAndroid to unimodule (#3427)# Why Making modules universal. # How - Moved `IntentLauncherAndroid` module to universal module `expo-intent-launcher`. - Changed name to `IntentLauncher` - we no longer use `Android/iOS` suffixes, so I just took the opportunity and renamed it. - Added more configuration options (mostly copied from https://github.com/poberwong/react-native-intent-launcher). - Added `ModuleNotFoundException` and `CurrentActivityNotFoundException` to `expo-errors` as they are going to be used in multiple modules. # Test Plan `native-component-list` example works
[expo-haptics] Move expo-haptics into universal module (#3330)
[expo-image-manipulator] Convert ImageManipulator into universal module (#3245)* [expo-image-manipulator] Move image-manipulator into universal module * [expo-image-manipulator] Adjust docs, str
[expo-image-manipulator] Convert ImageManipulator into universal module (#3245)* [expo-image-manipulator] Move image-manipulator into universal module * [expo-image-manipulator] Adjust docs, structure, add tests & refactor slightly * [expo-image-manipulator] Fix enums case * [expo-image-manipulator] Add changelog entry * [expo-image-manipulator] Remove unnecessary class extending
[android] flavorless builds
[ios][android][ts][test-suite][docs] Convert Calendar to unimodule (#3377)# Why Universalmodulling # How - Moved Calendar module to `expo-calendar` universal module. - Added basic tests i
[ios][android][ts][test-suite][docs] Convert Calendar to unimodule (#3377)# Why Universalmodulling # How - Moved Calendar module to `expo-calendar` universal module. - Added basic tests in test-suite for all methods - Fixed some smaller and easy-to-fix bugs or inconsistencies between platforms or docs *This module still requires a solid audit, docs are incomplete and they were not enough for me to understand how some things work. Also, because of huge differences between platforms, I imagine this module is a bit hard to use. I believe some parts can be simplified.* # Test Plan `test-suite` tests that I've just written are passing on both platforms. `native-component-list` example also works fine.
[expo-brightness] Extract Brightness to a universal module (#3375)* [expo-brightness] Generate module from template * [expo-brightness] Move iOS code to expo-brightness * [expo-brightness] Mo
[expo-brightness] Extract Brightness to a universal module (#3375)* [expo-brightness] Generate module from template * [expo-brightness] Move iOS code to expo-brightness * [expo-brightness] Move TS code to expo-brightness * [jest-expo] Update mocks * [expo-brightness] Move Android code to expo-brightness
[expo-web-browser] Extract WebBrowser API to a universal module (#3374)* [expo-web-browser] Generate universal module from template * [expo-web-browser] Move TS code to expo-web-browser * [ex
[expo-web-browser] Extract WebBrowser API to a universal module (#3374)* [expo-web-browser] Generate universal module from template * [expo-web-browser] Move TS code to expo-web-browser * [expo-web-browser] Move iOS code to expo-web-browser * [expo-web-browser] Move Android code to expo-web-browser * [docs] Add a note about WebBrowser.dismissBrowser() not doing anything on Android * [jest-expo] Update mocks * [expo-facebook] WebBrowser moved to universal modules
[expo-analytics-amplitude] Extract Amplitude to a universal module (#3362)# Why Split the SDK. # How The usual. # Test Plan The project compiles.
123456789