Lollipop ukrywa szybkie ustawienia na ekranie blokady

16

Jestem pewien, że już o to zapytano. Ale nie mogłem się jeszcze dowiedzieć.

Niedawno zaktualizowałem Lollipop do mojego telefonu Sony Xperia Z. Pasek powiadomień i rozwijane ustawienia są świetne.

Ale na ekranie blokady nie chcę włączać / wyłączać żadnych Wi-Fi, Bluetooth ani żadnych ustawień. Po prostu rozwijanie ustawień nie powinno być dozwolone na ekranie blokady. Jak mogę to zrobić? Czy jest jakaś opcja?

Mam już wzór blokady.

Shiju K Babu
źródło
Znalazłem to, ale nie działało na Marshmallow, może na Lollipop. Wymaga rootowania i Xposed.
Mateusz
Czas na aktualizację do Androida N :)
Thomas Vos
W ptasie mleczko jest proste ustawienie, aby uniemożliwić dostęp do szuflady powiadomień, gdy urządzenie jest bezpiecznie zablokowane.
TheAshwaniK

Odpowiedzi:

14

Używam CyanogenOS 12 (pochodzący z CM12), więc poniższe rozwiązanie może nie działać na standardowym Lollipopie, ale niezależnie od tego, jest to bardzo przydatne rozwiązanie.


Płyty, które można przełączać w podręczniku Ustawienia są przypisane konkretne nazwiska jak Bluetooth → btWi-Fi -> wifi, Pejzaż / Portret → rotationi wiele innych, a nazwy te są zapisywane jako wartość dla klucza sysui_qs_tilespod stołem securez settings.db(Ustawienia Przechowywanie).

Podczas gdy te kafelki można usunąć / zmienić układ z interfejsu ustawień, można również rozważyć wiersz poleceń, aby zrealizować zadanie.

Odpowiednim poleceniem jest, settingsa jego użycie jest wymienione jako:

usage:  settings [--user NUM] get namespace key
        settings [--user NUM] put namespace key value
        settings [--user NUM] delete namespace key

'namespace' is one of {system, secure, global}, case-insensitive
If '--user NUM' is not given, the operations are performed on the owner user.

Zanim przejdziesz dalej, będziesz potrzebować konfiguracji ADB w swoim urządzeniu. Alternatywnie, jeśli urządzenie jest zrootowane, możesz użyć aplikacji terminalowej, takiej jak Emulator terminala dla Androida .

Uwaga: ADB w trybie bezprzewodowym może okazać się niebezpieczny, jeśli urządzenie nie obsługuje uwierzytelniania klienta przed udzieleniem dostępu. Postępuj na własne ryzyko!

Najpierw musimy znaleźć wartość zapisaną w kluczu sysui_qs_tilesi aby to zrobić, wpisz w terminalu polecenie:

adb shell settings get secure sysui_qs_tiles

W przypadku zrootowanych urządzeń korzystających z aplikacji terminalowej:

su
settings get secure sysui_qs_tiles

Dane wyjściowe byłyby następujące:

wifi,bt,cell,rotation,flashlight,hotspot,location,airplane

Teraz, jeśli chcę usunąć Tryb samolotowy z Szybkich ustawień lub chcę, aby kafelek Wi-Fi był wyświetlany po Hotspocie , wówczas polecenia w odpowiedniej kolejności wyglądałyby następująco:

adb shell settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
adb shell settings put secure sysui_qs_tiles bt,cell,rotation,flashlight,hotspot,wifi,location

W przypadku zrootowanych urządzeń korzystających z aplikacji terminalowej:

su
settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
settings put secure sysui_qs_tiles bt,cell,rotation,flashlight,hotspot,wifi,location

Teraz wracając do wymogu, czyli „ ukryj szybkie ustawienia na ekranie blokady ”. Możesz użyć narzędzia do , takiego jak Tasker, aby usunąć kafelki z Szybkich ustawień, gdy ekran jest zablokowany, i dodać je z powrotem, gdy ekran jest odblokowany.

Zanim przejdziemy do korzystania z Taskera , powinienem wspomnieć, że settingskomendy można używać tylko z ADB w urządzeniach niezrootowanych z powodu wyższych wymaganych uprawnień niż w przypadku zwykłego użytkownika, a zatem w celu automatyzacji w Taskerze urządzenie musiałoby mieć ADB działa w trybie bezprzewodowym. Aby to zrobić, zobacz:

Instrukcje dla Taskera

  1. Utwórz zadanie o nazwie „Płytki odblokowane”.
  2. Dodaj akcję jako Kod → Uruchom Shell i dodaj te szczegóły:

    Polecenie :adb connect localhost:<PORT>; adb shell settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location

    W przypadku urządzeń zrootowanych szczegóły będą następujące:

    • Polecenie :settings put secure sysui_qs_tiles wifi,bt,cell,rotation,flashlight,hotspot,location
    • Zaznacz Użyj roota

    W przypadkach, w których ma to znaczenie:

    1. Użyj <PORT>jako numeru portu, na którym działa ADB Wireless5555
    2. Zamiast wifi,bt,cell,rotation,flashlight,hotspot,locationużywać nazw kafelków, które chcesz lub masz w Szybkich ustawieniach
  3. Utwórz kolejne zadanie o nazwie „Płytki zablokowane”.

  4. Uwaga : Jeśli skonfigurowałeś ustawienia tak, że ekran nie blokuje się zaraz po przejściu urządzenia w tryb uśpienia, ale po upływie XY sekund (np. 30Sekund), utwórz akcję jako Zadanie → Zaczekaj i ustaw te sekundy XY . Alternatywnie sleep XYmożna użyć w następnym kroku w ramach polecenia . Arielle zaproponowała ten pomysł .

  5. Dodaj kolejną akcję jako Kod → Uruchom Shell i dodaj te szczegóły:

    Polecenie :adb connect localhost:<PORT>; adb shell settings put secure sysui_qs_tiles ' '

    W przypadku urządzeń zrootowanych szczegóły będą następujące:

    • Polecenie :settings put secure sysui_qs_tiles ' '
    • Zaznacz Użyj roota
  6. Utwórz profil o nazwie „S-odblokowany” w Zdarzeniu → Wyświetlacz → Wyświetl odblokowany , wybierz Highest Priorytet i połącz zadanie „Płytki odblokowane”.
  7. Utwórz kolejny profil o nazwie „S-zablokowany” w Zdarzeniu → Wyświetlanie → Wyświetl wyłączony , wybierz Highest Priorytet i połącz zadanie „Kafelki s-zablokowane”.
  8. Mają Tasker włączona, a oto pożądanego działania przez blokowanie / odblokowywanie ekranu.

    (Kliknij obraz, aby powiększyć)

    Kolejność obrazów jako „Brak kafelków po zablokowaniu ekranu” → „Kafelki po odblokowaniu ekranu”

(Kliknij obraz, aby powiększyć)

IMG: Brak kafelków, gdy ekran jest zablokowany IMG: Kafelki, gdy ekran jest odblokowany

Daj mi znać, jeśli moje rozwiązanie działa na urządzeniu z systemem Stock Lollipop.

Firelord
źródło
Cześć Nie jestem zainteresowany zrootowaniem mojego telefonu komórkowego. Myślałem, że będzie sposób tylko w ustawieniach mobilnych, których nie mogę znaleźć. Dzięki :)
Shiju K Babu
1
Dla czytelników: settings put secure qs_show_brightness_slider 0usunie suwak jasności. Zmień 0 na 1 i wróci. Niestety moje urządzenie zachowuje się dziwnie, gdy uruchamiam to polecenie za pomocą Taskera. Efekt ma miejsce, jeśli tylko spróbuję go ręcznie przez ADB lub terminal, ale nie przez Tasker! Jeśli to działa, daj mi znać.
Firelord
1
Wielkie dzięki za to, działa świetnie na CM12.1, ale chcę dodać drobną rzecz: zauważyłem, że jeśli chcesz również ustawić określone szybkie ustawienia na ekranie blokady (na przykład tylko latarkę i wyświetlanie otoczenia), robią to nie działa, jeśli polecenie zostanie wykonane, gdy telefon jest zablokowany. Rozwiązaniem jest skonfigurowanie telefonu tak, aby nie blokował ekranu do 5 sekund po wyłączeniu wyświetlaczy (w ten sposób można uruchomić polecenie, zanim się zablokuje i wszystko działa poprawnie).
user138784,
@ user138784 Dzięki za wejście. Czy wypróbowałeś również rozwiązanie z suwakiem jasności (drugi komentarz)?
Firelord
1
@Firelord, o ile się dowiedziałem, obsługa niestandardowych kafelków i tethering BT nie mogą być przełączane przez Tasker na moim urządzeniu (ale myślę, że może to zrobić przez pro wersję bezpiecznych ustawień). Nie znalazłem wsparcia w ustawianiu dostępnych kafelków.
user138784,
1

Nie ma możliwości wyłączenia szybkich ustawień na ekranie blokady.

Może to jednak być możliwe poprzez flashowanie niestandardowej pamięci ROM w telefonie. Wiem, że możesz przestawiać / usuwać kafelki w CyanogenMod.

Uwaga: po flashowaniu niestandardowej pamięci ROM dane zostaną usunięte, a gwarancja zostanie unieważniona .

Edycja: Na XDA-Developers znalazłem to:

Menu szybkich ustawień można edytować - gdy telefon jest odblokowany otwórz panel szybkich ustawień i dotknij i przytrzymaj dowolną z jego ikon, będziesz mógł usunąć lub dodać niektóre funkcje. Wystarczy usunąć tryb samolotowy i dane mobilne. W ten sposób, gdy telefon jest zablokowany, nikt nie może wyłączyć jego łączności. Wadą jest to, że nie można łatwo zmienić trybu samolotowego, nawet gdy telefon jest odblokowany.

Źródło: http://forum.xda-developers.com/showpost.php?p=60243490&postcount=13

Thomas Vos
źródło
Nie chcę tego robić Lepiej się z tym
przyzwyczaję
Powinni zapewne przewidzieć taką opcję. Mam nadzieję, że w następnej wersji
Shiju K Babu,
@ShijuKBabu Zredagowałem odpowiedź. Na magazynie ROM powinieneś być w stanie usunąć tryb samolotowy i dane mobilne .
Thomas Vos,