/** * Remove a method proxy. * * @param methodProxy target proxy */ public void removeMethodProxy(MethodProxy methodProxy) { if (methodProxy != null) { removeMethodProxy(methodProxy.getMethodName()); } }
@Override public boolean beforeCall(Object who, Method method, Object... args) { int uid = (int) args[index]; if (uid == getVUid() || uid == getBaseVUid()) { args[index] = getRealUid(); } return super.beforeCall(who, method, args); } }
@Override public void inject() throws Throwable { getInvocationStub().replaceService(mServiceName); }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new ReplaceCallingPkgMethodProxy("getAllSubInfoList")); addMethodProxy(new ReplaceCallingPkgMethodProxy("getAllSubInfoCount")); addMethodProxy(new ReplaceLastPkgMethodProxy("getActiveSubscriptionInfo")); addMethodProxy(new ReplaceLastPkgMethodProxy("getActiveSubscriptionInfoForIccId")); addMethodProxy(new ReplaceLastPkgMethodProxy("getActiveSubscriptionInfoForSimSlotIndex")); addMethodProxy(new ReplaceLastPkgMethodProxy("getActiveSubscriptionInfoList")); addMethodProxy(new ReplaceLastPkgMethodProxy("getActiveSubInfoCount")); addMethodProxy(new ReplaceLastPkgMethodProxy("getSubscriptionProperty")); } }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new ResultStaticMethodProxy("getNextEntry", null)); } }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new ReplaceCallingPkgMethodProxy("registerClientAsUser")); } }
@Override public boolean beforeCall(Object who, Method method, Object... args) { if (args != null) { int i = index; if (i < 0) { i += args.length; } if (i >= 0 && i < args.length && args[i] instanceof String) { args[i] = getHostPkg(); } } return super.beforeCall(who, method, args); } }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new ReplaceCallingPkgMethodProxy("createVirtualDisplay")); }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new StaticMethodProxy("addAppToken")); addMethodProxy(new StaticMethodProxy("setScreenCaptureDisabled")); } }
@Override public Object call(Object who, Method method, Object... args) throws Throwable { if (VASettings.Wifi.FAKE_WIFI_STATE) { return true; } return super.call(who, method, args); } });
@Override public String toString() { return "Method : " + getMethodName(); } }
@Override protected void onBindMethods() { super.onBindMethods(); } }
/** * @author Lody * @see IContentService */ @Inject(MethodProxies.class) public class ContentServiceStub extends BinderInvocationProxy { public ContentServiceStub() { super(IContentService.Stub.asInterface, "content"); } }
@Override public Object call(Object who, Method method, Object... args) throws Throwable { try { return super.call(who, method, args); } catch (InvocationTargetException e) { return onHandleError(e); } } });
@Override public Object call(Object who, Method method, Object... args) throws Throwable { try { return super.call(who, method, args); } catch (InvocationTargetException e) { return onHandleError(e); } } });
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new ResultStaticMethodProxy("write", -1)); addMethodProxy(new ResultStaticMethodProxy("read", new byte[0])); addMethodProxy(new ResultStaticMethodProxy("wipe", null)); addMethodProxy(new ResultStaticMethodProxy("getDataBlockSize", 0)); addMethodProxy(new ResultStaticMethodProxy("getMaximumDataBlockSize", 0)); addMethodProxy(new ResultStaticMethodProxy("setOemUnlockEnabled", 0)); addMethodProxy(new ResultStaticMethodProxy("getOemUnlockEnabled", false)); } }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new ReplaceCallingPkgMethodProxy("createSession")); } }
@Override public Object call(Object who, Method method, Object... args) throws Throwable { if (VASettings.Wifi.FAKE_WIFI_STATE) { IPInfo ipInfo = getIPInfo(); if (ipInfo != null) { return createDhcpInfo(ipInfo); } } return super.call(who, method, args); } });
@Override public Object call(Object who, Method method, Object... args) throws Throwable { return super.call(who, method, args); } }
@Override public Object call(Object who, Method method, Object... args) throws Throwable { if (VASettings.Wifi.FAKE_WIFI_STATE) { return WifiManager.WIFI_STATE_ENABLED; } return super.call(who, method, args); } });