Advertisement
jamilchan

put spref (simpan data)

May 8th, 2018
143
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.12 KB | None | 0 0
  1. package com.blogspot.jonesjugangoding.presensidiginetmediav1.activity;
  2.  
  3. import android.app.ProgressDialog;
  4. import android.content.Context;
  5. import android.content.Intent;
  6. import android.content.SharedPreferences;
  7. import android.support.v7.app.AppCompatActivity;
  8. import android.os.Bundle;
  9. import android.view.View;
  10. import android.widget.Button;
  11. import android.widget.EditText;
  12. import android.widget.Toast;
  13.  
  14. import com.android.volley.AuthFailureError;
  15. import com.android.volley.Request;
  16. import com.android.volley.Response;
  17. import com.android.volley.VolleyError;
  18. import com.android.volley.toolbox.JsonObjectRequest;
  19. import com.blogspot.jonesjugangoding.presensidiginetmediav1.R;
  20. import com.blogspot.jonesjugangoding.presensidiginetmediav1.app.AppController;
  21. import com.blogspot.jonesjugangoding.presensidiginetmediav1.utils.Const;
  22. import com.blogspot.jonesjugangoding.presensidiginetmediav1.utils.ShowDialog;
  23.  
  24. import org.json.JSONException;
  25. import org.json.JSONObject;
  26.  
  27. import java.util.HashMap;
  28. import java.util.Map;
  29.  
  30. public class LoginActivity extends AppCompatActivity {
  31.  
  32.     private String tag_json_obj = "json_obj_req";
  33.     private EditText editTextUsername, editTextPassword;
  34.     private Button button_login;
  35.     private ProgressDialog progressDialog;
  36.     public void showProgressDialog() {
  37.         if (!progressDialog.isShowing()) {
  38.             progressDialog.show();
  39.         }
  40.     }
  41.  
  42.     public void hideProgressDialog() {
  43.         if (progressDialog.isShowing()) {
  44.             progressDialog.hide();
  45.         }
  46.     }
  47.  
  48.     @Override
  49.     protected void onCreate(Bundle savedInstanceState) {
  50.         super.onCreate(savedInstanceState);
  51.         setContentView(R.layout.activity_login);
  52.  
  53.         editTextUsername = (EditText) findViewById(R.id.edit_text_username);
  54.         editTextPassword = (EditText) findViewById(R.id.edit_text_password);
  55.         button_login = (Button) findViewById(R.id.login_button);
  56.         progressDialog = new ProgressDialog(this);
  57.         progressDialog.setMessage("Loading...");
  58.         progressDialog.setCancelable(false);
  59.  
  60.         button_login.setOnClickListener(new View.OnClickListener() {
  61.             @Override
  62.             public void onClick(View v) {
  63.                 makeLoginRequest();
  64.             }
  65.         });
  66.     }
  67.  
  68.     private void makeLoginRequest() {
  69.         showProgressDialog();
  70.  
  71.         Map<String, String> loginParams = new HashMap<String, String>();
  72.         loginParams.put("username", editTextUsername.getText().toString());
  73.         loginParams.put("password", editTextPassword.getText().toString());
  74.  
  75.         JsonObjectRequest loginRequest = new JsonObjectRequest(Request.Method.POST,
  76.                 Const.URL_LOGIN, new JSONObject(loginParams),
  77.                 new Response.Listener<JSONObject>() {
  78.                     @Override
  79.                     public void onResponse(JSONObject response) {
  80.                         SharedPreferences sharedPref = getSharedPreferences("userInfo", Context.MODE_PRIVATE);
  81.                         try {
  82.                             JSONObject user_data = response.getJSONObject("data");
  83.                             JSONObject meta = response.getJSONObject("meta");
  84.  
  85.                             SharedPreferences.Editor editor = sharedPref.edit();
  86.                             editor.putString("status", user_data.getString("status"));
  87.                             editor.putString("error", user_data.getString("error"));
  88.                             editor.putString("user_id", user_data.getString("user_id"));
  89.                             editor.putString("pegawai_id", user_data.getString("pegawai_id"));
  90.                             editor.putString("divisi_id", user_data.getString("divisi_id"));
  91.                             editor.putString("api_token", meta.getString("api_token"));
  92.                             editor.putString("jabatan_id", user_data.getString("jabatan_id"));
  93.                             editor.apply();
  94.  
  95.                             hideProgressDialog();
  96.  
  97.                             Toast.makeText(getApplicationContext(), user_data.getString("error"),
  98.                                     Toast.LENGTH_SHORT).show();
  99.                             Intent intent = new Intent(LoginActivity.this, MainActivity.class);
  100.                             startActivity(intent);
  101.                         } catch (JSONException e) {
  102.  
  103.                         }
  104.                     }
  105.                 },
  106.                 new Response.ErrorListener() {
  107.                     @Override
  108.                     public void onErrorResponse(VolleyError error) {
  109.                         Toast.makeText(getApplicationContext(), "Login Gagal", Toast.LENGTH_SHORT).show();
  110.                         hideProgressDialog();
  111.                     }
  112.                 }) {
  113.             @Override
  114.             public Map<String, String> getHeaders() throws AuthFailureError {
  115.                 HashMap<String, String> headers = new HashMap<String, String>();
  116.                 headers.put("Content-Type", "application/json");
  117.  
  118.                 return headers;
  119.             }
  120.         };
  121.  
  122.         AppController.getInstance().addToRequestQueue(loginRequest, tag_json_obj);
  123.     }
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement