Skip to content

Commit 34e1cf2

Browse files
authored
Merge pull request #5 from sahir/SS_Native
Ss native
2 parents ba66198 + a781fd4 commit 34e1cf2

File tree

9 files changed

+143
-155
lines changed

9 files changed

+143
-155
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,4 @@ npm-debug.log
3838

3939
# RN
4040
/release
41-
/logs
41+
/logs

app/src/main/AndroidManifest.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@
1414
>
1515
<activity
1616
android:theme="@style/Theme.AppCompat.Light.NoActionBar"
17-
android:name=".MainPunchh">
17+
android:name=".MainActivity">
1818
<intent-filter>
1919
<action android:name="android.intent.action.MAIN"/>
2020

2121
<category android:name="android.intent.category.LAUNCHER"/>
2222
</intent-filter>
2323
</activity>
2424

25-
<activity android:name=".MainActivity"></activity>
25+
<activity android:name=".MainReactActivity"></activity>
2626
<activity android:name="com.facebook.react.devsupport.DevSettingsActivity" />
2727

2828
</application>

app/src/main/java/com/dove/flyer/demo2/AnExampleReactPackage.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public class AnExampleReactPackage implements ReactPackage {
1919
@Override
2020
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext) {
2121
List<NativeModule> modules = new ArrayList<>();
22-
modules.add(new ToastPunchh(reactContext));
22+
modules.add(new ToastCustomModule(reactContext));
2323
return modules;
2424
}
2525

Lines changed: 16 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -1,91 +1,28 @@
11
package com.dove.flyer.demo2;
22

33
import android.app.Activity;
4+
import android.content.Intent;
45
import android.os.Bundle;
5-
import android.util.Log;
6-
import android.view.KeyEvent;
7-
import android.widget.Toast;
6+
import android.view.View;
7+
import android.widget.Button;
88

9-
import com.facebook.react.LifecycleState;
10-
import com.facebook.react.ReactActivity;
11-
import com.facebook.react.ReactInstanceManager;
12-
import com.facebook.react.ReactRootView;
13-
import com.facebook.react.bridge.Arguments;
14-
import com.facebook.react.bridge.ReactContext;
15-
import com.facebook.react.bridge.ReactMethod;
16-
import com.facebook.react.bridge.WritableMap;
17-
import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler;
18-
import com.facebook.react.shell.MainReactPackage;
19-
import com.facebook.react.uimanager.events.RCTEventEmitter;
9+
/**
10+
* Created by punchh_sahir on 30/12/16.
11+
*/
2012

21-
import static java.security.AccessController.getContext;
22-
23-
24-
public class MainActivity extends ReactActivity implements DefaultHardwareBackBtnHandler {
25-
private ReactRootView mReactRootView;
26-
private ReactInstanceManager mReactInstanceManager;
13+
public class MainActivity extends Activity{
2714

2815
@Override
2916
protected void onCreate(Bundle savedInstanceState) {
3017
super.onCreate(savedInstanceState);
31-
32-
mReactRootView = new ReactRootView(this);
33-
mReactInstanceManager = ReactInstanceManager.builder()
34-
.setApplication(getApplication())
35-
.setBundleAssetName("index.android.bundle")
36-
.setJSMainModuleName("index.android")
37-
.addPackage(new MainReactPackage())
38-
.setUseDeveloperSupport(BuildConfig.DEBUG)
39-
.setInitialLifecycleState(LifecycleState.RESUMED)
40-
.setCurrentActivity(MainActivity.this)
41-
42-
//.setUseOldBridge(true) // uncomment this line if your app crashes
43-
.build();
44-
mReactRootView.startReactApplication(mReactInstanceManager, "HelloWorld", null);
45-
46-
setContentView(mReactRootView);
47-
}
48-
49-
@Override
50-
public void invokeDefaultOnBackPressed() {
51-
super.onBackPressed();
52-
}
53-
54-
@Override
55-
public void onBackPressed() {
56-
if (mReactInstanceManager != null) {
57-
mReactInstanceManager.onBackPressed();
58-
Log.e("mReactInstanceManager", "Line 45");
59-
} else {
60-
super.onBackPressed();
61-
}
62-
}
63-
64-
@Override
65-
public boolean onKeyUp(int keyCode, KeyEvent event) {
66-
if (keyCode == KeyEvent.KEYCODE_MENU && mReactInstanceManager != null) {
67-
mReactInstanceManager.showDevOptionsDialog();
68-
return true;
69-
}
70-
return super.onKeyUp(keyCode, event);
71-
}
72-
73-
/* public void senDataToReactNative() {
74-
try {
75-
WritableMap event = Arguments.createMap();
76-
event.putString("message", "MyMessage");
77-
//event.putArray();
78-
//ReactContext reactContext = (ReactContext) getContext();
79-
//reactContext.getJSModule(RCTEventEmitter.class).receiveEvent(getId("topChange", event);
80-
81-
} catch (Exception ex) {
82-
83-
}
84-
}*/
85-
86-
public void myMethod(String message) {
87-
// Here we show a toast message
88-
Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
89-
Log.e("sahir","sahir");
18+
setContentView(R.layout.activity_punchh_main);
19+
Button btnStart = (Button) findViewById(R.id.button);
20+
21+
btnStart.setOnClickListener(new View.OnClickListener() {
22+
@Override
23+
public void onClick(View v) {
24+
startActivity(new Intent(MainActivity.this,MainReactActivity.class));
25+
}
26+
});
9027
}
9128
}

app/src/main/java/com/dove/flyer/demo2/MainPunchh.java

Lines changed: 0 additions & 29 deletions
This file was deleted.
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
package com.dove.flyer.demo2;
2+
3+
import android.os.Bundle;
4+
import android.util.Log;
5+
import android.view.KeyEvent;
6+
import android.widget.Toast;
7+
8+
import com.facebook.react.LifecycleState;
9+
import com.facebook.react.ReactActivity;
10+
import com.facebook.react.ReactInstanceManager;
11+
import com.facebook.react.ReactRootView;
12+
import com.facebook.react.bridge.Arguments;
13+
import com.facebook.react.bridge.WritableMap;
14+
import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler;
15+
import com.facebook.react.shell.MainReactPackage;
16+
17+
18+
public class MainReactActivity extends ReactActivity implements DefaultHardwareBackBtnHandler {
19+
private ReactRootView mReactRootView;
20+
private ReactInstanceManager mReactInstanceManager;
21+
22+
@Override
23+
protected void onCreate(Bundle savedInstanceState) {
24+
super.onCreate(savedInstanceState);
25+
26+
mReactRootView = new ReactRootView(this);
27+
mReactInstanceManager = ReactInstanceManager.builder()
28+
.setApplication(getApplication())
29+
.setBundleAssetName("index.android.bundle")
30+
.setJSMainModuleName("index.android")
31+
.addPackage(new MainReactPackage())
32+
.setUseDeveloperSupport(BuildConfig.DEBUG)
33+
.setInitialLifecycleState(LifecycleState.RESUMED)
34+
.setCurrentActivity(MainReactActivity.this)
35+
.build();
36+
mReactRootView.startReactApplication(mReactInstanceManager, "HelloWorld", null);
37+
38+
setContentView(mReactRootView);
39+
}
40+
41+
@Override
42+
public void invokeDefaultOnBackPressed() {
43+
super.onBackPressed();
44+
}
45+
46+
@Override
47+
public void onBackPressed() {
48+
if (mReactInstanceManager != null) {
49+
mReactInstanceManager.onBackPressed();
50+
Log.e("mReactInstanceManager", "Line 45");
51+
} else {
52+
super.onBackPressed();
53+
}
54+
}
55+
56+
@Override
57+
public boolean onKeyUp(int keyCode, KeyEvent event) {
58+
if (keyCode == KeyEvent.KEYCODE_MENU && mReactInstanceManager != null) {
59+
mReactInstanceManager.showDevOptionsDialog();
60+
return true;
61+
}
62+
return super.onKeyUp(keyCode, event);
63+
}
64+
65+
public void senDataToReactNative() {
66+
try {
67+
WritableMap event = Arguments.createMap();
68+
event.putString("message", "MyMessage");
69+
//event.putArray();
70+
//ReactContext reactContext = (ReactContext) getContext();
71+
//reactContext.getJSModule(RCTEventEmitter.class).receiveEvent(getId("topChange", event);
72+
73+
} catch (Exception ex) {
74+
75+
}
76+
}
77+
78+
public void myMethod(String message) {
79+
// Here we show a toast message
80+
Toast.makeText(this, message, Toast.LENGTH_SHORT).show();
81+
Log.e("sahir","sahir");
82+
}
83+
}
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
package com.dove.flyer.demo2;
2+
3+
import android.widget.Toast;
4+
5+
import com.facebook.react.bridge.ReactApplicationContext;
6+
import com.facebook.react.bridge.ReactContextBaseJavaModule;
7+
import com.facebook.react.bridge.ReactMethod;
8+
9+
/**
10+
* Created by punchh_sahir on 14/01/17.
11+
*/
12+
13+
public class ToastCustomModule extends ReactContextBaseJavaModule {
14+
15+
public ToastCustomModule(ReactApplicationContext reactContext) {
16+
super(reactContext);
17+
}
18+
19+
@Override
20+
public String getName() {
21+
return "CustomToast";
22+
}
23+
24+
@ReactMethod
25+
public void showMessage(String message) {
26+
finish();
27+
Toast.makeText(getReactApplicationContext(), message, Toast.LENGTH_LONG).show();
28+
}
29+
30+
public void finish() {
31+
MainReactActivity activity = (MainReactActivity) getCurrentActivity();
32+
if (activity != null) {
33+
activity.myMethod("message");
34+
}
35+
}
36+
37+
38+
}

app/src/main/java/com/dove/flyer/demo2/ToastPunchh.java

Lines changed: 0 additions & 41 deletions
This file was deleted.

index.android.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import {
99
NativeModules
1010
} from 'react-native';
1111

12-
var RCTToastAndroid = NativeModules.ToastAndroid;
12+
var RCTToastAndroid = NativeModules.CustomToast;
1313

1414
class HelloWorld extends React.Component {
1515

@@ -27,7 +27,7 @@ class HelloWorld extends React.Component {
2727
// var RCTToastAndroid = require('NativeModules').ToastPunchh
2828
// RCTToastAndroid.showMessage();
2929
// debugger;
30-
RCTToastAndroid.show('Awesome', ToastAndroid.SHORT);
30+
RCTToastAndroid.show('Awesome');
3131

3232
}
3333

0 commit comments

Comments
 (0)