我花了很长时间研究如何在Mac上设置adb,所以我认为编写如何设置它可能对某些人有用。adb是在手机/模拟器上安装和运行android应用程序的命令行工具
当前回答
Mac端口
android平台工具似乎是最近才首次添加到MacPorts中的-在2018-10-20年,在java/android平台工具/Portfile下:
https://www.macports.org/ports.php?by=name&substr=androidhttps://github.com/macports/macports-ports/blob/master/java/android-platform-tools/Portfilehttps://github.com/macports/macports-ports/commit/7fde64249deb97c97edb37699f1ee8076c98d41a#diff-f03a90b4债务82935eb39763ecd988f2
它似乎依赖于谷歌提供的编译二进制文件;看起来二进制文件的源代码可能不可用。
adb二进制文件
从上面对android平台工具/Portfile进行反向工程,发现为了构建端口,从Google获取了以下存档:
https://dl.google.com/android/repository/platform-tools_r28.0.1-darwin.zip
abd二进制文件是预编译的,可在上述存档中的平台工具/adb中获得,根据文件(1),这是一个Mach-O 64位可执行x86_64。它已经准备好使用了,并且似乎没有任何外部依赖性(例如,看起来不依赖于java或任何东西)。
使用adb
为了使用adb重新启动设备,例如,如果电源按钮卡住,可以使用以下步骤:
cd /tmp
curl https://dl.google.com/android/repository/platform-tools_r28.0.1-darwin.zip -o apt.zip
unzip apt.zip
./platform-tools/adb devices
./platform-tools/adb reboot
重启后首次使用时,您还必须首先通过允许USB调试确认与手机的配对?在手机上弹出(手机必须通过开发者选项启用USB调试,无需root访问)。
其他回答
考虑到您已经下载了SDK平台工具。
此命令将在本地设置ADB。因此,如果您关闭终端并再次打开它,ADB命令将无法工作,直到您再次运行此命令。
export PATH=~/Library/Android/sdk/platform-tools:$PATH
这些命令将全局设置ADB。因此,一旦运行了这些命令,下次就无需再次设置它们。
echo 'export PATH=$PATH:~/Library/Android/sdk/platform-tools/' >> ~/.bash_profile
source ~/.bash_profile
在我的例子中,我安装了Android studio,并安装了一些应用程序(rust-lang)来更改~/.profile,在~/.bash_profile中添加adb使rust不可执行,因此我只对~/.prrofile进行了更改,如下所示:
$ echo 'PATH=$PATH:$HOME/Library/Android/sdk/platform-tools/' >> ~/.profile
$ source ~/.profile
$ adb --version
Android Debug Bridge version 1.0.41
Version 29.0.4-5871666
Installed as /Users/hasan/Library/Android/sdk/platform-tools/adb
cd sdk/platform tools/,然后使用/改为adb设备
如果您正在使用ZSH,并且有Android Studio 1.3:1.打开.zshrc文件(位于主目录中,文件是隐藏的,因此确保您可以看到隐藏的文件)2.在末尾添加此行:alias adb=“/Users/kamil/Library/Android/sdk/platform tools/adb”3.退出终端4.打开终端并键入adb设备5.如果成功,它将为您提供所有连接设备的列表
在我的情况下:我(在mac上)做了以下操作:
备份了“.bash_profile”和“.profile”清除了所有与android相关的路径。创建了新路径,但这一次,我将相应的文件夹{/…/sdk、/…/tools、/…/platform tools}拖到了终端中。我对“.bash_profile”和“.profile”都这样做。然后在成功保存每个文件后。我重新启动了终端,只是为了确定我所做的修改。然后我继续测试adb现在是否响应。。。通过键入:(在终端中)adb设备我仍然没有运气(我的设备)没有显示,然后我仍然重新启动了adb。我继续做“android更新adb”。这只是杀死并重启了adb我再试了一次,但设备仍然没有显示。我完全备份了我的android设备,并将整个手机重新设置为出厂默认值,然后激活设备进行开发,并允许在其设置>应用程序中进行usb调试。
********工作得很有魅力********
我用命令“adb devices”再次尝试,一切恢复正常,设备可见。
祝你一切顺利。只是不要放弃。我花了很多时间排除故障。祝你好运。
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 为什么在Mac OS X v10.9 (Mavericks)的终端中apt-get功能不起作用?
- 碎片中的onCreateOptionsMenu
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- DSL元素android.dataBinding。enabled'已过时,已被'android.buildFeatures.dataBinding'取代
- ConstraintLayout:以编程方式更改约束
- PANIC: AVD系统路径损坏。检查ANDROID_SDK_ROOT值
- 如何生成字符串类型的buildConfigField
- Recyclerview不调用onCreateViewHolder
- Android API 21工具栏填充
- Android L中不支持操作栏导航模式
- “你有邮件”的消息在终端,os X