Zmień rozmiar ekranu martwej strefy dotykowej

28

Mam Star N7189 (5,5 ") z dolną strefą ekranu dotykowego martwą

Martwa strefa

Przyciski menu i Wstecz nie działają, ale fizyczny przycisk Home działa.

Starałem się mocno naciskać na krawędzie ekranu, próbowałem zastosować skręt z krótkich boków, jakby to był tylko mokry ręcznik. Zrobiłem twardy reset, ale to nie zadziałało.

Czasami naciskając martwy obszar, telefon przyjmuje go za przycisk menu

Jakie metody mogę wymieniać oprócz wymiany ekranu? Czy jest jakaś aplikacja, program uruchamiający lub sztuczka, aby zmienić rozmiar ekranu nadający się tylko do obszaru roboczego?

PS kilka godzin po pozostawieniu go w trybie samolotowym nagle dotyk miał ten problem, ale nie pamiętam, czy przypadkowo umieściłem coś ciężkiego w tym obszarze komórki.

Dambo
źródło
1
Możesz to osiągnąć, edytując źródło niestandardowej pamięci ROM i dostosowując ją ponownie, ale jeśli nie wiesz, jak zbudować własną pamięć ROM, nie polecam jej.
Dan Hulme,

Odpowiedzi:

31

Częściowa, ale być może pomocna odpowiedź.


Uwaga:

  • Moje rozwiązanie zostało przetestowane na Stock Android 4.4.2 i Stock CyanogenOS 12 (5.0) i powinno działać na Androidzie 4.3 i nowszych (w oparciu o tę odpowiedź ).
  • Wspomniałem wszędzie tam, gdzie wymagany jest dostęp do konta root.

Problem w tej istniejącej odpowiedzi polega na tym, że zmniejsza on moc wyjściową ekranu zarówno od góry, jak i od dołu w moich urządzeniach, podczas gdy muszę zmniejszać tylko od dołu. Aby to zrobić, wykorzystałem następujący komentarz jako podstawę do pracy:

Dolne 20% mojego Nexusa 4 nie działa. Używam: wm overscan 0,0,0,210aby android WM nie rysował niczego w tym obszarze, dzięki czemu mogę w pełni obsługiwać wszystkie narysowane obszary.

Instrukcje:

  1. Włącz debugowanie USB w swoim telefonie.
  2. Zainstaluj narzędzia ADB na komputerze, podłącz do niego urządzenie i upewnij się, że wykrywa ono urządzenie adb devices.
  3. Musimy znać rozdzielczość i gęstość wyświetlania urządzenia. W terminalu / cmd wprowadź, adb shell dumpsys display | grep mBaseDisplayInfoaby wyświetlić informacje związane z wyświetlaniem. Dane wyjściowe mogą wyglądać następująco:

    mBaseDisplayInfo=DisplayInfo{"Built-in Screen", app 480 x 854, real 480 x 854, largest app 480 x 854, smallest app 480 x 854, 64.29 fps, rotation 0, density 240, 240.0 x 240.0 dpi, layerStack 0, type BUILT_IN, address null, FLAG_SECURE, FLAG_SUPPORTS_PROTECTED_BUFFERS}
    

    Istotna informacja w moim przypadku to:

    • prawdziwe 1080x1920
    • gęstość 480
    1. Najbardziej przydatne polecenia do użycia to:

      • wm overscan [reset|LEFT,TOP,RIGHT,BOTTOM]
      • wm density [reset|DENSITY]

      Mój domyślny ekran uruchamiania bez poprawek wyglądał następująco:

      IMG: Domyślny ekran uruchamiania bez poprawek

    2. Aby zmniejszyć wyświetlanie ekranu u dołu, wydaj polecenie:

      adb shell wm overscan 0,0,0,100
      

      Zauważ, że użyłem dalszej redukcji przez upto 0,0,0,300i wynik był taki:

      wprowadź opis zdjęcia tutaj

      Dostosuj wartość do swoich potrzeb.

    3. Może być konieczne skorygowanie gęstości, ponieważ wyświetlacz może wyglądać dziwnie . Domyślna gęstość wyświetlania mojego urządzenia to 480 dpi, więc poprawiłem go w ten sposób:

      adb shell wm density 440
      

      i ekran Uzyskany jak to . Aplikacja pod tweaked rozmiar.

    4. Pamiętaj, że możesz użyć adb shell wm density reseti, adb shell wm overscan resetaby powrócić odpowiednio do domyślnej gęstości i rozdzielczości.
    5. Teraz, gdy zadbano o „strefę martwego dotyku”, nadszedł czas, aby używać klawiszy wirtualnych / miękkich (tylko jeśli jest to potrzebne).

      1. Izzy już to ujął w tej odpowiedzi . W przeciwnym razie możesz użyć Gravitybox LP (dla użytkowników Lollipop) lub Gravitybox KK (dla użytkowników Kitkat). Jest to moduł Xposed, który wymaga dostępu do roota i zainstalowanego Xposed Framework .

        Zainstaluj, aktywuj i uruchom Gravitybox → poprawki paska nawigacyjnegoWłącz pasek nawigacji → zrestartuj komputer, a przyciski programowe, czyli pasek nawigacji, zostaną uznane za włączone.

      2. Niestandardowa pamięć ROM, taka jak Cyanogenmod i niektóre standardowe ROM, ma opcję włączenia klawiszy programowalnych (przycisków) w Ustawieniach . Możesz użyć tej opcji, ponieważ nie wymaga ona dostępu do konta root.

      3. Po kilku dalszych poprawkach końcowy ekran mojego Androida 5.0 wyglądał następująco:

        IMG: Po kilku dalszych poprawkach wyglądał ostatni ekran mojego Androida 5.0


Zauważ, że powyższe rozwiązanie prawdopodobnie nie byłoby odpowiednie dla PO, ale zostało napisane z uwzględnieniem celu nagrody (oferowanej przez barro32 ). Następna duża aktualizacja prawdopodobnie dotyczy Androida 4.2.

Firelord
źródło
4
To jest złoto ...
Gabriel A. Zorrilla
1
Polecenia adb dla overscan działały doskonale na moim Essential PH-1, a rozwiązanie było bardzo proste, bez rootowania i aplikacji. Mogę ponownie użyć telefonu. Dziękuję Ci.
Ryan Babchishin
pracował dla mnie zepsuty ekran Nokia 7.1. Dziękuję, że uratowałeś mi życie
aliarousyoucef
Czy to działa po ponownym uruchomieniu systemu?
Maciek Łoziński
@ MaciekŁoziński W przypadku testowanych wersji Androida (wspomnianych u góry) tak, zadziałało po ponownym uruchomieniu.
Firelord
3

Jeśli Twoje urządzenie jest zrootowane, możesz rzucić okiem na Button Saviour (root) - jeśli nie, na Button Saviour Non Root . Lub na pasku przycisków wirtualnych :

Przycisk Zbawiciela Pasek przycisków wirtualnych
Button Savior i Virtual Button Bar (źródło: Google Play; kliknij, aby powiększyć)

Co mają ze sobą wspólnego wszystkie trzy? Jak pokazują zrzuty ekranu, umożliwiają one korzystanie z wirtualnych klawiszy programowych w miejscach, w których ich potrzebujesz. Możesz więc uniknąć „martwych obszarów” i nadal mieć je przy sobie.

Przyznaję, że to nie zmienia rozmiaru ekranu; ale przynajmniej rozwiązuje problem z przyciskami.

Izzy
źródło
Dobra część problemu nie jest rozwiązany tak, w rzeczywistości wszystkie aplikacje, które wymagają tego obszaru ekranu, w tym klawiatury, pozostają bezużyteczne; (
dambo
Byłem tego świadomy - ale pomyślałem, że to lepsze rozwiązanie niż częściowe. Jeśli chodzi o klawiaturę, istnieje kilka aplikacji na klawiaturze, które umożliwiają „dowolne pozycjonowanie”. Właśnie natknąłem się na to jakiś czas temu, ale nie pamiętam, który to był.
Izzy
1

Znalazłem rozwiązanie!
Wymaga roota i Androida 4.3 + !!!

Ta aplikacja może zmieniać rozdzielczość, a także dodawać wirtualne przyciski.
Będziesz musiał zmienić wysokość o około 1,5 cm mniejszą (nie widzisz tego bardzo dobrze na zdjęciu, więc sprawdź to przed złożeniem wniosku!) Jeśli masz jakiekolwiek problemy z aplikacją, sprawdź opis aplikacji lub opublikuj komentarz poniżej.

Mam nadzieję, że moja odpowiedź ci pomoże!

Pobierz link do aplikacji: https://play.google.com/store/apps/details?id=com.nomone.resolution_changer

Thomas Vos
źródło
Problem z „rozmiarem wyświetlacza w / am”, na którym opiera się wspomniana aplikacja, polega na tym, że 1,5 cm zostanie zmniejszone zarówno od góry, jak i od dołu, zmniejszając zużycie ekranu do znacznie mniejszej. Popraw mnie, jeśli się mylę, ale zauważyłem takie zachowanie na moim urządzeniu.
Firelord
1

Odpowiedź Firelords działa dla wersji Androida powyżej 4.2.

W wersjach do (włącznie) Androida 4.2 polecenie, którego należy użyć, to am. Po włączeniu debugowania USB i zainstalowaniu narzędzi ADB procedura jest następująca:

  1. Wykryj bieżącą rozdzielczość wyświetlacza: adb shell dumpsys window(lub lepiej, aby bezpośrednio filtrować wyjście dla rozdzielczości: adb shell dumpsys window | grep cur= |tr -s " " | cut -d " " -f 4|cut -d "=" -f 2)- stąd )
  2. Zmień rozdzielczość na np adb shell am display-size 540x700. 540 x 700 . (Można zresetować za pomocą adb shell am display-size reset)
  3. Jeśli niezbędna do zmiany gęstości wyświetlacza następnie sprawdzić gęstość prądu z adb shell dumpsys display(lub uzyskać krótkie wyjście: adb shell dumpsys display | grep mBaseDisplayInfo)
  4. Zmień gęstość na np. 230: adb shell am display-density 230(Można zresetować za pomocą adb shell am display-density reset).

Jeśli jest to konieczne, aby włączyć klawisze programowe / przyciski ekranowe, można to zrobić, dodając wiersz qemu.hw.mainkeys=0do pliku /system/build.prop(wymagane uprawnienia roota). Jeśli ta linia już istnieje w build.prop, przyciski ekranowe można włączyć, ustawiając wartość na 0 lub wyłączyć, ustawiając ją na 1. O ile mi wiadomo, działa to na Androidzie 4.0.

Mojo Dodo
źródło
1

Spróbuj użyć Screen Shift z Playstore. Przetestowałem to na moim Redmi 2 i działało dobrze.

Gamma Prima Naba
źródło