Die import-android.os.Dienste-Verwalter kann nicht aufgelöst werden
Ich bin mit aidl zu beantworten Anruf automatisch, code wie folgt:
ITelephony.Stub.asInterface(ServiceManager.getService("phone"))
.answerRingingCall();
Ich importieren ServiceManager.class
import android.os.ServiceManager;
aber es gibt ein problem:Der import android.os.Dienste-Verwalter kann nicht aufgelöst werden
Wie kann ich machen, damit es funktioniert? Dank
InformationsquelleAutor Sean | 2010-12-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
android.os.ServiceManager
ist eine versteckte Klasse (d.h.,@hide
) und die versteckten Klassen (auch wenn Sie öffentlich im Sinne von Java) sind entfernt android.jar daher erhalten Sie die Fehlermeldung, wenn Sie versuchen, importierenServiceManager
. Versteckte Klassen sind diejenigen, die Google nicht möchten, dass ein Teil der dokumentierten public API.Anwendungen mit nicht-öffentlichen API kann nicht einfach erstellt werden können, gibt es verschiedene Plattform-Versionen dieser Klasse.
InformationsquelleAutor Chaitali
Obwohl es alt ist, aber niemand hat beantwortet es noch nicht. Versteckte Klassen verwendet werden können mithilfe von reflection-APIs. Hier ist ein Beispiel zum Erwerb eines service mit Service Manager per reflection-APIs:
InformationsquelleAutor sgupta
Wie oben schon gesagt, funktionieren diese Methoden nur auf System apps und framework-apps aus dem Android N auf Wörter.
Trotzdem können wir code für die System-app für Dienste-Verwalter Nutzung als unten mit der spiegelung von Android-Code
InformationsquelleAutor Vinayak