栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

关于WSL中adb不能正常使用的问题

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

关于WSL中adb不能正常使用的问题

关于WSL中adb不能正常使用的问题 问题描述

最近遇到一个很抓狂的事情,我在Windows中和WSL中都安装了Android-platform-tools(其中也就包含了adb),但是Windows种的adb能用,而wsl中的adb检测不到机器。

Windows中是通过下载最新的tools到某个文件夹,再指定环境变量的方式来配置的。

在配置Windows这边的tools之前,wsl中的是可以正常使用的,即使我安装了Android Studio。但是配置Windows的之后,就遇到这种问题了。Windows这边能正常检测机器,但是wsl这边不能检测到。

倒也不是说Windows的不能用,只是Windows的shell着实差点意思,比如输入adb之后,再tab补齐啥的。

关于网上的说法

问题所在其实网上很多已经说了,就是因为两边的adb版本不一致导致的。但是他给出的解决方案是用apt更新tools。

其实根本没有用,因为apt里面的tools更新得不如谷歌官网快(现在apt还留在1.0.3x的版本吧,连无线调试都不支持)。而且版本要求非常严格,如下:


像这样,都是1.0.41,但是下面得version不一致,都是不行的。

另外一种直接在wsl中调用exe的方法太麻烦了。

解决办法

所以只能同时更新两边的platform-tools来解决这个问题(linux不能用apt)。注意必须一起更新,隔几天版本的小编号可能就变了。

Windows下的更新

我各人比较推荐的办法就是我上面说的那种,放到一个目录下,然后指定环境变量,这样可以直接在终端调用,不用每次进到文件夹。
下载地址:platform-tools-latest-windows.zip
解压到某个目录,然后把目录地址保存到环境变量中。(简单一下环境变量配置方法,也不啰嗦了)

WSL下的更新
  • 安装这一部分参考了知乎叶铁柱师傅的方法:Linux系统的adb版本升级
  • 先要移除apt安装过的platform-tools,直到你输入adb他告诉你没有这个命令才进行下一步安装。
    移除命令的话就是apt remove xxx,我记得我移除了三个,android-sdk-platform-tools、android-sdk-platform-tools-common、android-libadb
  • 依次执行以下命令:
# 创建并进入Android文件夹,这里的创建路径可以按照你自己的想法来
mkdir ~/Android && cd ~/Android
# 获取最新的tools的zip包,放到当前目录
wget https://dl.google.com/android/repository/platform-tools-latest-linux.zip 
# WSL默认没安装unzip,解压缩之前自己apt安装一下
sudo apt install unzip # 本来就安装了的话则跳过
# 解压缩
unzip platform-tools-latest-linux.zip
# 写入命令别名,并更新命令
# 如果用的zsh终端就把.bash_aliases改成.zsh_aliases
echo "alias adb='~/Android/platform-tools/adb'" >> ~/.bash_aliases && source ~/.bash_aliases
echo "alias fastboot='~/Android/platform-tools/fastboot'" >> ~/.bash_aliases && source ~/.bash_aliases

更新:这里遇到一个问题。因为Linux中,~符号代表的意思是当前用户的用户文件夹,所以在配置的时候你是root权限下,那就只能在root权限下使用,非root权限下配置的话,那以后只能在非root权限下使用。

所以后来我选择了把上面的文件放在/home/用户名这一个文件夹下,或者其他的文件夹也可以,在写echo那句命令的时候记得改成全路径,不要用~来代替用户文件夹。

echo的时候也直接往.bashrc文件里面echo,不然每次都要重新执行一下~/.bash_aliases && source ~/.bash_aliases才能用

结果

WSL中

Windows中

至此,两边版本号完全相同,且都能识别到Android机器。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/270565.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号