Android - MEID von JNI erhalten

Ich arbeite in Android, schreibe JNI-Code und suche nach einer Möglichkeit, die MEID (Mobile Equipment Identifier) ​​des Geräts abzufragen.

http://en.wikipedia.org/wiki/Mobile_equipment_identifier

Ich versuche, C- oder C ++ - Code zu schreiben, der auf einem Android-Gerät von selbst ausgeführt werden kann, daher glaube ich nicht, dass ich Java verwenden kann (d. H. MEID von erhalten)TelephonyManager).

Eine Suche von StackOverflow ergibt:Gibt es eine Android-Shell oder einen ADB-Befehl, mit dem ich die IMEI / MEID eines Geräts abrufen kann?

OK großartig,dumpsys iphonesubinfo kann die Info bekommen, die ich brauche. Und es funktioniert!

Ich konnte die Quelle für nicht findendumpsys außer als Teil der Quelle für Android. Also habe ich das heruntergeladen ... meine Festplatte war voll bevor der Download beendet war, aber ich habe den Quellcode dazu bekommendumpsys. Es ist eine überraschend kurze C ++ - Datei. Alles, was es tut, ist die Abfrage von AndroidIBinder Schnittstelle.

Also meine Fragen:

0) Gibt es eine Möglichkeit, eine Abfrage dagegen zu schreiben?IBinder Verwenden Sie nur das Zeug in der NDK? Die von verwendeten Include-Dateiendumpsys.cpp sind nicht in der NDK, undgrep im NDK-Verzeichnis nicht gefundenIBinder in irgendwelchen Include-Dateien oder Codebeispielen, also ist meine Vermutung "nein" (aber ich möchte mich irren).

1) Gibt es eine andere gute Möglichkeit, die MEID zu erhalten?

Ich denke ernsthaft, ich sollte nur verwendensystem("dumpsys iphonesubinfo > /tmp/myprogname_dumpsys.tmp" und öffnen Sie dann die resultierende Datei und analysieren Sie es. Das sollte funktionieren, aber ich würde es kaum als elegant bezeichnen ... und ich bin mir nicht sicher, obdumpsys ist auf jedem Android-Gerät verfügbar oder nicht.

EDIT: Die Idee der Verwendungsystem() zu rennendumpsys wird nicht funktionieren, weildumpsys brauchtandroid.permission.DUMP und Android lässt nicht mehr zu, dass Nicht-System-Apps diese Berechtigung haben.

Dumpsys Erlaubnisverweigerung in Java

Antworten auf die Frage(2)

Ihre Antwort auf die Frage