Ich habe vor kurzem meinen Android-Bildschirm gebrochen. (Nochmal)
Es ist ein T-Mobile G2
Der Versuch, mit meinem beschäftigten technologiebezogenen Leben Schritt zu halten, ist schwierig genug, ohne die Verbindung zu allen zu verlieren.
Ich habe das Telefon gerootet und das USB-Debugging bereits aktiviert.
Weiß jemand, wie ich meine letzten SMS-Nachrichten über die AdB-Shell überprüfen würde, damit ich mit der Arbeit Schritt halten kann, während ich speichere, um ein neues Telefon oder einen Ersatzbildschirm zu erhalten?
Vielen Dank für alle, die diesbezüglich Informationen haben.
BEARBEITEN
Reaktion auf 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
$
kann die datei nicht chmod. Weißt du eigentlich wo es ist?
$ chmod +x sqlite3
chmod +x sqlite3
Bad mode
$
su lässt mir nur grundlegende Befehle
$ 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
#
Korrigiert
sqlite wurde nicht installiert
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>
Um auf die Datenbank zugreifen zu können, musste ich root sein.
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>
Vielen Dank Eldarerathis
quelle
sqlite3
Binärdatei nicht auf Ihrem Gerät. Der erste Link in meiner Antwort enthält Anweisungen, die Ihnen bei der Installation helfen/system/bin
. Hier ist ein Link zur Binärdatei.Antworten:
Das ist wirklich hässlich, aber Sie können sie von der Befehlszeile aus lesen, indem Sie
sqlite3
zum Anzeigen der Datenbankeinträge verwenden. Sie müssen hierfür wahrscheinlich eine Binärdatei ausgraben, es sei denn, Sie haben ein benutzerdefiniertes ROM installiert. Es gibt einige Anweisungen für die Installation der binären in dieser Stack - Überlauf Frage und SuperOneClick kommt mit ihm verpackt (eine Kopie der binären selbst gefunden werden kann hier ).Wenn Sie die Binärdatei installieren müssen, ermitteln Sie mithilfe von
mount
(ohne Parameter), wo sich Ihre/system
Partition physisch befindet (/dev/block/mtdblock3
z. B. meine ). Folgen Sie dann den Anweisungen im ersten Link oben und hängen Sie sie mit dem folgenden Befehl im Lese- / Schreibmodus wieder ein:Wenn Sie eine
sqlite3
öffnen möchtenadb shell
, wechseln Sie zu root mitsu
und führen Sie dann die folgenden Schritte aus:Dadurch werden alle Zeilen für alle ungelesenen Nachrichten aus der Tabelle abgerufen. Die Spalten in der Tabelle sind folgendermaßen definiert (damit Sie die Spalten kürzen können
SELECT
):*** Hinweis für die markierte Zeile: Dies kann je nach Gerät und Android-Version geringfügig abweichen, weshalb ich diesen
cd
Befehl separat angegeben habe. Ich denke, es war frühercom.android.providers/telephony/databases
auf älteren Geräten, aber ich erinnere mich nicht ganz. Hier können Siels
nach dem richtigen Pfad suchen.Alternativ können Sie versuchen, die .db-Datei auf Ihre SD-Karte zu kopieren (oder mit zu ziehen
adb pull
) und sie dann mit sqlite auf Ihrem Computer zu lesen.quelle
su
vorher ausführen ).chmod 0755 sqlite3
. Vielleichtchmod
mag die Lager- Binärdatei den+x
Parameter nicht.Dank des schönen Hinweises von eldarerathis mache ich es einfach
um meine SMS von meinem root Prompt aus zu lesen.
Da ich nicht sqlite3 hatte, musste ich zuerst herunterladen es mit
Oder sehen Sie sich das SQLite3-Installationsprogramm bei Google Play an (wenn Sie der Dropbox-Quelle nicht vertrauen).
quelle
Für den Fall, dass Sie mehr Details als nur Absender und Nachricht (wie in dieser Antwort ) interessiert sind , habe ich gerade einen schönen Artikel zum Thema gefunden: Lesen Sie SMS direkt aus der SQLite-Datenbank in Android . Siehe auch: Die Nachrichtendatenstruktur .
Noch besser, schauen Sie sich Github an: ANDROID-SMS ist ein in Python geschriebenes Tool, das alle SMS-Nachrichten wiederherstellt und sie in SMS-Konversationen mit bereitgestellten Statistiken organisiert. Es erholt sich auch alle MMS - Nachrichten und organisiert sie in MMS Gespräche mit den jeweiligen Dateien. Ich habe es (noch) nicht selbst ausprobiert (habe es erst vor ein paar Minuten gefunden), aber es klingt ziemlich ordentlich.
Natürlich funktioniert dieses Programm nicht direkt auf dem Android-Gerät, sondern auf Ihrem Computer (wo Python 2.7 mit SQLite3 für Python erforderlich ist). Sie müssen also zuerst die Datenbank vom Gerät abrufen. Alle erforderlichen Schritte werden auf der Github-Hauptseite des Projekts beschrieben.
quelle
Eine andere Lösung, die ich erfunden habe, verwendet eine App auf dem Telefon, die auf SMS reagiert und diese in einer Datei speichert, die Sie mit ADB lesen können.
Contact=>SMS
Memory=>Write file
, dort können Sie SMS jedes Mal in eine neue Datei oder in dieselbe mit Trennzeichen speichern. Speichern Sie es auf jeden Fall auf / sdcard oder auf einem über ADB zugänglichen Pfad.quelle