目录

在Ubuntu上开发Android

在 Ubuntu 16.04 LTS 上安装一个 kotlin 语言的 Android 开发和调试环境。

安装 adb 工具

1
2
sudo apt update
sudo apt install android-tools-adb

安装完成后就会有 adb 命令了,但 adb server 以非 root 运行时没有权限访问到连接的 Android 设备,会报 no permissions 的错误。

连接手机,通过 lsusb 命令查看手机的信息:

1
2
$ lsusb
Bus 001 Device 004: ID <VendorID>:<ProductID> Google Inc.

如果文件不存在则新建文件:

1
sudo vi /etc/udev/rules.d/70-android.rules

添加以下行:

1
SUBSYSTEM=="usb",ATTRS{idVendor}=="<VendorID>",ATTRS{idProduct}=="<ProductID>",MODE="0666"

重启 udev 服务:

1
sudo systemctl restart udev

重启 adb server:

1
2
adb kill-server
adb start-server

重新连接手机,即可看到设备:

1
adb devices

在 docker 容器中访问 Android 设备

Android 手机是 usb 设备,因此要在 Docker 容器中访问,只需要在创建 Docker 容器时额外添加以下参数:

1
--privileged -v /dev/bus/usb/:/dev/bus/usb

如果容器中缺少 lsusb 命令,可以安装:

1
sudo apt install usbutils

注意容器中的 adb-server 和宿主机中的 adb-server 互相冲突,只能启动其中一个。因此在容器中连接 Android 设备时,要将宿主机上的 adb-server 先 kill 掉。

1
adb kill-server

若还是在容器中看不到设备,可能要重新插拔 Android 手机。

安装 IntelliJ IDEA

从 Ubuntu software 中搜索 IDEA 安装 community edition 即可。

IntelliJ IDEA 自带 openjdk 和 kotlin 环境,新建 Android 项目时会提示安装 Android SDK,可以帮我们节省很多安装的工作。

参考