Ubuntu 14.04 AMD 64位 下 Android Studio 的安装
Ubuntu 14.04 AMD 64位 下 Android Studio 的安装
作者:yoyoyosiyu
邮箱:yoyoyosiyu@163.com
时间:2015年8月25日
Android Studio 的安装之所以难,是因为国内有GFW的原因,造成安装过程中需要的SDK需要通过网络下载被墙。要突破这个障碍其中一个方法就是使用VPN, 这样一来我们为了装个AS,还得去张罗VPN,费时费钱不说,速度还不一定够快。经过我的摸索和参照网上一些资料,终于发现了Linux下安装AS的一些诀窍,如果您仔细的看完我的文章,你将会发现安装AS不再是一件可怕的事情,而且非常轻松。
由于我在前面磕磕碰碰的摸索,并未来得及去截图,所以后面装好后,才根据掌握到的思路来写这篇文章,所以其中的碰到一些问题或许遗漏了解决方法,如果是这样,或许将来有机会再安装的时候,碰到了再回头对这篇文章进行修改。现在来说,先把大致的思路写出来,明白了其中的原理相信解决起来就不会太难了。
先列一下我的环境:
Ubuntu 14.04 LTS
Android Studio 1.3
JDK 1.8
AMD 64位CPU
8G内存
Genymotion 虚拟机
Ubuntu 14.04 安装:
<略过>
Android Studio 安装:
1.先安装JDK
这个基本没有什么难度,网上找一找资料很多。
2.下载Android Studio 和 Android SDK
因为国内有墙,上不了谷歌,所以推荐国内的下载点:http://www.android-studio.org/index.php/download。在安装过程中会根据实际的情况更新SDK,所以推荐的网站也列出了国内的部分镜像站点,但本人实验一下效果也一般,这里推荐一个更好的:栋力无限,地址:mirrors.dormforce.net,端口:80 . 这里给个链接,可以参考,但没有必要按照其设置:buntu.uestc.edu.cn/android/repository/
3. 解压 Android Studio 和 Android SDK
一般我喜欢将 AS(android studio)解压到 /opt/android/studio 下, 而 SDK 解压到 /opt/android/sdk下,这个根据个人的喜好来决定。这里要注意的是Linux下的AS安装和window下不同,实际上Linux下的AS解压完后的存放的位置就是以后AS的使用位置,根据我们使用window的习惯,window的程序一般都有一个安装程序,运行安装后,它会让你指定一个安装路径,然后安装程序负责将程序安装到指定的位置。
解压完AS后,进入AS的解压路径, 我们可以用Ctr + Alt + T打开控制台, 然后 cd /opt/android/studio/bin. 然后运行 sh studio.sh (注意是在 bin 目录下运行)
如果你没有FQ,你会发现很悲cui, 因为安装过程(实际上是设置和更新SDK过程,和Windows的安装不同)要到谷歌的站点下载SDK包。不过没有关系,有办法跳过安装:http://blog.163.com/hwh04@126/blog/static/103419982201532610489243/
。简单来说就是修改AS的bin目录下的 idea.porperties 文件,在文件的最后一行添加:disable.android.first.run=true, 然后再运行 sh studio.sh 后发现 AS已经直接可以使用了。
不过这个办法是有副作用的,就如文中所说,不过知道这个选项也不错。我发现有另外一个更好的办法,就是运行向导后,在点击取消,AS的向导会问你下次打开是否运行向导,选择不的,然后就会出现AS安装完成每次启动后问你建立新工程还是打开原有工程的对话框,对话框还有设置的条目。
这里将开始告诉你如何顺利的安装 AS
第一步: 进入SDK的解压路径(在我的例子为:/opt/android/sdk/),然后再进入tools目录,运行 android
cd /opt/android/sdk/tools
android
运行完上面的命令后,将打开 Android SDK Manager, 然后找到其中的 Tools菜单(注意 Ubuntu系统中菜单栏并不和主窗体在一起,在屏幕最上方, 注意看截图红框圈住的地方,如果没有看到,确保SDK Manager窗口处于焦点状态)
选择Tools 菜单下的 Options,打开设置窗口,并且按照图中红框圈起的地方填写:
好,到目前为止,Android SDK Manager 的设置就完成了,现在不用着急下载更新,直接关掉就行。
第二步:设置 Android Studio
1. 首先进入AS的解压路径下的bin目录,在我的例子为 /opt/android/studio/bin
cd /opt/android/studio/bin
2. 启动 Android Studio
sh studio.sh
3. 稍作耐心的等待,等待出现欢迎界面,然后选择取消,将弹出一个对话框选择“不要重新运行向导“
然后将出现 AS 的启动对话框:
以此选择 Configure -> Project Defaults -> Project Structure:
然后将出现如下对话框,我们在SDK Location 填入: /opt/android/sdk/, 在 JDK location 填入: /usr/lib/jdk-1.8 (注意这里需要根据你自己机器上SDK 和 JDK的实际存放路径)
OK, 到这里AS的设置基本上就完成了。当你开始使用AS之后,AS会根据你的工程设置下载想对应的SDK包。
其他你需要知道的:
1. AS 的用户配置文件在 ~/.AndroidStudio1.3 下(注意文件夹名称最后的数字与AS的版本号对应, ~符号在linux下对应 /home/<你自己的账号名称>/), 而 SDK的设置文件一般放在 ~/.android目录下, SDK更新的代理地址设置放在 androidtool.cfg 下面贴出我的机器的androidtool.cfg内容:
### Settings for Android Tool
#Sat Aug 22 00:09:08 CST 2015
http.proxyPort=80
sdkman.enable.previews2=true
http.proxyHost=mirrors.dormforce.net
sdkman.ask.adb.restart=false
sdkman.show.update.only=true
sdkman.force.http=true
sdkman.use.dl.cache=true
注意加粗字体的两行
2. 在linux 下删除AS,除了AS解压的目录之外,还要删除对应的 ~/.AndroidStudio1.3 目录, 同理,要删除 Android SDK 也要删除 ~/.android 目录。
3. Genymotion 虚拟机安装, 因为我是AMD的CPU, 我在window系统下用不了SDK 带的虚拟机,所以只好用Genymotion,而且Genymotion 也不错。注意在linux下Genymotion 是不带 VirtualBox的,需要另外安装,不过都不难
一些问题的解决方法:
1. 在 64位系统下编译android 程序还会碰到下面这个问题:aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory 这是因为 aapt需要32位版本libz库,可通过如下方法解决:
sudo apt-get install libc6:i386 libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386 libstdc++6:i386
sudo apt-get install lib32z1
(这里也列出我参考过的文章(注:我并没有完全按照其中的方法步骤来做:http://www.th7.cn/Program/Android/201507/514976.shtml , http://blog.163.com/china_uv/blog/static/11713726720136931132385/
Ubuntu 14.04 AMD 64位 下 Android Studio 的安装的更多相关文章
- Ubuntu Server(Ubuntu 14.04 LTS 64位)安装libgdiplus2.10.9出错问题记录
首先下载libgdiplus2.10.9安装包 wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.t ...
- win7 64 + Ubuntu 14.04.1 64双系统安装,详解UEFI ~ GPT和legacy ~ MBR区别
win7 64 + Ubuntu 14.04.1 64双系统安装 背景:我的笔记本之前的系统是window 7 64 + Ubuntu 14.04.1,用UEFI引导系统.安装过程是先装的win7,再 ...
- Ubuntu 16.04 LTS 64位系统 安装Docker
本文开发环境为Ubuntu 16.04 LTS 64位系统,通过apt的docker官方源安装最新的Docker CE(Community Edition),即Docker社区版,是开发人员和小型团队 ...
- ubuntu 16.04 的64位 安装arm-none-linux-gnueabi-gcc的步骤和问题解决
一 首先下载arm-none-linux-gnueabi-gcc交叉编译器,根据不同的需求请在网址: https://launchpad.net/gcc-arm-embedded/+download ...
- 简单Window下 Android Studio的安装
(1)首先安装JDK 下载JDK 本人觉得官方网站下JDK比较慢,可以直接百度JDK,(如果是64位 百度搜索记得+64位)
- Ubuntu 14.04(32位)安装Oracle 11g(32位)全过程
1.将系统更新到最新:sudo apt-get updatesudo apt-get dist-upgrade2.安装Oracle所需的依赖包:sudo apt-get install automak ...
- [转]win7 64位下android开发环境的搭建
本文转自:http://www.cfanz.cn/index.php?c=article&a=read&id=65289 最近换了新电脑,装了win7 64位系统,安装了各种开发环境, ...
- win7 64位下android开发环境的搭建
本文转自:http://www.cfanz.cn/index.php?c=article&a=read&id=65289 最近换了新电脑,装了win7 64位系统,安装了各种开发环境, ...
- ubuntu 12.04 LTS 64位兼容运行32位程序
安装完Goagent,运行的时候出现了问题,在网络上翻看一些关于ubuntu的文档时,突然记起自己安装的是64位版,而goagent应该是32位的,于是通过sudo apt-get install i ...
随机推荐
- 23.跳台阶问题[Fib]
[题目] 一个台阶总共有n级,如果一次可以跳1级,也可以跳2级.求总共有多少总跳法,并分析算法的时间复杂度. [分析] 首先我们考虑最简单的情况.如果只有1级台阶,那显然只有一种跳法.如果有2级台阶, ...
- kettle转换JavaScript获取命令行参数
日常开发中由于很多参数是变化的,需要在部署时才能确定.而写在配置文件里又显得很笨重,因而可以运行时实时指定.那么kettle是怎么获取命令行中的参数的呢? kettle可以通过转换里的JavaScri ...
- codeforces B. Fixed Points 解题报告
题目链接:http://codeforces.com/problemset/problem/347/B 题目意思:给出一个包含n个数的排列a,在排列a中最多只能作一次交换,使得ai = i 这样的匹配 ...
- 用Navicat for oracle导入现有数据库
重要参考:http://www.admin5.com/article/20130420/499241.shtml 前期准备,参考另一篇随笔. 安装Oracle,PL/SQL, 新建表空间myTS,新建 ...
- WebSocket技术
webSocket技术 在html5技术革新中,加入了WebSocket技术 1.webSocket实际是TCP连接 webSocket在最初将发送http连接请求到服务器端, 但是在header中加 ...
- [MAC] 在标题栏上显示目录完整路径
转载自 :http://www.cnblogs.com/yipu/archive/2013/03/13/2956957.html 当我们使用Finder浏览文件的时候,当前目录的名字会显示在标题栏顶端 ...
- Merge和Rebase在Git中的区别
git命令Merge和Rebase的区别 git merge 会生成一个新得合并节点,而rebase不会 比如: D---E test / A---B---C---F master 使用merge合并 ...
- SQLite常用网址
英文版SQLite官网: http://www.sqlite.org/rescode.html中文版SQLite官网:http://www.helplib.net/s/sqlite/9/167.sht ...
- ytu 2030: 求实数绝对值(水题)
2030: 求实数绝对值 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 10 Solved: 10[Submit][Status][Web Board] ...
- 面向服务的体系结构(SOA)——(4)对于服务的理解
在接触SOA之前对"服务"这个词没有太多的感触,无非就是为别人做事情么.当然在SOA中这个词也脱离不了这层基本的涵义,但是具体到实际的架构中对这个词的理解就更加深刻了.本文就以&q ...