Facebook
From anonim, 4 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 203
  1. package com.pkl.aplikasilogin;
  2.  
  3. import android.content.Context;
  4. import android.content.Intent;
  5. import android.content.SharedPreferences;
  6. import android.os.Bundle;
  7. import android.view.View;
  8. import android.view.WindowManager;
  9. import android.widget.Button;
  10. import android.widget.EditText;
  11. import android.widget.TextView;
  12. import android.widget.Toast;
  13.  
  14. import androidx.appcompat.app.AppCompatActivity;
  15.  
  16. import com.google.gson.Gson;
  17. import com.google.gson.GsonBuilder;
  18. import com.google.gson.reflect.TypeToken;
  19. import com.pkl.aplikasilogin._api.ApiServices;
  20. import com.pkl.aplikasilogin._api.ApiUrl;
  21. import com.pkl.aplikasilogin._modul.ItemUser;
  22. import com.pkl.aplikasilogin._modul.ResponseApiModul;
  23. import com.pkl.aplikasilogin._util.SessionManager;
  24.  
  25. import java.lang.reflect.Type;
  26. import java.nio.IntBuffer;
  27. import java.util.BitSet;
  28. import java.util.Collection;
  29. import java.util.List;
  30.  
  31. import retrofit2.Call;
  32. import retrofit2.Callback;
  33. import retrofit2.Response;
  34. import retrofit2.Retrofit;
  35. import retrofit2.converter.gson.GsonConverterFactory;
  36.  
  37. public class LoginActivity extends AppCompatActivity {
  38.  
  39.     private EditText edUsername, edPassword;
  40.     private TextView name, email, phone, gender, date;
  41.     SessionManager sessionManager;
  42.  
  43.     @Override
  44.     protected void onCreate(Bundle savedInstanceState){
  45. //        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
  46. //                    WindowManager.LayoutParams.FLAG_FULLSCREEN);
  47.         super.onCreate(savedInstanceState);
  48.         setContentView(R.layout.activity_login);
  49.  
  50.         sessionManager = new SessionManager(this);
  51.         edUsername = (EditText) findViewById(R.id.username);
  52.         edPassword = (EditText) findViewById(R.id.password);
  53.         Button btnLogin = (Button) findViewById(R.id.btn_login);
  54.  
  55.         btnLogin.setOnClickListener(new View.OnClickListener() {
  56.             @Override
  57.             public void onClick(View v) {
  58.  
  59.             String username  = String.valueOf(edUsername.getText());
  60.             String password = String.valueOf(edPassword.getText());
  61.             name = findViewById(R.id.txtUsername);
  62.             email = findViewById(R.id.txtEmail);
  63.             phone = findViewById(R.id.txtPhone);
  64.             gender = findViewById(R.id.txtGender);
  65.             date = findViewById(R.id.txtDate);
  66.  
  67.  
  68.             if (username.equals("")){
  69.                 edUsername.setError("Harap diisi");
  70.             } else if (password.equals("")){
  71.                 edPassword.setError("Harap diisi");
  72.             } else {
  73.                 sendTokenToServer(username, password);
  74.             }
  75.             }
  76.         });
  77.     }
  78.  
  79.     public void sendTokenToServer (String username, String password){
  80.  
  81.         Gson gson = new GsonBuilder()
  82.                 .setLenient()
  83.                 .create();
  84.  
  85.         Retrofit retrofit = new Retrofit.Builder()
  86.                 .baseUrl(ApiUrl.URL_HEAD)
  87.                 .addConverterFactory(GsonConverterFactory.create(gson))
  88.                 .build();
  89.  
  90.  
  91.         ApiServices services = retrofit.create(ApiServices.class);
  92.  
  93.        Call<ItemUser> call = services.Login(username, password);
  94.  
  95.             call.enqueue(new Callback<ItemUser>() {
  96.             @Override
  97.             public void onResponse(Call<ItemUser> call, Response<ItemUser> response) {
  98.  
  99.                 if (response.isSuccessful()){
  100.                     Boolean status = Boolean.valueOf(response.body().getStatus());
  101.  
  102.                     if (status){
  103.                         String message = response.body().getMessage();
  104.                         String username = response.body().getUsername();
  105.                         String name = response.body().getName();
  106.                         String email = response.body().getEmail();
  107.                         String phone = response.body().getNoHandphone();
  108.                         String gender = response.body().getJenisKelamin();
  109.                         String date = response.body().getDateOfBirthday();
  110.                         String id = response.body().getId();
  111.                         String token = response.body().getAuthentifikasi();
  112.  
  113.                         sessionManager.createSession(name, email, phone, gender, date, id);
  114.  
  115.  
  116.                         String error = "Sukses, "+message;
  117.                         Toast.makeText(LoginActivity.this, error, Toast.LENGTH_SHORT).show();
  118.  
  119.                         finish();
  120.                         Intent goMain = new Intent(LoginActivity.this, MainActivity.class);
  121.                         goMain.putExtra("username", username);
  122.                         goMain.putExtra("token", token);
  123.                         goMain.putExtra("name", name);
  124.                         goMain.putExtra("email", email);
  125.                         goMain.putExtra("phone", phone);
  126.                         goMain.putExtra("gender", gender);
  127.                         goMain.putExtra("date", date);
  128.  
  129.                         startActivity(goMain);
  130.                     } else {
  131.                         String message = response.body().getMessage();
  132.  
  133.                         String error = "Gagal, "+message;
  134.                         Toast.makeText(LoginActivity.this, error, Toast.LENGTH_SHORT).show();
  135.                     }
  136.                 } else {
  137.                     String error = "Error Retrive Data From Server";
  138.                     Toast.makeText(LoginActivity.this, error, Toast.LENGTH_SHORT).show();
  139.                 }
  140.             }
  141.  
  142.             @Override
  143.             public void onFailure(Call<ItemUser> call, Throwable t) {
  144.                 Toast.makeText(LoginActivity.this, "Error Try "+t.getMessage(), Toast.LENGTH_SHORT).show();
  145.             }
  146.         });
  147.  
  148.     }
  149.  
  150. }
  151.