Advertisement
Guest User

Untitled

a guest
May 27th, 2016
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.90 KB | None | 0 0
  1. package org.asperohgedgetws.a7.hgadgetws;
  2. import android.app.Activity;
  3. import android.app.Fragment;
  4. import android.os.Build;
  5. import android.os.Bundle;
  6. import android.util.Log;
  7. import android.view.LayoutInflater;
  8. import android.view.Menu;
  9. import android.view.MenuItem;
  10. import android.view.View;
  11. import android.view.ViewGroup;
  12. import android.widget.EditText;
  13. import android.widget.TextView;
  14. import org.java_websocket.client.WebSocketClient;
  15. import org.java_websocket.handshake.ServerHandshake;
  16. import java.net.URI;
  17. import java.net.URISyntaxException;
  18. import android.widget.Button;
  19. import android.widget.Toast;
  20. import android.content.Intent;
  21.  
  22. public class MainActivity extends Activity implements View.OnClickListener {
  23. Button bLogout;
  24. UserLocalStore userLocalStore;
  25. private WebSocketClient mWebSocketClient;
  26.  
  27. @Override
  28. protected void onCreate(Bundle savedInstanceState) {
  29. super.onCreate(savedInstanceState);
  30. setContentView(R.layout.activity_main);
  31. bLogout = (Button) findViewById(R.id.bLogout);
  32. bLogout.setOnClickListener(this);
  33. userLocalStore = new UserLocalStore(this);
  34. connectWebSocket();
  35. }
  36. @Override
  37. protected void onStart() {
  38. super.onStart();
  39. if (authenticate()== true){
  40. displayUserDetails();
  41. } else{
  42. Toast.makeText(getApplicationContext(), "Not Registered User :(", Toast.LENGTH_SHORT).show();
  43. startActivity(new Intent(MainActivity.this,Login.class));
  44. }
  45. }
  46.  
  47. private boolean authenticate(){
  48. return userLocalStore.getUserLoggedIn();
  49. }
  50.  
  51. private void displayUserDetails(){
  52. User user = userLocalStore.getLoggedInUser();
  53. }
  54.  
  55. @Override
  56. public void onClick(View v) {
  57. switch(v.getId()){
  58. case R.id.bLogout:
  59. startActivity(new Intent(this,Login.class));
  60. userLocalStore.clearUserData();
  61. userLocalStore.setUserLoggedIn(false);
  62. Toast.makeText(getApplicationContext(), "Logout :)", Toast.LENGTH_SHORT).show();
  63. break;
  64.  
  65. }
  66. }
  67.  
  68. private void connectWebSocket() {
  69. URI uri;
  70. try {
  71. uri = new URI("ws://107.170.106.72:8888");
  72. } catch (URISyntaxException e) {
  73. e.printStackTrace();
  74. return;
  75. }
  76.  
  77. mWebSocketClient = new WebSocketClient(uri) {
  78. @Override
  79. public void onOpen(ServerHandshake serverHandshake) {
  80. Log.i("Websocket", "Opened");
  81. //mWebSocketClient.send("Hello from " + Build.MANUFACTURER + " " + Build.MODEL);
  82. mWebSocketClient.send("{"1512BD002":"SO@0":"2"}");
  83. }
  84.  
  85. @Override
  86. public void onMessage(String s) {
  87. final String message = s;
  88. runOnUiThread(new Runnable() {
  89. @Override
  90. public void run() {
  91. //TextView textView = (TextView)findViewById(R.id.messages);
  92. //textView.setText(textView.getText() + "n" + message);
  93. }
  94. });
  95. }
  96.  
  97. @Override
  98. public void onClose(int i, String s, boolean b) {
  99. Log.i("Websocket", "Closed " + s);
  100. }
  101.  
  102. @Override
  103. public void onError(Exception e) {
  104. Log.i("Websocket", "Error " + e.getMessage());
  105. }
  106. };
  107. mWebSocketClient.connect();
  108. }
  109.  
  110. public void sendMessage(View view) {
  111. // EditText editText = (EditText)findViewById(R.id.message);
  112. // mWebSocketClient.send(editText.getText().toString());
  113. //editText.setText("");
  114. }
  115. }
  116.  
  117. package org.asperohgedgetws.a7.hgadgetws;
  118.  
  119. import android.content.Intent;
  120. import android.os.Bundle;
  121. import android.support.design.widget.FloatingActionButton;
  122. import android.support.design.widget.Snackbar;
  123. import android.support.v7.app.AppCompatActivity;
  124. import android.support.v7.widget.Toolbar;
  125. import android.view.View;
  126. import android.widget.Button;
  127. import android.widget.EditText;
  128. import android.widget.Toast;
  129.  
  130. import org.java_websocket.handshake.ServerHandshake;
  131. import org.json.JSONArray;
  132. import org.json.JSONException;
  133. import org.json.JSONObject;
  134.  
  135. import org.java_websocket.client.WebSocketClient;
  136.  
  137. public class Register extends AppCompatActivity implements View.OnClickListener {
  138.  
  139. Button bRegister;
  140. EditText etName, etAge, etUsername, etPassword;
  141. WebSocketClient nwebsocket;
  142.  
  143. @Override
  144. protected void onCreate(Bundle savedInstanceState) {
  145. super.onCreate(savedInstanceState);
  146. setContentView(R.layout.activity_register);
  147.  
  148. etName = (EditText) findViewById(R.id.etName);
  149. etAge = (EditText) findViewById(R.id.etAge);
  150. etUsername = (EditText) findViewById(R.id.etUsername);
  151. etPassword = (EditText) findViewById(R.id.etPassword);
  152. bRegister = (Button) findViewById(R.id.bRegister);
  153. bRegister.setOnClickListener(this);
  154. }
  155.  
  156. @Override
  157. public void onClick(View v) {
  158. switch (v.getId()) {
  159. case R.id.bRegister:
  160. // Toast.makeText(getApplicationContext(), "Register", Toast.LENGTH_SHORT).show();
  161.  
  162. String name = etName.getText().toString();
  163. int age = Integer.parseInt(etAge.getText().toString());
  164. String username = etUsername.getText().toString();
  165. String password = etPassword.getText().toString();
  166.  
  167. User user = new User(name, age, username, password);
  168. registerUser(user);
  169.  
  170. break;
  171. }
  172. }
  173.  
  174. private void registerUser(User user) {
  175. String strtosend = "";
  176. JSONObject object = new JSONObject();
  177. try {
  178. // Add the id to the json
  179. object.put("name", user.name);
  180. object.put("age", user.age);
  181. object.put("username", user.username);
  182. object.put("password", user.password);
  183. strtosend = object.toString();
  184.  
  185. } catch (JSONException e) {
  186. // Handle impossible error
  187. e.printStackTrace();
  188. }
  189. Toast.makeText(getApplicationContext(), strtosend, Toast.LENGTH_SHORT).show();
  190. nwebsocket.send("Hi!");
  191. Intent loginIntent = new Intent(Register.this, Login.class);
  192. startActivity(loginIntent);
  193. }
  194. }
  195.  
  196. 05-27 11:49:54.331 19459-19459/org.asperohgedgetws.a7.hgadgetws E/AndroidRuntime: FATAL EXCEPTION: main
  197. Process: org.asperohgedgetws.a7.hgadgetws, PID: 19459
  198. java.lang.NullPointerException: Attempt to invoke virtual method 'void org.java_websocket.client.WebSocketClient.send(java.lang.String)' on a null object reference
  199. at org.asperohgedgetws.a7.hgadgetws.Register.registerUser(Register.java:73)
  200. at org.asperohgedgetws.a7.hgadgetws.Register.onClick(Register.java:51)
  201. at android.view.View.performClick(View.java:4780)
  202. at android.view.View$PerformClick.run(View.java:19866)
  203. at android.os.Handler.handleCallback(Handler.java:739)
  204. at android.os.Handler.dispatchMessage(Handler.java:95)
  205. at android.os.Looper.loop(Looper.java:135)
  206. at android.app.ActivityThread.main(ActivityThread.java:5254)
  207. at java.lang.reflect.Method.invoke(Native Method)
  208. at java.lang.reflect.Method.invoke(Method.java:372)
  209. at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
  210. at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement