El patrón de contraseña para el dispositivo es una de las necesidades para mantener nuestro dispositivo privado y protegido. Hoy en día, en la mayoría de las aplicaciones, podemos ver esta contraseña aplicada en muchas aplicaciones, como fondos mutuos o aplicaciones del mercado de valores para mantener nuestros datos financieros privados. En este artículo, vamos a ver cómo implementar contraseñas de patrón en nuestra aplicación de Android. qué
Aplicaciones de Patrón Contraseña
- Úselo para proteger nuestros datos privados e información personal en una aplicación de Android.
- Se vuelve muy conveniente usar contraseñas de patrones en lugar de pines.
- Funciona como un bloqueo de aplicaciones para nuestra aplicación en nuestro dispositivo.
Atributos de la contraseña del patrón
Atributos | Descripción |
---|---|
diseño_ancho | Para mostrar el ancho de los puntos. |
disposición_altura | Para mostrar la altura de los puntos. |
CorrectStateColor | Para mostrar el color de los puntos. |
Implementación paso a paso
Paso 1: Crear un nuevo proyecto
Cómo crear/iniciar un nuevo proyecto en Android Studio Java
Paso 2: agregue la dependencia de la biblioteca Pattern Password en el archivo build.gradle
Luego navegue a los scripts de gradle y luego al nivel build.gradle (Módulo) . Agregue la siguiente línea en el archivo build.gradle en la sección de dependencias.
implementación ‘com.andrognito.patternlockview:patternlockview:1.0.0’
ahora haga clic en Sincronizar ahora sincronizará todos sus archivos en build.gradle().
Paso 3: crea una pantalla de carga en tu archivo activity_main.xml
Vaya a la aplicación > res > diseño para abrir el archivo activity_main.xml . A continuación se muestra el código para el archivo activity_main.xml .
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <!--Text view for giving loading--> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="Loading...." /> </RelativeLayout>
Paso 4: trabajar con el archivo MainActivity.java
Vaya al archivo MainActivity.java y consulte el siguiente código. A continuación se muestra el código del archivo MainActivity.java . Se agregan comentarios dentro del código para comprender el código con más detalle.
Java
import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.os.Handler; import androidx.appcompat.app.AppCompatActivity; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Handler handler = new Handler(); handler.postDelayed(new Runnable() { @Override public void run() { // loading is given SharedPreferences sharedPreferences = getSharedPreferences("PREFS", 0); String password = sharedPreferences.getString("password", "0"); if (password.equals("0")) { // Intent to navigate to Create Password Screen Intent intent = new Intent(getApplicationContext(), CreatePasswordActivity.class); startActivity(intent); finish(); } else { // Intent to navigate to Input Password Screen Intent intent = new Intent(getApplicationContext(), InputPasswordActivity.class); startActivity(intent); finish(); } } }, 2000); } }
Paso 5: cree una nueva actividad vacía y asígnele el nombre CreatePasswordActivity
Vaya a la aplicación > java > Nombre del paquete de su aplicación > haga clic con el botón derecho en > Nuevo > Actividad > Actividad vacía y nombre la actividad como CreatePasswordActivity .
Trabajar con el archivo activity_create_password.xml:
activity_create_password.xml activity_create_password.xml En este archivo, mostrará puntos para crear un patrón de contraseña como se indica a continuación.
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <!--Dots to create pattern pass word--> <com.andrognito.patternlockview.PatternLockView android:id="@+id/pattern_lock_view" android:layout_width="300dp" android:layout_height="300dp" android:layout_centerInParent="true" app:correctStateColor="@color/purple_200" app:normalStateColor="@color/purple_200" app:wrongStateColor="@color/teal_700" /> <!--Text View to display title--> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="10dp" android:text="Create Password" android:textSize="30dp" android:textStyle="bold" /> </RelativeLayout>
Trabajar con el archivo CreatePasswordActivity.java:
Vaya al archivo CreatePasswordActivity.java y consulte el siguiente código. A continuación se muestra el código para el archivo CreatePasswordActivity.java . Se agregan comentarios dentro del código para comprender el código con más detalle.
Java
import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import androidx.appcompat.app.AppCompatActivity; import com.andrognito.patternlockview.PatternLockView; import com.andrognito.patternlockview.listener.PatternLockViewListener; import com.andrognito.patternlockview.utils.PatternLockUtils; import java.util.List; public class CreatePasswordActivity extends AppCompatActivity { // Initialize pattern lock view PatternLockView mPatternLockView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_create_password); mPatternLockView = (PatternLockView) findViewById(R.id.pattern_lock_view); mPatternLockView.addPatternLockListener(new PatternLockViewListener() { @Override public void onStarted() { } @Override public void onProgress(List<PatternLockView.Dot> progressPattern) { } @Override public void onComplete(List<PatternLockView.Dot> pattern) { // Shared Preferences to save state SharedPreferences sharedPreferences = getSharedPreferences("PREFS", 0); SharedPreferences.Editor editor = sharedPreferences.edit(); editor.putString("password", PatternLockUtils.patternToString(mPatternLockView, pattern)); editor.apply(); // Intent to navigate to home screen when password added is true Intent intent = new Intent(getApplicationContext(), ProgramActivity.class); startActivity(intent); finish(); } @Override public void onCleared() { } }); } }
Paso 6: Del mismo modo, cree una nueva actividad vacía y asígnele el nombre InputPasswordActivity
Vaya a la aplicación > java > Nombre del paquete de su aplicación > haga clic con el botón derecho en > Nuevo > Actividad > Actividad vacía y nombre la actividad como InputPasswordActivity .
Trabajar con el archivo activity_Input_Password.xml:
activity_Input_Password.xml activity_Input_Password.xml En este archivo, dibujará su patrón para navegar a la pantalla de inicio cuando el usuario abrió la aplicación por segunda vez después de la instalación.
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <!--Dots to input password--> <com.andrognito.patternlockview.PatternLockView android:id="@+id/pattern_lock_view" android:layout_width="300dp" android:layout_height="300dp" android:layout_centerInParent="true" app:correctStateColor="@color/purple_200" app:normalStateColor="@color/purple_200" app:wrongStateColor="@color/teal_700" /> <!--Text View to display title--> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="10dp" android:text="Input Password" android:textSize="30dp" android:textStyle="bold" /> </RelativeLayout>
Trabajar con el archivo InputPasswordActivity.java:
Vaya al archivo InputPasswordActivity.java y consulte el siguiente código. A continuación se muestra el código del archivo InputPasswordActivity.java . Se agregan comentarios dentro del código para comprender el código con más detalle.
Java
import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.widget.Toast; import androidx.appcompat.app.AppCompatActivity; import com.andrognito.patternlockview.PatternLockView; import com.andrognito.patternlockview.listener.PatternLockViewListener; import com.andrognito.patternlockview.utils.PatternLockUtils; import java.util.List; public class InputPasswordActivity extends AppCompatActivity { PatternLockView mPatternLockView; String password; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_input_password); // shared preference when user comes second time to the app SharedPreferences sharedPreferences = getSharedPreferences("PREFS", 0); password = sharedPreferences.getString("password", "0"); mPatternLockView = (PatternLockView) findViewById(R.id.pattern_lock_view); mPatternLockView.addPatternLockListener(new PatternLockViewListener() { @Override public void onStarted() { } @Override public void onProgress(List<PatternLockView.Dot> progressPattern) { } @Override public void onComplete(List<PatternLockView.Dot> pattern) { // if drawn pattern is equal to created pattern you will navigate to home screen if (password.equals(PatternLockUtils.patternToString(mPatternLockView, pattern))) { Intent intent = new Intent(getApplicationContext(), ProgramActivity.class); startActivity(intent); finish(); } else { // other wise you will get error wrong password Toast.makeText(InputPasswordActivity.this, "Wrong Password", Toast.LENGTH_SHORT).show(); mPatternLockView.clearPattern(); } } @Override public void onCleared() { } }); } }
Paso 7: Del mismo modo, cree una nueva actividad vacía y asígnele el nombre ProgramActivity
Vaya a la aplicación > java > Nombre del paquete de su aplicación > haga clic con el botón derecho en > Nuevo > Actividad > Actividad vacía y nombre la actividad como ProgramActivity .
Trabajando con el archivo activity_program.xml:
programa_actividad.xml programa_actividad.xml En este archivo, vamos a
XML
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"> <!--Text Message to display--> <TextView android:id="@+id/textView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerInParent="true" android:text="Welcome to Geeks to Geeks" android:textSize="20dp" tools:layout_editor_absoluteX="163dp" tools:layout_editor_absoluteY="334dp" /> </RelativeLayout>
Ahora haga clic en la opción de ejecución , tomará algún tiempo construir Gradle. Después de eso, obtendrá la salida en su dispositivo como se indica a continuación.
Producción:
Publicación traducida automáticamente
Artículo escrito por chinmaymunje96 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA