Niedawno zepsułem ekran mojego Androida. (Jeszcze raz)
To T-Mobile G2
Próbowanie nadążyć za moim zajętym życiem związanym z technologią jest wystarczająco trudne, nie tracąc kontaktu ze wszystkimi.
Zrootowałem telefon i mam już włączone debugowanie USB.
Czy ktoś wie, jak sprawdziłbym moją ostatnią wiadomość SMS z powłoki adb, dzięki czemu mogę nadążyć za pracą, a ja oszczędzam, aby uzyskać nowy telefon lub ekran zastępczy.
Dziękujemy wszystkim, którzy mają jakiekolwiek informacje na ten temat.
EDYTOWAĆ
Odpowiedź na eldarerathis
C:\android-sdk\platform-tools>adb shell
$ cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
$ sqlite3 mmssms.db
sqlite3 mmssms.db
sqlite3: permission denied
$
nie mogę chmod pliku. czy faktycznie wiesz gdzie to jest?
$ chmod +x sqlite3
chmod +x sqlite3
Bad mode
$
su pozostawia mi tylko podstawowe polecenia
$ su
su
# cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
# sqlite3 mmssms.db
sqlite3 mmssms.db
sqlite3: not found
#
Poprawione
sqlite nie został zainstalowany
C:\android-sdk\platform-tools>adb shell
$ cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
$ sqlite3 mmssms.db
sqlite3 mmssms.db
SQLite version 3.6.22
Enter ".help" for instructions
sqlite>
Aby uzyskać dostęp do bazy danych, musiałem być rootem.
C:\android-sdk\platform-tools>adb shell
$ su
# cd /data/data/com.android.providers.telephony/databases
cd /data/data/com.android.providers.telephony/databases
# sqlite3 mmssms.db
sqlite3 mmssms.db
SQLite version 3.6.22
Enter ".help" for instructions
sqlite>
Wielkie dzięki, Eldarerathis
sms
adb
command-line
broken-screen
sqlite
Lazy Coder
źródło
źródło
sqlite3
pliku binarnego na swoim urządzeniu. Pierwszy link w mojej odpowiedzi zawiera instrukcje, które pomogą ci go zainstalować/system/bin
. Oto link do samego pliku binarnego.Odpowiedzi:
To jest naprawdę brzydkie, ale możesz je odczytać z wiersza poleceń, używając
sqlite3
do przeglądania wpisów w bazie danych. Prawdopodobnie będziesz musiał wykopać plik binarny, chyba że masz zainstalowaną niestandardową pamięć ROM. W tym pytaniu dotyczącym przepełnienia stosu znajduje się kilka instrukcji dotyczących instalacji tego pliku binarnego , a SuperOneClick jest dostarczany wraz z nim (kopię samego pliku binarnego można znaleźć tutaj ).Jeśli musisz zainstalować plik binarny, użyj
mount
(bez parametrów), aby ustalić, gdzie/system
fizycznie znajduje się twoja partycja (/dev/block/mtdblock3
na przykład moja ). Następnie postępuj zgodnie z instrukcjami w pierwszym linku powyżej i zacznij od zamontowania go ponownie w trybie odczytu / zapisu za pomocą polecenia:Gdy już
sqlite3
to zrobisz, zechcesz otworzyćadb shell
, przełączyć na rootowaniesu
, a następnie wykonaj następujące czynności:Spowoduje to wyciągnięcie wszystkich wierszy z tabeli dla wszystkich nieprzeczytanych wiadomości. Kolumny w tabeli są zdefiniowane w ten sposób (dzięki czemu można przyciąć
SELECT
):*** Uwaga dla zaznaczonej linii: może się nieznacznie różnić w zależności od urządzenia i wersji Androida, dlatego
cd
osobno zawarłem to polecenie. Myślę , że kiedyś byłcom.android.providers/telephony/databases
na starszych urządzeniach, ale nie do końca pamiętam. Użyj,ls
aby rozejrzeć się za prawidłową ścieżką tutaj.Alternatywnie możesz spróbować skopiować plik .db na kartę SD (lub pociągnąć go za pomocą
adb pull
), a następnie odczytać na komputerze za pomocą narzędzia sqlite.źródło
su
wcześniej).chmod 0755 sqlite3
więc. Możechmod
zapasowy plik binarny nie lubi+x
parametru.Dzięki pięknej wskazówce powyżej z eldarerathis, po prostu to robię
aby odczytać moje SMS-y z wiersza polecenia root.
Ponieważ nie mam sqlite3, najpierw musiał pobrać je z
Lub zobacz instalator SQLite3 w Google Play (jeśli nie ufasz źródłu Dropbox).
źródło
Jeśli interesują Cię więcej szczegółów niż tylko nadawca i wiadomość (jak w tej odpowiedzi ), właśnie znalazłem fajny artykuł na ten temat: Czytaj SMS bezpośrednio z bazy danych Sqlite na Androida . Zobacz także: Struktura danych komunikatu .
Co więcej, spójrz na Github: ANDROID-SMS to narzędzie napisane w Pythonie, które odzyskuje wszystkie wiadomości SMS i organizuje je w rozmowy SMS z podanymi statystykami. To także odzyskuje wszystkie wiadomości MMS i organizuje je w Rozmowach MMS, z odpowiednimi plikami. Sam jeszcze tego nie próbowałem (znalazłem to kilka minut temu), ale brzmi to całkiem nieźle.
Oczywiście ten program nie działa bezpośrednio na urządzeniu z Androidem - ale zamiast tego na twoim komputerze (gdzie wymaga Python 2.7 z SQLite3 dla Python). Musisz najpierw pobrać bazę danych z urządzenia. Wszystkie wymagane kroki opisano na stronie głównej projektu Github.
źródło
Inne wymyślone przeze mnie rozwiązanie wykorzystuje aplikację na telefon, która reaguje na SMS i zapisuje ją w pliku, który można odczytać za pomocą ADB.
Contact=>SMS
Memory=>Write file
, tam możesz zapisać SMS do nowego pliku za każdym razem lub do tego samego z separatorem. W każdym razie zapisz go w / sdcard lub w dowolnej ścieżce dostępnej przez ADB.źródło