首页
登录 | 注册

ubuntu 14.10 lts 64-bits环境下使用Android Studio

  距离google发布android studio 1.0正式版已经两个月左右了。由于一直习惯使用eclipse+ADT的模式,而且曾在windows下试用一次Android Studio预览版,感觉卡的不行,就暂时搁置下来了。今天突发奇想,不知道在linux下使用android studio是否会比windows下更加流畅。下面是基本的搭建过程,以及遇到的一些问题:
一、安装用的文件
  1.ubuntu 14.10 LTS 64-bits(由于使用了64-bits的操作系统,在运行android studio时遇到了一些库的问题)
  2.jdk-8u25-linux-x64.tar.gz ( http://www.oracle.com/technetwork/java/javase/downloads/index.html)
  3.android-studio-ide-135.1641136-linux.zip(developer.android.com/index.html)
  4.android-sdk_r24.0.2-linux.tgz(developer.android.com/sdk/index.html)

二、搭建java环境
  笔者将所有安装用的文件都放在了Documents文件夹下。
  1.将jdk解压并拷贝至/usr/lib/java路径下:
    cd ~/Doucements
    tar -zxf jdk-8u25-linux-x64.tar.gz
    sudo cp -r ~/jdk1.8.0_25 /usr/lib/java
  2.配置环境变量
    sudo gedit ~/.profile
    在末尾添加下面这一行:
    export JAVA_HOME=/usr/lib/java/jdk1.8.0_25
    保存并关闭,然后使用source进行更新:
    source ~/.profile
    查看环境变量中JAVA_HOME的值:
    env|grep JAVA_HOME
    如果显示:
    JAVA_HOME=/usr/lib/java/jdk1.8.0_25
    说明配置成功
  3.修改系统默认的jdk
    sudo update-alternatives --install /usr/bin/java java/usr/lib/java/jdk1.8.0_25/bin/java 300
    输入sun jdk前的数字
    sudo update-alternatives --install /usr/bin/javac javac /usr/lib/java/jdk1.8.0_25/bin/javac 300
    sudo update-alternatives --config java
    sudo update-alternatives --config javac
  4.完成上述操作之后,查看当前java 的版本:
    java -version
    反馈如下:
    java version "1.8.0_25"
    Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
    Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
    至此,jdk安装成功。
三、android studio安装
  android studio 的安装比较简单,只要解压就可以了,笔者习惯在home下面新建一个Software文件夹,用来存放这类软件(绝大部分空间在安装系统的时候分配给了/home)。
  将android studio和sdk解压并拷贝至~/Software(方法同jdk,不再赘述)
  此时,直接运行如下命令即可打开android studio:
  sudo ~/Software/android-studio/bin/studio.sh
  如果不想每次打开都要输入命令,可以新建快捷方式,在桌面新建一个文件,命名为Android Studio.desktop,将下面的内容修改路径之后复制进去保存即可(Exec的 gksu最好保留,我之前没有加,在跟Android Studio的启动界面相面了半个小时之后,才突然意识到是不是必须得有权限才行)

[Desktop Entry]
Name=Android Studio
Encoding=UTF-8
Exec=gksu ~/Software/android-studio/bin/studio.sh
Icon=~//Software/android-studio/bin/androidstudio.ico
StartupNotify=true
Terminal=false
X-MultipleArgs=false
Type=Application
Categories=GTK;Utility;TerminalEmulator;
NoDisplay=true
X-Ubuntu-Gettext-Domain=gksu
Comment[en_US]=

  首次运行android studio会在安装的时候询问standard还是custom,后者可以在安装的过程中指定sdk 的目录。笔者已经提前下载了android-sdk-linux,放在~/Software路径下,于是选择了后者,这样省去了很多时间。但是即便如此,还是发现迟迟不能完成安装。推测可能是由于还是有东西需要下载,但是无奈 墙高高几许,直耸入云端,因此下载速度比较慢,或者根本就没有在下载。你有张良计,我有过墙梯,笔者最终选择了使用修改http代理的方式变天堑为通途的,方法如下:
  在android-studio/bin目录下有一个文件名为idea.properties,打开该文件并在末尾添加
    disable.android.first.run=true
  关掉首次运行的安装向导,重新打开android studio,在file->settings里面可以看到HTTP Proxy,可以在这里安放你的过墙梯。(.ps sdk manager的tools->options里面也有相同的可设置的地方)
  将刚刚添加的disable.android.first.run=true删除,再次运行android studio,速度应该会快很多。
四、工程的新建和运行
  还是以Hello World为例,其实整个新建的过程跟eclipse+ADT差不多,只是界面有些不一样,
  这里不再多说。首次新建的过程中要下载Gradle,如果过墙梯放的很稳的话,一般不会像网上说的那样要两个小时,笔者感觉瞬间就好了。
  新建工程之后的界面感觉确实要好看一些,其实整个布局也不会让人觉得过于陌生,感觉很快就可以用熟练了。暂时先找到那几个安卓机器人图标跟运行图标就可以运行Hello World了。
  在菜单栏可以很明显的看到三个有安卓机器人的图标,分别是AVD manager、SDK manager和android device manager。我通过SDK manager更新了android 5.0的API,然后点击打开AVD manager,点击create virtual device新建虚拟机,这里我直接克隆了Nexus 6 API 21,在列表的最后一栏“Action”中可以看到运行的绿色三角图标,点这个就可以运行虚拟机了。实际测试我发现并没有比其他平台或者比eclipse速度更快一些,不知道是笔者的电脑配置不行还是有其他方面的问题。
  在android studio的菜单栏里面也有一个绿色的运行按钮,直接点击就可以运行Hello World。笔者在运行的时候遇到了很多问题,整理如下:
    1.最开始的时候,点击run之后,进度条跑一会之后,会弹窗提示:
      ADB not responding. You can wait more,or kill"abd.exe" process manually and click 'Restart'
    我发现并没有正在运行的adb,且adb专用的5037端口并未被占用。于是我进入adb所在的路径下:
      cd  ~/Software/android-sdk-linux/platform-tools/
    然后直接运行adb,奇怪的是该路径下明明有adb,但是我运行之后却提示未找到命令,无奈我只好按照提示在该路径下用apt-get install安装了一下adb,之后再次运行Hello World!
    2.此时不再提示之前的adb错误,但是仍然弹窗显示adb:error while loading shared libraries:libstdc++.so.6:cannot open shared object file。笔者想,这好办啊,于是:
      sudo apt-get install lib32stdc++6
    没想到再次运行还是不行,依然提示类似的lib相关的问题。笔者突然发现这类的提示都是32,可是笔者的系统是64位的啊,难道谷歌只基于32位进行了构建?于是乎:
      sudo apt-get install ia32-libs
    提示:
      Package ia32-libs is not available, but is referred to by another package.
      This may mean that the package is missing, has been obsoleted, or
      is only available from another source
      However the following packages replace it:
        lib32z1 lib32ncurses5 lib32bz2-1.0
    安装给出的三个建议选项:
      sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
    安装完成后再次运行Hello World,bingo!

  总结:整个过程中遇到的问题可能都是由于32位系统和64位系统的差异引起的,想要验证的在linux下是否android studio更加流畅,就目前来看答案是否定的。但是如果将笔者的笔记本配置以及使用的ubuntu操作系统本身已经被弄的比较臃肿等前提考虑进来,这个流畅性的问题还是有待商榷的。后续会在熟悉了该IDE之后,继续记录。


相关文章

  • [翻译 EF Core in Action 1.10] 应该在项目中使用EF Core吗?
    Entity Framework Core in Action Entityframework Core in action是 Jon P smith 所著的关于Entityframework Core 书籍.原版地址. 是除了官方文档外另 ...
  •         前面写过一篇centos7下搜狗输入法的安装教程,现在把搜狗输入法在Ubuntu下的安装方法也记录一下,相比之下Ubuntu下安装搜狗输入法要简便得多 安装fcitx以支持搜狗输入法 sudo add-apt-reposit ...
  • Day1----Python学习之路笔记(1)
    学习路线 Day1 Day2 Day3 Day4 Day5 ...待续 一.了解开发语言 1.高级语言:Python,Java,C++,C#,PHP,JS,Go,Ruby,SQL,Swift,Perl,Objective-C,R等等: 2. ...
  • Npoi简单读写Excel
    什么是NPOI ? 简而言之,NPOI就是可以在没有Office的情况下对Word或Excel文档进行读写等操作. 使用方式 : 1.准备NPOI的dll文件 下载链接:https://npoi.codeplex.com/releases ...
  • 1 最有影响力的30篇计算机视觉会议论文 选取论文的原则: (1)会议论文,主要来源于以下会议:CVPR, ICCV, ECCV, BMVC, FG, ICIP, ICPR, WACV, ICASSP, MM, IJCAI, UAI, AA ...
  • 页面性能优化-原生JS实现图片懒加载
         在项目开发中,我们往往会遇到一个页面需要加载很多图片的情况.我们可以一次性加载全部的图片,但是考虑到用户有可能只浏览部分图片.所以我们需要对图片加载进行优化,只加载浏览器窗口内的图片,当用户滚动时,再加载更多的图片.这种加载图片的 ...

2020 cecdns.com webmaster#cecdns.com
12 q. 0.066 s.
京ICP备10005923号