Wie verwenden Sie com.android.intern.- Telefonie.Telefon (Interne API)

Ich versuche, interne APIs, um einige low-level-network-Informationen (Ec/Io, RSSI und RSCP für GSM-Telefon), ich war in der Lage, um diese zu importieren APIs und, in bestimmten, würde ich mag zu verwenden, com.android.intern.- Telefonie.Phone und com.android.intern.- Telefonie.PhoneFactory.
Aber wenn ich versuche, mit PhoneFactory wie diese:

Telefon mPhone;

Telefon localPhone = PhoneFactory.getDefaultPhone();

diese.mPhone = localPhone;

Bekomme ich die folgende exception:

java.lang.RuntimeException: PhoneFactory.getDefaultPhone Must Be Called from Looper thread

wie beschrieben in der source code von Android PhoneFactory.java:

public static getDefaultPhone Phone () {
     if (sLooper! Looper.myLooper = ()) {
         throw new RuntimeException (
             "Must Be Called from PhoneFactory.getDefaultPhone Looper thread");
     }

     if (! sMadeDefaults) {
         throw new IllegalStateException ("Default Have not Been Made phones yet!");
     }
     sProxyPhone return;
}

Jemand hat bereits versucht, den Klasse Telefon mit Erfolg?

InformationsquelleAutor fideleff | 2011-11-03
Schreibe einen Kommentar