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
 
2
 
3
 import android.app.Application;
3
 import android.app.Application;
4
 import android.os.Handler;
4
 import android.os.Handler;
5
+import android.support.annotation.NonNull;
5
 
6
 
6
 import com.facebook.react.ReactPackage;
7
 import com.facebook.react.ReactPackage;
7
 import com.facebook.react.shell.MainReactPackage;
8
 import com.facebook.react.shell.MainReactPackage;
39
         List<ReactPackage> list = Arrays.asList(
40
         List<ReactPackage> list = Arrays.asList(
40
                 new MainReactPackage(),
41
                 new MainReactPackage(),
41
                 new NavigationReactPackage());
42
                 new NavigationReactPackage());
42
-        list.addAll(createAdditionalReactPackages());
43
+        addAdditionalReactPackagesIfNeeded(list);
43
         return list;
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
     public abstract boolean isDebug();
68
     public abstract boolean isDebug();
47
 
69
 
70
+    @NonNull
48
     public abstract List<ReactPackage> createAdditionalReactPackages();
71
     public abstract List<ReactPackage> createAdditionalReactPackages();
72
+
49
 }
73
 }

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

64
         setNavigationBarColor(styleParams.navigationBarColor);
64
         setNavigationBarColor(styleParams.navigationBarColor);
65
         topBar.setTitleBarVisibility(styleParams.titleBarHidden);
65
         topBar.setTitleBarVisibility(styleParams.titleBarHidden);
66
         topBar.setVisibility(styleParams.topBarHidden ? GONE : VISIBLE);
66
         topBar.setVisibility(styleParams.topBarHidden ? GONE : VISIBLE);
67
-
68
     }
67
     }
69
 
68
 
70
     @TargetApi(Build.VERSION_CODES.LOLLIPOP)
69
     @TargetApi(Build.VERSION_CODES.LOLLIPOP)

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

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

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

4
 import android.os.Bundle;
4
 import android.os.Bundle;
5
 import android.view.ViewGroup;
5
 import android.view.ViewGroup;
6
 
6
 
7
+import com.facebook.react.ReactInstanceManager;
7
 import com.facebook.react.ReactRootView;
8
 import com.facebook.react.ReactRootView;
8
 import com.reactnativenavigation.NavigationApplication;
9
 import com.reactnativenavigation.NavigationApplication;
9
 import com.reactnativenavigation.react.ReactViewHacks;
10
 import com.reactnativenavigation.react.ReactViewHacks;
22
     }
23
     }
23
 
24
 
24
     public void init() {
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
         new ScrollViewAttacher(this, scrollListener).attach();
28
         new ScrollViewAttacher(this, scrollListener).attach();
27
     }
29
     }
28
 
30