[android] Remove old manifest and bundle loading code (#14091)
[android] Kotlinize DI (#14039)
[android] add ExpoUpdatesAppLoader and dependencies
[android][home] Add DevMenu on Android (#6829)# Why Fixes #6521 # How - Created unversioned `DevMenuManager` class which mostly just delegates calls to versioned `DevMenuModule` module
[android][home] Add DevMenu on Android (#6829)# Why Fixes #6521 # How - Created unversioned `DevMenuManager` class which mostly just delegates calls to versioned `DevMenuModule` modules specific for SDK version. These modules are responsible for providing initial props, dev menu options and actions to run when these options are selected. The manager creates a new `ReactRootView` that bases on kernel's (home's) React instance manager and starts `HomeMenu` app which is registered as a second entry point in `home` and then, manager adds this root view to the currently used activity (it must implement `ExperienceActivity`). As I needed to know which experience activity is the current one, I've added `sCurrentActivity` static member to that class and just track it using activity's lifecycle methods. - Backported `DevMenuModule` to all SDK versions included in the client. Including some changes between them - for example hot and fast reloading. - Added support for back button and Android's menu press (which can be simulated by `adb shell input keyevent 82`). - Removed some unused code related to `Nux` and replaced it with new onboarding screen (see #6793). - Created new `ShakeDetector` which works more like on iOS. The one provided by React Native is annoying in most cases as it actually requires two shakes. - Updated `ReactAndroidCodeTransformer` to turn off showing React Native dev menu in non-standalone apps. - **To do after merging:** Rebuild versioned expoviews. # Test Plan - [x] Test on experience in debug mode - [x] Test on experience in production mode - [x] Test on snacks - [x] Test on older SDKs - [x] Test on simulators - [x] Test that onboarding shows up once you open the experience for the first time or you didn't accept it yet (clicked `Got it` button). - [x] Test that using dev menu still works once we kill home's activity.
show more ...
[android] Do not strip injected fields from NativeModuleDepsProvider
Refactor test mocksfbshipit-source-id: 2973241
Basic unit testsfbshipit-source-id: abcca0d8
Permissions per experience (#2161)* [android] Permissions module - ask for permissions per experience* [android] Do not check/request permissions on the native side; customize the perm dialog*
Permissions per experience (#2161)* [android] Permissions module - ask for permissions per experience* [android] Do not check/request permissions on the native side; customize the perm dialog* [expo-sdk] Check permissions before invoking native method* Revert "[expo-sdk] Check permissions before invoking native method"This reverts commit f20c90d7622ec00d206a7e116f70f5c63714e1e0.* [android] DO check permissions on the native side but do not request* [ios] Scoped permissions - wip* [ios] Proper perm in dialog; save user defaults correctly* [ios] Check permissions when required* [ios] Review updates* [ios] Multiple kernel services fixes* [android] Permissions per experience for Android < M* [android] Change shape of permissions in metadata; further refactor for older Android APIs* [android] Apply changes to previous SDKs* [ios] Apply changes to previous SDKsfbshipit-source-id: 328961f
Initial implementation of Kernel services on Android (#1750)* [android][sdk] Initial implementation of Kernel services on Android* [wip][android] More sensor modules moved over to kernel services
Initial implementation of Kernel services on Android (#1750)* [android][sdk] Initial implementation of Kernel services on Android* [wip][android] More sensor modules moved over to kernel services* [wip][android] Discard obsolete changes to clean up the diff* [wip][android] Move sensors services to a separate package, handle multiple listeners for a single service* [android] Move DeviceMotionModule over to use kernel services* [android] Kernel services cleanup* [android] Move configuration of listeners to subscriptions* [android] Rename SensorKernelService to SubscribableSensorKernelService* [www] ui polish* [www] cleans up send email apifbshipit-source-id: 17c734b
Only use embedded response once in shell appfbshipit-source-id: 27fad370e3
ExponentView -> ExpoViewfbshipit-source-id: 46cffc7