2011-10-02 47 views
43

USB反向绑定=手机通过USB从PC获取网络连接。Android USB反向绑定:如何欺骗应用程序

我知道该怎么做除了一个问题USB反向数据连线:很多Android应用程序将使用代码检查网络连接下面做任何有用的工作之前:即,使用USB倒车时

ConnectivityManager connectivityManager = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE); 
NetworkInfo info = connectivityManager.getActiveNetworkInfo(); 

的问题是上述代码将报告没有网络连接。但是,有一个网络连接(这是USB反向网络连接本身),而ping,wget和所有不做这种愚蠢检查的程序都能正常工作。

所以问题是:我怎样才能破解系统,让这个网络连接检查返回成功(以便我可以欺骗这些应用程序)?

顺便说一句。我使用Cyanogenmod 7.并且任何针对此MOD的解决方案也是受欢迎的。

+0

你是想为此做一个应用程序,或者只是寻找一个修改android系统来做到这一点?由于我不认为从Java代码的角度来看,你可以改变很多,以使整个系统认为它是连接的。 – user717572

+1

user717572:如果我们可以动态调整运行时参数,这是最好的。否则,我认为我们可能需要修改系统。欢迎任何适用的解决方案。 – Cyker

+0

你的应用程序启动了反向共享还是第三方的事情? –

回答

1

如果你正在做这么多黑客行为,我假设你可能会让你的设备生根。如果是这样的话,编写一个shell接口来向JNI发送命令到设备shell并接收STDOUT。使用此接口来运行可以解析为数组的netcfg命令 - 这将为您提供API隐藏的所有详细信息。它还允许您使用ipconfig命令覆盖Android设备设置。

至于使用它来发送和接收来自您的设备 - 以我的经验 - 您将不得不编译一个设备特定模块,可以在运行时加载到内核中。或者只需从制造商处下载内核,然后将模块编译到内核中,然后使用新的定制内核来刷机。

希望这会有所帮助。

1

为此,您需要下载ReverseTethering_3.19.zip文件(通过Google查找链接。) 提取到您想要的位置。

前提: -

  1. 只有扎根手机的工作。
  2. 应该启用USB调试。

现在通过USB连接线将您的rooted android手机连接到PC。等待PC识别您的手机。现在打开提取的zip文件并打开AndroidTool.exe具有管理权限。

现在点击android工具中的连接。

现在它试图连接和安装USB隧道apk在您的device.It还要求超级用户的权利。授予它。

最后,在成功建立连接后,您会看到。 https://drive.google.com/file/d/0B11p07T8VxhNNUdIM3gtTFR4N3M/view?usp=sharing (对不起,我不能上传图片)

现在你在互联网上你的手机和USB隧道的应用程序是installed.But你只能访问HTTP连接(即)仅适用于Chrome浏览器。 Play商店应用可能无法使用。

因此,你必须欺骗应用程序,并相信无论是移动连接到WiFi或移动数据。只有这样的应用程序工作

所以你必须去Android工具的工具菜单。 https://drive.google.com/file/d/0B11p07T8VxhNRXR3aTVUZUl1dVk/view?usp=sharing

现在安装hack(可选)。它安装Xposed框架并安装hack连接apk。只要按照说明操作,很容易。 黑客连接使得应用程序相信移动连接到WiFi或移动数据,具体取决于安装黑客连接后你做了哪种类型的黑客。最后在黑客攻击后,它要求重新启动。重新启动后,您可以在所有应用程序上使用USB反向共享享受互联网。