安卓手机使用数据线连接电脑上网

gnirehtet

gnirehtet:
https://github.com/Genymobile/gnirehtet
提供了手机使用电脑USB数据线上网的功能。

下载gnirehtet

进入releases页面:https://github.com/Genymobile/gnirehtet/releases

下载你电脑系统对应的版本即可,如果是Windows系统,则下载Windows版本。
当然,如果想夸平台使用的话,也可以下载Java版本。

解压,添加Path环境变量

我下载的是Windows版本的,下载后将其解压,把gnirehtet.exe所在的目录添加到path环境变量中。

运行gnirehtet

手机使用USB线连接到电脑上,并开启USB调试功能。

然后运行gnirehtet-run.cmd即可,第一次运行会安装gnirehtet.apk,并且要求开启VPN,点确定,授予权限即可。

这个时候手机就可以直接使用usb数据线上网了。可以关掉手机的网络验证。

gnirehtet命令

在您的Android设备上安装APK:

1
gnirehtet install [serial]

在另一个终端中,对于每个客户端,执行:

1
gnirehtet start [serial]

要停止客户端,请执行以下操作:

1
gnirehtet stop [serial]

要重置通道(在gnirehtet处于活动状态时拔下设备并重新插入时,有助于恢复连接):

1
gnirehtet tunnel [serial]

只有当adb devices输出多个设备时,才需要serial参数。

示例

使用USB数据线连接两个手机,执行adb devices -l命令,结果如下:

1
2
3
4
D:\Desktop>adb devices -l
List of devices attached
75aed56d device product:R9PlusmA model:OPPO_R9_Plusm_A device:R9PlusA transport_id:27
U8ENW18117021408 device product:LLD-AL10 model:LLD_AL10 device:HWLLD-H transport_id:28

现在我打算对serialU8ENW18117021408的手机安装gnirehtet.apk

进入gnirehtet根目录

对于path环境变量中的目录下的命令,在cmd中可以使用where命令进行查找:

1
2
3
D:\Desktop>where gnirehtet
F:\软件\可执行_USB上网\gnirehtet-rust-win64-v2.5\gnirehtet-rust-win64\gnirehtet.exe

然后进入gnirehtet的根目录:

1
2
3
D:\Desktop>F:

D:\Desktop>cd F:\软件\可执行_USB上网\gnirehtet-rust-win64-v2.5\gnirehtet-rust-win64

安装apk

输入gnirehtet install U8ENW18117021408命令把gnirehtet.apk安装到U8ENW18117021408这个手机上。

1
2
3
4
5
F:\软件\可执行_USB上网\gnirehtet-rust-win64-v2.5\gnirehtet-rust-win64>gnirehtet install U8ENW18117021408
2022-07-09 15:23:23.962 INFO Main: Installing gnirehtet client...
Performing Streamed Install
Success

看到Success就表示安装成功了

启动gnirehtet client

输入gnirehtet start U8ENW18117021408命令启动客户端。

1
2
3
4
F:\软件\可执行_USB上网\gnirehtet-rust-win64-v2.5\gnirehtet-rust-win64>gnirehtet start U8ENW18117021408
2022-07-09 15:26:18.162 INFO Main: Checking gnirehtet client...
2022-07-09 15:26:18.407 INFO Main: Starting client...
Starting: Intent { act=com.genymobile.gnirehtet.START cmp=com.genymobile.gnirehtet/.GnirehtetActivity }

此时,手机就可以通过USB数据线上网了,可以打开飞行模式,然后再打开一个需要联网的app验证一下。

参考资料

https://github.com/Genymobile/gnirehtet

需要import

import pyautogui
import time

1
2
3
pip install pyautogui==0.9.50
pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pillow

先绑定微软账号 再重装系统

先在电脑上登录微软账号,将当前正版的win10绑定到微软账号上。

重装win10系统,要与原来的系统一样(原来是家庭版,则安装家庭版,原来是专业版,则安装专业版)

重装系统后,使用微软账号登录,即可激活

阅读全文 »

根据进程名来查询父进程的PID

1
wmic process where Name="进程名.exe" get ParentProcessId

根据进程的PID来查询父进程的PID

1
wmic process where ProcessId=PID get ParentProcessId

前言

最近写了个Swing的工具程序,点击按钮时,按钮没有释放焦点。

这样下次切换到该程序时,容易误触发到上次点击的按钮。

jb.setFocusPainted(false);

调用JButton的setFocusPainted方法,并传入false作为参数即可释放该按钮的焦点。

1
2
3
JButton jb;
//去焦点
jb.setFocusPainted(false);
阅读全文 »

python截取字符串子串

在python中没有类似sub()或者类似Java的subString()的方法来截取字符串。

不过在Python中字符串的截取操作更加简单,可以用string[indexA:indexB]来截取字符串

阅读全文 »

python中如何退出多层循环

1、定义标记变量;利用变量值的变化退出循环
2、利用else continue和外层的break跳出循环
3、使用函数配合return关键字 实现跳出循环(在函数内部只要执行完return语句 则直接退出函数)

阅读全文 »