lundi 5 juin 2017

Is it possible to access interface implementation method when we have access only to the interface?

I have an instance of an Interface IWindowManager that i retrieve via WindowManagerGlobal.getWindowManagerService().

/**
 * System private interface to the window manager.
 *
 * {@hide}
 */
interface IWindowManager
{
...
}

I know this interface is implemented by WindowManagerService defined in com.android.server.wm.WindowManagerService. However seam their is no way to access it, i always receive W/System.err(10293): java.lang.NoClassDefFoundError: Failed resolution of: Lcom/android/server/wm/WindowManagerService;

but as i already have the instance, and i just want to access the method public Object getWindowManagerLock() implemented in com.android.server.wm.WindowManagerService.

public class WindowManagerService extends IWindowManager.Stub
        implements Watchdog.Monitor, WindowManagerPolicy.WindowManagerFuncs {

    @Override
    public Object getWindowManagerLock() {
        return mWindowMap;
    }

}

Is their any way for me to execute this method and retrieve the result ?





Aucun commentaire:

Enregistrer un commentaire