From f70db7c5b3326fa96fdcf0673ff742d2aa8590a4 Mon Sep 17 00:00:00 2001 From: Jean-Richard Lai Date: Tue, 19 Jan 2016 14:12:51 -0800 Subject: [PATCH] Update docs about MainActivity getPackages Summary: Didn't found someone that updated that, feel free to close if that is the case. Closes https://github.com/facebook/react-native/pull/5415 Reviewed By: svcscm Differential Revision: D2841576 Pulled By: androidtrunkagent fb-gh-sync-id: 99b37fcb370453ce71fa83434f7c72b598375ef0 --- docs/NativeModulesAndroid.md | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/docs/NativeModulesAndroid.md b/docs/NativeModulesAndroid.md index 2bf46cc5cd53d0..4d8ea217fbc2a5 100644 --- a/docs/NativeModulesAndroid.md +++ b/docs/NativeModulesAndroid.md @@ -108,20 +108,14 @@ class AnExampleReactPackage implements ReactPackage { } ``` -The package needs to be provided to the **ReactInstanceManager** when it is built. To accomplish this you will need to insert an `.addPackage(new YourPackageName())` call to the `mReactInstanceManager = ReactInstanceManager.builder()` call chain. - -Refer to the code below and add the `addPackage` statement to your application's `MainActivity.java` file. This file exists under the android folder in your react-native application directory. The path to this file is: `android/app/src/main/java/com/your-app-name/MainActivity.java`. - +The package needs to be provided in the `getPackages` method of the `MainActivity.java` file. This file exists under the android folder in your react-native application directory. The path to this file is: `android/app/src/main/java/com/your-app-name/MainActivity.java`. ```java -mReactInstanceManager = ReactInstanceManager.builder() - .setApplication(getApplication()) - .setBundleAssetName("AnExampleApp.android.bundle") - .setJSMainModuleName("Examples/AnExampleApp/AnExampleApp.android") - .addPackage(new AnExampleReactPackage()) // <-- Add this line with your package name. - .setUseDeveloperSupport(true) - .setInitialLifecycleState(LifecycleState.RESUMED) - .build(); +protected List getPackages() { + return Arrays.asList( + new MainReactPackage(), + new AnExampleReactPackage()); // <-- Add this line with your package name. +} ``` To make it simpler to access your new functionality from JavaScript, it is common to wrap the native module in a JavaScript module. This is not necessary but saves the consumers of your library the need to pull it off of `NativeModules` each time. This JavaScript file also becomes a good location for you to add any JavaScript side functionality.