Android的USB反向共享:如何欺骗应用程序
USB反向共享=手机通过USB从PC获得networking连接。
我知道如何做USB反向networking连接,除了一个问题:许多Android应用程序将使用以下代码检查networking连接之前做任何有用的工作:
ConnectivityManager connectivityManager = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info = connectivityManager.getActiveNetworkInfo();
问题是,当使用USB反向共享时,上面的代码将报告没有networking连接。 但是,有一个networking连接(这是USB反向绑定本身),和ping,wget和所有不做这个愚蠢的检查程序工作正常。
所以问题是:如何破解系统,让这个networking连接检查返回成功(以便我可以欺骗这些应用程序)?
BTW。 我使用Cyanogenmod 7和任何特定的解决scheme,也是受欢迎的。
这可能是你在找什么
http://blog.mathieu.carbou.me/post/60454997009/reverse-usb-tethering-with-android-22
还有这个项目:
http://www.codeproject.com/kb/android/usbportforwarding.aspx
而且在Android市场上的一个应用程序(付费,免费试用):
https://market.android.com/details?id=com.littlelan.ReverseTether.Trial
如果你正在做这么多的黑客行为,我认为你可能会有你的设备植根。 如果这样编程一个shell接口,用JNI发送命令到设备shell并接收STDOUT。 使用这个接口来运行一个netcfg命令,这个命令可以被parsing成一个数组 – 这会给你提供API隐藏的所有细节。 它还允许您使用ipconfig命令覆盖Android设备设置。
就我的经验来说,使用它来发送和从设备接收数据,你将不得不编译一个可以在运行时加载到内核中的设备模块。 或者只需从制造商处下载内核,然后将该模块编译到内核中,然后使用新的定制内核来刷机。
希望这可以帮助。
要做到这一点,你必须下载ReverseTethering_3.19.zip文件(谷歌它find链接。)提取到您想要的位置。
先决条件 : –
- 只有根植的电话工作。
- USBdebugging应该启用。
现在通过USB连接线将你的Android手机连接到PC。等待PC识别你的手机。 现在打开提取的zip文件,并用pipe理员权限打开AndroidTool.exe 。
现在点击Android工具中的连接。
现在它试图连接和安装USB隧道apk在您的device.It还要求超级用户的权利。 授予它。
最后,成功build立连接后,你会看到。 https://drive.google.com/file/d/0B11p07T8VxhNNUdIM3gtTFR4N3M/view?usp=sharing (对不起,我无法上传图片)
现在,您的手机上已经连接了互联网,并且已经安装了USB隧道应用程序。但是您只能访问HTTP连接(即;),只能在Chrome中使用。 Play商店应用可能无法正常工作。
所以你必须欺骗应用程序,并相信无论是移动连接到WiFi或移动数据。 只有应用程序工作。
所以你必须去Android工具的工具菜单。 https://drive.google.com/file/d/0B11p07T8VxhNRXR3aTVUZUl1dVk/view?usp=sharing
现在安装黑客(可选)。它安装Xposed框架并安装黑客连接apk。 只要按照说明,很容易。 黑客连接使得应用程序相信移动连接到WiFi或移动数据取决于你安装黑客连接后做了哪种types的黑客。 最后,黑客要求重启。 重新启动后,您可以在所有应用程序上使用USB反向共享享受互联网。