Explorar el Código

Initial commit for PlatformSpecific.android.js

This class handles all Android specific logic. Currently only startTabBasedApp is implemented,
but in the future all interactions with the UI will go here.
Guy Carmeli hace 9 años
padre
commit
e7f24f174b
Se han modificado 2 ficheros con 36 adiciones y 4 borrados
  1. 7
    4
      src/Navigation.js
  2. 29
    0
      src/platformSpecific.android.js

+ 7
- 4
src/Navigation.js Ver fichero

@@ -10,8 +10,11 @@ function registerScreen(screenID, generator) {
10 10
 }
11 11
 
12 12
 function registerComponent(screenID, generator, store = undefined, Provider = undefined) {
13
-  if (store && Provider) return _registerComponentRedux(screenID, generator, store, Provider);
14
-  else return _registerComponentNoRedux(screenID, generator);
13
+  if (store && Provider) {
14
+    return _registerComponentRedux(screenID, generator, store, Provider);
15
+  } else {
16
+    return _registerComponentNoRedux(screenID, generator);
17
+  }
15 18
 }
16 19
 
17 20
 function _registerComponentNoRedux(screenID, generator) {
@@ -26,7 +29,7 @@ function _registerComponentNoRedux(screenID, generator) {
26 29
         );
27 30
       }
28 31
     };
29
-  }
32
+  };
30 33
   registerScreen(screenID, generatorWrapper);
31 34
   return generatorWrapper;
32 35
 }
@@ -45,7 +48,7 @@ function _registerComponentRedux(screenID, generator, store, Provider) {
45 48
         );
46 49
       }
47 50
     };
48
-  }
51
+  };
49 52
   registerScreen(screenID, generatorWrapper);
50 53
   return generatorWrapper;
51 54
 }

+ 29
- 0
src/platformSpecific.android.js Ver fichero

@@ -0,0 +1,29 @@
1
+import Navigation from './Navigation';
2
+
3
+import {
4
+  RctActivity
5
+} from 'react-native-controllers';
6
+
7
+function startSingleScreenApp(params) {
8
+  const screen = params.screen;
9
+  if (!screen.screen) {
10
+    console.error('startSingleScreenApp(params): screen must include a screen property');
11
+    return;
12
+  }
13
+
14
+  console.warn('startSingleScreenApp not implemented yet');
15
+}
16
+
17
+function startTabBasedApp(params) {
18
+  if (!params.tabs) {
19
+    console.error('startTabBasedApp(params): params.tabs is required');
20
+    return;
21
+  }
22
+
23
+  RctActivity.startTabBasedApp(params.tabs);
24
+}
25
+
26
+export default {
27
+  startSingleScreenApp,
28
+  startTabBasedApp
29
+}