Deblocare automată la instalarea unei aplicații din Android Studio

De la YO3ITI
Sari la navigare Sari la căutare

Pentru a debloca automat un dispozitiv Android atunci când instalezi o aplicație din Android Studio, poți folosi setările native din Developer Options sau poți automatiza procesul prin ADB.

Metoda nativă: Menținerea ecranului pornit (Recomandat)

Cea mai simplă soluție este să previi blocarea ecranului în timp ce dispozitivul este conectat la calculator.

  • Accesează Settings > Developer options.
  • Activează opțiunea Stay Awake (Ecranul nu se va stinge niciodată în timp ce se încarcă prin USB).
  • Sfat: Dezactivează orice formă de securitate a ecranului (setat pe None sau Swipe) în timpul testării pentru a evita introducerea PIN-ului.[1] [2] [3] [4] [5]

Metoda Automată: Comenzi ADB în Android Studio

Poți configura Android Studio să trimită o comandă de deblocare imediat ce pornește aplicația.[6] [7] [8]

  1. În Android Studio, mergi la meniul drop-down al configurației de rulare și selectează Edit Configurations....
  2. Sub secțiunea Before Launch, apasă pe butonul + și alege Run External Tool.
  3. Creează un tool nou cu următoarele setări:
    1. Program: adb (asigură-te că ai adb în variabilele de mediu).
    2. Arguments: shell wm dismiss-keyguard (această comandă respinge ecranul de blocare dacă nu are PIN/parolă).
    3. Dacă dispozitivul are ecranul stins, poți folosi: shell input keyevent KEYCODE_WAKEUP.[9] [10] [11]

Metoda Programatică: În codul aplicației

Dacă vrei ca aplicația să "trezească" ecranul singură la pornire (util pentru testare), adaugă aceste flag-uri în metoda onCreate a activității principale:

if (BuildConfig.DEBUG) {
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON |
                         WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
                         WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
                         WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
}

Aceste flag-uri vor aprinde ecranul și vor trece de lock-screen (dacă nu e securizat) special pentru sesiunea de debug. Dorești să automatizezi și introducerea PIN-ului prin scripturi Gradle dacă dispozitivul este securizat?

Referințe