Browse Source

moduleNAME?

Daniel Zlotin 8 years ago
parent
commit
0e5b676bdd

+ 25
- 1
android/app/src/main/java/com/reactnativenavigation/NavigationApplication.java View File

@@ -2,6 +2,7 @@ package com.reactnativenavigation;
2 2
 
3 3
 import android.app.Application;
4 4
 import android.os.Handler;
5
+import android.support.annotation.NonNull;
5 6
 
6 7
 import com.facebook.react.ReactPackage;
7 8
 import com.facebook.react.shell.MainReactPackage;
@@ -39,11 +40,34 @@ public abstract class NavigationApplication extends Application implements Navig
39 40
         List<ReactPackage> list = Arrays.asList(
40 41
                 new MainReactPackage(),
41 42
                 new NavigationReactPackage());
42
-        list.addAll(createAdditionalReactPackages());
43
+        addAdditionalReactPackagesIfNeeded(list);
43 44
         return list;
44 45
     }
45 46
 
47
+    private void addAdditionalReactPackagesIfNeeded(List<ReactPackage> list) {
48
+        List<ReactPackage> additionalReactPackages = createAdditionalReactPackages();
49
+
50
+        for (ReactPackage reactPackage : additionalReactPackages) {
51
+            if (reactPackage instanceof MainReactPackage)
52
+                throw new RuntimeException("Do not create a new MainReactPackage. This is created for you.");
53
+            if (reactPackage instanceof NavigationReactPackage)
54
+                throw new RuntimeException("Do not create a new NavigationReactPackage. This is created for you.");
55
+        }
56
+
57
+        list.addAll(additionalReactPackages);
58
+    }
59
+
60
+    public String getJsEntryFileName() {
61
+        return "index.android";
62
+    }
63
+
64
+    public String getBundleAssetName() {
65
+        return "index.android.bundle";
66
+    }
67
+
46 68
     public abstract boolean isDebug();
47 69
 
70
+    @NonNull
48 71
     public abstract List<ReactPackage> createAdditionalReactPackages();
72
+
49 73
 }

+ 0
- 1
android/app/src/main/java/com/reactnativenavigation/layouts/ScreenLayout.java View File

@@ -64,7 +64,6 @@ public class ScreenLayout extends LinearLayout implements ScrollDirectionListene
64 64
         setNavigationBarColor(styleParams.navigationBarColor);
65 65
         topBar.setTitleBarVisibility(styleParams.titleBarHidden);
66 66
         topBar.setVisibility(styleParams.topBarHidden ? GONE : VISIBLE);
67
-
68 67
     }
69 68
 
70 69
     @TargetApi(Build.VERSION_CODES.LOLLIPOP)

+ 2
- 2
android/app/src/main/java/com/reactnativenavigation/react/NavigationReactInstance.java View File

@@ -88,8 +88,8 @@ public class NavigationReactInstance {
88 88
     private ReactInstanceManager createReactInstanceManager(final ReactContextCreator reactContextCreator) {
89 89
         ReactInstanceManager.Builder builder = ReactInstanceManager.builder()
90 90
                 .setApplication(NavigationApplication.instance)
91
-                .setJSMainModuleName("index.android")
92
-                .setBundleAssetName("index.android.bundle")
91
+                .setJSMainModuleName(NavigationApplication.instance.getJsEntryFileName())
92
+                .setBundleAssetName(NavigationApplication.instance.getBundleAssetName())
93 93
                 .setUseDeveloperSupport(NavigationApplication.instance.isDebug())
94 94
                 .setInitialLifecycleState(LifecycleState.BEFORE_RESUME);
95 95
 

+ 3
- 1
android/app/src/main/java/com/reactnativenavigation/views/ContentView.java View File

@@ -4,6 +4,7 @@ import android.content.Context;
4 4
 import android.os.Bundle;
5 5
 import android.view.ViewGroup;
6 6
 
7
+import com.facebook.react.ReactInstanceManager;
7 8
 import com.facebook.react.ReactRootView;
8 9
 import com.reactnativenavigation.NavigationApplication;
9 10
 import com.reactnativenavigation.react.ReactViewHacks;
@@ -22,7 +23,8 @@ public class ContentView extends ReactRootView {
22 23
     }
23 24
 
24 25
     public void init() {
25
-        startReactApplication(NavigationApplication.instance.getNavigationReactInstance().getReactInstanceManager(), screenId, passProps);
26
+        ReactInstanceManager react = NavigationApplication.instance.getNavigationReactInstance().getReactInstanceManager();
27
+        startReactApplication(react, screenId, passProps);
26 28
         new ScrollViewAttacher(this, scrollListener).attach();
27 29
     }
28 30