Advertisement
Guest User

Untitled

a guest
Apr 20th, 2017
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.02 KB | None | 0 0
  1. private AppSingleton(Context context) {
  2. mContext = context;
  3. mRequestQueue = getRequestQueue();
  4. }
  5.  
  6. public static synchronized AppSingleton getInstance(Context context) {
  7. if (mAppSingletonInstance == null) {
  8. mAppSingletonInstance = new AppSingleton(context);
  9. }
  10. return mAppSingletonInstance;
  11. }
  12.  
  13. public RequestQueue getRequestQueue() {
  14. if (mRequestQueue == null) {
  15. // getApplicationContext() is key, it keeps you from leaking the
  16. // Activity or BroadcastReceiver if someone passes one in.
  17. mRequestQueue = Volley.newRequestQueue(mContext.getApplicationContext());
  18. }
  19. return mRequestQueue;
  20. }
  21.  
  22. public <T> void addToRequestQueue(Request<T> req,String tag) {
  23. req.setTag(tag);
  24. getRequestQueue().add(req);
  25. }
  26.  
  27. private static final String TAG = "RegisterActivity";
  28. private static final String URL_FOR_REGISTRATION = "http://192.168.0.110/android_login_example/register.php";
  29. ProgressDialog progressDialog;
  30.  
  31. private EditText signupInputName, signupInputEmail, signupInputPassword, signupInputAge;
  32. private Button btnSignUp;
  33. private Button btnLinkLogin;
  34. private RadioGroup genderRadioGroup;
  35.  
  36. @Override
  37. protected void onCreate(Bundle savedInstanceState) {
  38. super.onCreate(savedInstanceState);
  39. setContentView(R.layout.activity_register);
  40.  
  41. // Progress dialog
  42. progressDialog = new ProgressDialog(this);
  43. progressDialog.setCancelable(false);
  44.  
  45. signupInputName = (EditText) findViewById(R.id.signup_input_name);
  46. signupInputEmail = (EditText) findViewById(R.id.signup_input_email);
  47. signupInputPassword = (EditText) findViewById(R.id.signup_input_password);
  48. signupInputAge = (EditText) findViewById(R.id.signup_input_age);
  49.  
  50. btnSignUp = (Button) findViewById(R.id.btn_signup);
  51. btnLinkLogin = (Button) findViewById(R.id.btn_link_login);
  52.  
  53. genderRadioGroup = (RadioGroup) findViewById(R.id.gender_radio_group);
  54. btnSignUp.setOnClickListener(new View.OnClickListener() {
  55. @Override
  56. public void onClick(View view) {
  57. submitForm();
  58. }
  59. });
  60. btnLinkLogin.setOnClickListener(new View.OnClickListener() {
  61. @Override
  62. public void onClick(View view) {
  63.  
  64. Intent i = new Intent(getApplicationContext(),LoginActivity.class);
  65. startActivity(i);
  66. }
  67. });
  68. }
  69.  
  70. private void submitForm() {
  71.  
  72. int selectedId = genderRadioGroup.getCheckedRadioButtonId();
  73. String gender;
  74. if(selectedId == R.id.female_radio_btn)
  75. gender = "Female";
  76. else
  77. gender = "Male";
  78.  
  79. registerUser(signupInputName.getText().toString(),
  80. signupInputEmail.getText().toString(),
  81. signupInputPassword.getText().toString(),
  82. gender,
  83. signupInputAge.getText().toString());
  84. }
  85.  
  86. private void registerUser(final String name, final String email, final String password,
  87. final String gender, final String dob) {
  88. // Tag used to cancel the request
  89. String cancel_req_tag = "register";
  90.  
  91. progressDialog.setMessage("Adding you ...");
  92. showDialog();
  93.  
  94. StringRequest strReq = new StringRequest(Request.Method.POST,
  95. URL_FOR_REGISTRATION, new Response.Listener<String>() {
  96.  
  97. @Override
  98. public void onResponse(String response) {
  99. Log.d(TAG, "Register Response: " + response.toString());
  100. hideDialog();
  101.  
  102. try {
  103. JSONObject jObj = new JSONObject(response);
  104. boolean error = jObj.getBoolean("error");
  105.  
  106. if (!error) {
  107. String user = jObj.getJSONObject("user").getString("name");
  108. Toast.makeText(getApplicationContext(), "Hi " + user +", You are successfully Added!", Toast.LENGTH_SHORT).show();
  109.  
  110. // Launch login activity
  111. Intent intent = new Intent(
  112. RegisterActivity.this,
  113. LoginActivity.class);
  114. startActivity(intent);
  115. finish();
  116. } else {
  117.  
  118. String errorMsg = jObj.getString("error_msg");
  119. Toast.makeText(getApplicationContext(),
  120. errorMsg, Toast.LENGTH_LONG).show();
  121. }
  122. } catch (JSONException e) {
  123. e.printStackTrace();
  124. }
  125.  
  126. }
  127. }, new Response.ErrorListener() {
  128.  
  129. @Override
  130. public void onErrorResponse(VolleyError error) {
  131. Log.e(TAG, "Registration Error: " + error.getMessage());
  132. Toast.makeText(getApplicationContext(),
  133. error.getMessage(), Toast.LENGTH_LONG).show();
  134. hideDialog();
  135. }
  136. }) {
  137. @Override
  138. protected Map<String, String> getParams() {
  139. // Posting params to register url
  140. Map<String, String> params = new HashMap<String, String>();
  141. params.put("name", name);
  142. params.put("email", email);
  143. params.put("password", password);
  144. params.put("gender", gender);
  145. params.put("age", dob);
  146. return params;
  147. }
  148. };
  149. // Adding request to request queue
  150. AppSingleton.getInstance(getApplicationContext()).addToRequestQueue(strReq, cancel_req_tag);
  151. }
  152.  
  153. private void showDialog() {
  154. if (!progressDialog.isShowing())
  155. progressDialog.show();
  156. }
  157.  
  158. private void hideDialog() {
  159. if (progressDialog.isShowing())
  160. progressDialog.dismiss();
  161. }
  162.  
  163. private static final String TAG = "LoginActivity";
  164. private static final String URL_FOR_LOGIN = "http://192.168.0.110/android_login_example/login.php";
  165. ProgressDialog progressDialog;
  166. private EditText loginInputEmail, loginInputPassword;
  167. private Button btnlogin;
  168. private Button btnLinkSignup;
  169.  
  170. @Override
  171. protected void onCreate(Bundle savedInstanceState) {
  172. super.onCreate(savedInstanceState);
  173. setContentView(R.layout.activity_login);
  174. loginInputEmail = (EditText) findViewById(R.id.login_input_email);
  175. loginInputPassword = (EditText) findViewById(R.id.login_input_password);
  176. btnlogin = (Button) findViewById(R.id.btn_login);
  177. btnLinkSignup = (Button) findViewById(R.id.btn_link_signup);
  178. // Progress dialog
  179. progressDialog = new ProgressDialog(this);
  180. progressDialog.setCancelable(false);
  181.  
  182. btnlogin.setOnClickListener(new View.OnClickListener() {
  183. @Override
  184. public void onClick(View view) {
  185. loginUser(loginInputEmail.getText().toString(), loginInputPassword.getText().toString());
  186. }
  187. });
  188.  
  189. btnLinkSignup.setOnClickListener(new View.OnClickListener() {
  190. @Override
  191. public void onClick(View view) {
  192. Intent i = new Intent(getApplicationContext(), RegisterActivity.class);
  193. startActivity(i);
  194. }
  195. });
  196. }
  197.  
  198. private void loginUser( final String email, final String password) {
  199. // Tag used to cancel the request
  200. String cancel_req_tag = "login";
  201. progressDialog.setMessage("Logging you in...");
  202. showDialog();
  203. StringRequest strReq = new StringRequest(Request.Method.POST,
  204. URL_FOR_LOGIN, new Response.Listener<String>() {
  205.  
  206. @Override
  207. public void onResponse(String response) {
  208. Log.d(TAG, "Register Response: " + response.toString());
  209. hideDialog();
  210. try {
  211. JSONObject jObj = new JSONObject(response);
  212. boolean error = jObj.getBoolean("error");
  213.  
  214. if (!error) {
  215. String user = jObj.getJSONObject("user").getString("name");
  216. // Launch User activity
  217. Intent intent = new Intent(
  218. LoginActivity.this,
  219. UserActivity.class);
  220. intent.putExtra("username", user);
  221. startActivity(intent);
  222. finish();
  223. } else {
  224.  
  225. String errorMsg = jObj.getString("error_msg");
  226. Toast.makeText(getApplicationContext(),
  227. errorMsg, Toast.LENGTH_LONG).show();
  228. }
  229. } catch (JSONException e) {
  230. e.printStackTrace();
  231. }
  232.  
  233. }
  234. }, new Response.ErrorListener() {
  235.  
  236. @Override
  237. public void onErrorResponse(VolleyError error) {
  238. Log.e(TAG, "Login Error: " + error.getMessage());
  239. Toast.makeText(getApplicationContext(),
  240. error.getMessage(), Toast.LENGTH_LONG).show();
  241. hideDialog();
  242. }
  243. }) {
  244.  
  245. @Override
  246. protected Map<String, String> getParams() {
  247. // Posting params to login url
  248. Map<String, String> params = new HashMap<String, String>();
  249. params.put("email", email);
  250. params.put("password", password);
  251. return params;
  252. }
  253.  
  254. };
  255. // Adding request to request queue
  256. AppSingleton.getInstance(getApplicationContext()).addToRequestQueue(strReq,cancel_req_tag);
  257. }
  258.  
  259. private void showDialog() {
  260. if (!progressDialog.isShowing())
  261. progressDialog.show();
  262. }
  263. private void hideDialog() {
  264. if (progressDialog.isShowing())
  265. progressDialog.dismiss();
  266. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement