用Ubuntu开发Android的基本配置

移动开发 来源:CavalryLin 29℃ 0评论

回想楼主当初刚使用Ubuntu时,那叫个两眼一抹黑, 连个解压命令都不会,安装个中文输入法都得折腾好几个小时。。。
现在写这篇文章,是希望给第一次使用Ubuntu开发Android的童鞋一点点指导,希望他们可以轻松的上手Ubuntu. 本篇文章大概包含一下几个内容:

  • 中文输入法的安装
  • JDK/SDK/NDK的安装与环境变量配置
  • AndroidStudio的安装,启动
  • AndroidStudio中使用中文输入法
  • Ubuntu中创建快捷方式
  • Android模拟器的一些问题

中文输入法(搜狗)的安装

先声明一下, 楼主使用的是系统是: Ubuntu16.04 64位

  1. 下载搜狗输入法for linux
    下载下来是sogoupinyin_xxx.deb
    deb文件类似于Windows上的exe文件,可以直接运行的。
    但是由于这是第三方应用,ubuntu没有软件源无法识别安装

  2. 下载Gdebi用于安装搜狗输入法
    sudo apt-get install gdebi

  3. 安装搜狗输入法
    进入到搜狗输入法所在目录执行如下命令:
    sudo gdebi sogoupinyin.deb

  4. 启用搜狗输入法
    重启电脑,屏幕右上角的键盘按钮处会出现搜狗输入法,如下图


sogou1.png

如果没有出现搜狗输入法,继续第5,6步操作

5.点击屏幕右上角的小键盘, 在弹出的菜单中点击“配置”, 打开如下界面


sougou2.png

6.点击右下角 + 号, 出现如下界面, 去掉 “Only show current Language” 前的对勾, 在搜索框中输入 “sogou” 就会搜索到 “Sogou Pinyin” , 选中“Sogou Pinyin" ,如下图


sougou3.png

点击OK, 再重启电脑, 就可以看到搜狗输入法啦!

JDK/SDK/NDK的安装与环境变量配置

JDK,SDK,NDK的安装与环境变量的配置方法都相同。 所谓的安装就是把下载下来的包解压出来。JDK是需要自己手动下载和解压的, SDK、NDK可以通过AndroidStudio下载安装,就无需我们手动下载与解压,只需配置环境变量即可。 这里以JDK为例:

  1. 下载JDK(这没什么好说的)
  2. 解压JDK
    首先,在/home目录下建立一个java文件夹
    sudo mkdir /home/java
    解压JDK到/home/java目录下
    sudo tar zxvf ./jdk-7-linux-i586.tar.gz -C /home/java
    解压后/home/java目录下会出现一个jdk1.8.0_112的文件夹(不同JDK的版本文件夹的名字会稍许不同)
  3. 环境变量的配置
    打开配置文件
    sudo gedit /etc/profile
    然后在/etc/profile的文件末尾添加

    export JAVA_HOME=/usr/lib/jvm/jdk7
    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH

    保存后运行如下命令是环境变量生效
    source /etc/profile

  4. 配置默认JDK
    由于一些Linux的发行版中已经存在默认的JDK,如OpenJDK等。所以为了使得我们刚才安装好的JDK版本能成为默认的JDK版本,我们还要进行下面的配置。执行下面的命令:

    sudo update-alternatives --install /usr/bin/java java /home/java/jdk1.8.0_112/bin/java 300 
    sudo update-alternatives --install /usr/bin/javac javac /home/java/jdk1.8.0_112/bin/javac 300

    注意:如果以上两个命令出现找不到路径问题,只要重启一下计算机在重复上面两行代码就OK了

    执行下面的代码可以看到当前各种JDK版本和配置:
    sudo update-alternatives --config java

    执行java -version出现如下界面则表示运行配置成功

    java version "1.8.0_112" 
    Java(TM) SE Runtime Environment (build 1.8.0_05-b05) 
    Java HotSpot(TM) Server VM (build 23.1-b03, mixed mode)

    说一些题外话,关于环境变量的配置, 当初第一次使用Ubuntu系统时,我是很迷惑的。 网上有的说是配置/etc/profile, 有的说配置~/.bash_profile~/.bash_login~/.profile~/.bashrc . 这么多地方可以配置, 那我们到底配置在那里呢?

    其实Ubuntu系统(至少16.04版本是这样)只有/etc/profile~/.bashrc两处可以配置环境变量。 其中/etc/profile是系统级别的环境变量的配置,~/.bashrc是用户级别的环境变量的配置。

    “系统级别的环境变量的配置”和“用户级别的环境变量的配置”有什么区别的?
    因为Ubuntu是一个多用户操作系统,可以在一个系统中创建多个用户。 假设我创建了A,B两个用户。 如果我在/etc/profile中配置了JDK的环境变量,那么不论我以A用户登录或是以B用户登录,我都可以使用到已经配置好的JDK环境变量。 而如果我是以A用户登录,然后在~/.bashrc中配置JDK环境变量, 那么切换到B用户登录的话,就无法使用JDK, 因为每一个用户都会有一个独立~/.bashrc,而我们刚才只配置了A的~/.bashrc,而没有配置B的~/.bashrc

    至于其他的~/.bash_profile~/.bash_login~/.profile之类的配置文件, 这是其他Linux发行版本所有的, 与Ubuntu无关。

安装AndroidStudio

  1. 下载AndroidStudio: android-studio-ide-xxx.xxxxxx-linux.zip
  2. 解压 unzip android-studio-ide-xxx.xxxxxx-linux.zip -d android-studio
  3. 将解压出来的 android-studio移动到/home/ide目录下
    mv android-studio /home/ide
  4. cd到 /opt/android-studio/bin目录下,会有一个studio.sh的文件,执行
    sudo ./studio.sh
    即可运行AndroidStudio
  5. 第一次运行需下载SDK, 如果下载速度过慢, 可使用如下镜像:
    http://android-mirror.bugly.qq.com 端口:8080
  6. 如果你是64为系统,运行过程中会碰到 unable to run mksdcard SDK tool,

    unable.png

出现这个的原因是:64位Ubuntu需要安装32位的依赖包,执行如下命令即可

dpkg --add-architecture i386
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6

AndroidStudio中使用中文输入法

一切都搞定, 当你使用AS时, 发现没法输入中文!!!原因是AS运行是没有启用fcitx环境, 这该怎么解决呢? 很简单,我们需要将以下三行代码

export XMODIFIERS="@im=fcitx"
export GTK_IM_MODULE="fcitx"
export QT_IM_MODULE="fcitx"

添加到/bin/studio.sh中,如下图所示


studio.png

创建快捷方式

  1. /usr/share/applications目录下新建AndroidStudio.desktop
    sudo touch AndroidStudio.desktop
  2. 打开AndroidStudio.desktop
    sudo gedit AndroidStudio.desktop
  3. 写入如下内容并保存
    [Desktop Entry]
    Name = AndroidStudio
    Comment= AndroidStudio
    Exec=/home/ide/android-studio/bin/studio.sh
    Icon=/home/ide/android-studio/bin/studio.png
    Terminal=false
    Type=Application
  4. 按住Ctrl将图标拖动到左侧laucher

创建Android模拟器遇到的一些问题

如果在创建模拟器的时候遇到NoSuchFileException (在Event Log 窗口中输入的日志)

NoSuchFileException: /home/xxx/.android/avd/Nexus_5_API_22.ini

将 /root/.android/avd 复制到 /home/xxx/.android/ 下即可
sudo cp /root/.android/avd /home/xxx/.android/
然后修改一下权限
sudo chmod -R 777 /home/xxx/.android
OK,大功告成!!!