private static IPInfo getIPInfo() { try { List<NetworkInterface> interfaces = Collections.list(NetworkInterface.getNetworkInterfaces()); for (NetworkInterface intf : interfaces) { List<InetAddress> addrs = Collections.list(intf.getInetAddresses()); for (InetAddress addr : addrs) { if (!addr.isLoopbackAddress()) { String sAddr = addr.getHostAddress().toUpperCase(); boolean isIPv4 = isIPv4Address(sAddr); if (isIPv4) { IPInfo info = new IPInfo(); info.addr = addr; info.intf = intf; info.ip = sAddr; info.ip_hex = InetAddress_to_hex(addr); info.netmask_hex = netmask_to_hex(intf.getInterfaceAddresses().get(0).getNetworkPrefixLength()); return info; } } } } } catch (SocketException e) { e.printStackTrace(); } return null; }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new GetConnectionInfo()); addMethodProxy(new GetScanResults()); addMethodProxy(new ReplaceCallingPkgMethodProxy("getBatchedScanResults")); addMethodProxy(new RemoveWorkSourceMethodProxy("acquireWifiLock")); addMethodProxy(new RemoveWorkSourceMethodProxy("updateWifiLockWorkSource")); if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) { addMethodProxy(new RemoveWorkSourceMethodProxy("startLocationRestrictedScan")); addMethodProxy(new RemoveWorkSourceMethodProxy("startScan")); addMethodProxy(new RemoveWorkSourceMethodProxy("requestBatchedScan"));
private static WifiInfo createWifiInfo() throws Exception { WifiInfo info = mirror.android.net.wifi.WifiInfo.ctor.newInstance(); IPInfo ip = getIPInfo(); InetAddress address = (ip != null ? ip.addr : null); mirror.android.net.wifi.WifiInfo.mNetworkId.set(info, 1); mirror.android.net.wifi.WifiInfo.mSupplicantState.set(info, SupplicantState.COMPLETED); mirror.android.net.wifi.WifiInfo.mBSSID.set(info, VASettings.Wifi.BSSID); mirror.android.net.wifi.WifiInfo.mMacAddress.set(info, VASettings.Wifi.MAC); mirror.android.net.wifi.WifiInfo.mIpAddress.set(info, address); mirror.android.net.wifi.WifiInfo.mLinkSpeed.set(info, 65); if (Build.VERSION.SDK_INT >= 21) { mirror.android.net.wifi.WifiInfo.mFrequency.set(info, 5000); // MHz } mirror.android.net.wifi.WifiInfo.mRssi.set(info, 200); // MAX_RSSI if (mirror.android.net.wifi.WifiInfo.mWifiSsid != null) { mirror.android.net.wifi.WifiInfo.mWifiSsid.set(info, WifiSsid.createFromAsciiEncoded.call(VASettings.Wifi.SSID)); } else { mirror.android.net.wifi.WifiInfo.mSSID.set(info, VASettings.Wifi.SSID); } return info; }
addInjector(new WifiManagerStub()); addInjector(new BluetoothStub()); addInjector(new ContextHubServiceStub());
private static WifiInfo createWifiInfo() throws Exception { WifiInfo info = mirror.android.net.wifi.WifiInfo.ctor.newInstance(); IPInfo ip = getIPInfo(); InetAddress address = (ip != null ? ip.addr : null); mirror.android.net.wifi.WifiInfo.mNetworkId.set(info, 1); mirror.android.net.wifi.WifiInfo.mSupplicantState.set(info, SupplicantState.COMPLETED); mirror.android.net.wifi.WifiInfo.mBSSID.set(info, VASettings.Wifi.BSSID); mirror.android.net.wifi.WifiInfo.mMacAddress.set(info, VASettings.Wifi.MAC); mirror.android.net.wifi.WifiInfo.mIpAddress.set(info, address); mirror.android.net.wifi.WifiInfo.mLinkSpeed.set(info, 65); if (Build.VERSION.SDK_INT >= 21) { mirror.android.net.wifi.WifiInfo.mFrequency.set(info, 5000); // MHz } mirror.android.net.wifi.WifiInfo.mRssi.set(info, 200); // MAX_RSSI if (mirror.android.net.wifi.WifiInfo.mWifiSsid != null) { mirror.android.net.wifi.WifiInfo.mWifiSsid.set(info, WifiSsid.createFromAsciiEncoded.call(VASettings.Wifi.SSID)); } else { mirror.android.net.wifi.WifiInfo.mSSID.set(info, VASettings.Wifi.SSID); } return info; }
addInjector(new WifiManagerStub()); addInjector(new BluetoothStub()); addInjector(new ContextHubServiceStub());
private static IPInfo getIPInfo() { try { List<NetworkInterface> interfaces = Collections.list(NetworkInterface.getNetworkInterfaces()); for (NetworkInterface intf : interfaces) { List<InetAddress> addrs = Collections.list(intf.getInetAddresses()); for (InetAddress addr : addrs) { if (!addr.isLoopbackAddress()) { String sAddr = addr.getHostAddress().toUpperCase(); boolean isIPv4 = isIPv4Address(sAddr); if (isIPv4) { IPInfo info = new IPInfo(); info.addr = addr; info.intf = intf; info.ip = sAddr; info.ip_hex = InetAddress_to_hex(addr); info.netmask_hex = netmask_to_hex(intf.getInterfaceAddresses().get(0).getNetworkPrefixLength()); return info; } } } } } catch (SocketException e) { e.printStackTrace(); } return null; }
private static WifiInfo createWifiInfo() throws Exception { WifiInfo info = mirror.android.net.wifi.WifiInfo.ctor.newInstance(); IPInfo ip = getIPInfo(); InetAddress address = (ip != null ? ip.addr : null); mirror.android.net.wifi.WifiInfo.mNetworkId.set(info, 1); mirror.android.net.wifi.WifiInfo.mSupplicantState.set(info, SupplicantState.COMPLETED); mirror.android.net.wifi.WifiInfo.mBSSID.set(info, VASettings.Wifi.BSSID); mirror.android.net.wifi.WifiInfo.mMacAddress.set(info, VASettings.Wifi.MAC); mirror.android.net.wifi.WifiInfo.mIpAddress.set(info, address); mirror.android.net.wifi.WifiInfo.mLinkSpeed.set(info, 65); if (Build.VERSION.SDK_INT >= 21) { mirror.android.net.wifi.WifiInfo.mFrequency.set(info, 5000); // MHz } mirror.android.net.wifi.WifiInfo.mRssi.set(info, 200); // MAX_RSSI if (mirror.android.net.wifi.WifiInfo.mWifiSsid != null) { mirror.android.net.wifi.WifiInfo.mWifiSsid.set(info, WifiSsid.createFromAsciiEncoded.call(VASettings.Wifi.SSID)); } else { mirror.android.net.wifi.WifiInfo.mSSID.set(info, VASettings.Wifi.SSID); } return info; }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new GetConnectionInfo()); addMethodProxy(new GetScanResults()); addMethodProxy(new ReplaceCallingPkgMethodProxy("getBatchedScanResults")); addMethodProxy(new RemoveWorkSourceMethodProxy("acquireWifiLock")); addMethodProxy(new RemoveWorkSourceMethodProxy("updateWifiLockWorkSource")); if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) { addMethodProxy(new RemoveWorkSourceMethodProxy("startLocationRestrictedScan")); addMethodProxy(new RemoveWorkSourceMethodProxy("startScan")); addMethodProxy(new RemoveWorkSourceMethodProxy("requestBatchedScan"));
addInjector(new WifiManagerStub()); addInjector(new BluetoothStub()); addInjector(new ContextHubServiceStub());
private static IPInfo getIPInfo() { try { List<NetworkInterface> interfaces = Collections.list(NetworkInterface.getNetworkInterfaces()); for (NetworkInterface intf : interfaces) { List<InetAddress> addrs = Collections.list(intf.getInetAddresses()); for (InetAddress addr : addrs) { if (!addr.isLoopbackAddress()) { String sAddr = addr.getHostAddress().toUpperCase(); boolean isIPv4 = isIPv4Address(sAddr); if (isIPv4) { IPInfo info = new IPInfo(); info.addr = addr; info.intf = intf; info.ip = sAddr; info.ip_hex = InetAddress_to_hex(addr); info.netmask_hex = netmask_to_hex(intf.getInterfaceAddresses().get(0).getNetworkPrefixLength()); return info; } } } } } catch (SocketException e) { e.printStackTrace(); } return null; }
@Override protected void onBindMethods() { super.onBindMethods(); addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new MethodProxy() { @Override public String getMethodName() { addMethodProxy(new GetConnectionInfo()); addMethodProxy(new GetScanResults()); addMethodProxy(new ReplaceCallingPkgMethodProxy("getBatchedScanResults")); addMethodProxy(new RemoveWorkSourceMethodProxy("acquireWifiLock")); addMethodProxy(new RemoveWorkSourceMethodProxy("updateWifiLockWorkSource")); if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) { addMethodProxy(new RemoveWorkSourceMethodProxy("startLocationRestrictedScan")); addMethodProxy(new RemoveWorkSourceMethodProxy("startScan")); addMethodProxy(new RemoveWorkSourceMethodProxy("requestBatchedScan"));