實測,linux下使用android studio開發,資源占用少,模擬器速度快(比win的2.0快很多)。
測試時間
2016/7/2
系統軟硬
操作系統:Ubuntu Kylin 16.04 64位
硬件:筆記本
CPU:i5-3210m
內存:8g ddr3 1600
android studio
android-studio-ide-143.2821654-linux.zip64位來源:http://www.android-studio.org/
android sdk
android-sdk_r24.4.1-linux.tgz來源:http://www.android-studio.org/
jdk
jdk-8u91-linux-x64.tar.gz 64位來源:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
測試結果:chrome瀏覽器打開5+網頁(還是firefox好用),android studio,一個虛擬機(lollipop),gnome-system-monitor查看cpu最高11%,內存 52%,模擬器打開的速度和操作的流暢度以及這個時候的系統流暢度都明顯比win7好。win7平時是內存97%,打開chrome也是這個數,但是會卡。
1 jdk安裝和環境變量配置
jdk-8u91-linux-x64.tar.gz壓縮包提取得到文件夾jdk1.8.0_91
1.1 將jdk1.8.0_91復制到/usr/lib/jvm目錄
(1)使用終端命令:sudo nautilus;進入根目錄,將jdk1.8.0_91復制到/usr/lib/jvm(由于參考網上資料,所以放在該目錄,可指定其他目錄),
(2)配置環境變量,終端命令:sudo gedit /etc/profile
在打開的文檔的最后新起一行,添加如下:
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_91
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
(3)終端命令source /etc/profile
(4)終端命令java -version
出現如下內容則表示配置成功:
java version "1.8.0_91"Java(TM) SE Runtime Environment (build 1.8.0_91-b14)Java HotSpot(TM) 64-Bit Server VM (build 25.91-b14, mixed mode)
(5) 環境變量配置完畢,指定全局jdk版本,否則可能導致android sdk java not found
sudo update-alternatives –install /usr/local/bin/java java [你的JDK安裝路徑]/bin/java 0
sudo update-alternatives –install /usr/local/bin/javac javac [你的JDK安裝路徑]/bin/javac 0
~:update-alternatives --display java
查看全局jdk版本
2 android studio安裝
2.1 sdk環境配置
(1)android-sdk_r24.4.1-linux.tgz提取得到目錄android-sdk-linux
(2)將android-sdk-linux目錄復制到/opt目錄下(如有需要,使用sudo nautilus命令)
(3)配置環境變量,終端命令:sudo gedit /etc/profile在打開的文檔的最后新起一行,添加如下:
export PATH=$PATH:/opt/android-sdk-linux/platform-tools/
export PATH=$PATH:/opt/android-sdk-linux/tools/:/opt/android-sdk-linux/tools/bin/
重啟系統執行 andorid
命令,會打開sdk manager
下載對應的tools和image,如果僅想通過終端啟動avd則,sdk版本不應超過25.
(4) update sdk and tools
~:cd android-sdk-linux/tools ~:sudo ./android
1) update new version:
Android SDK Tools
Android SDK Platform-tools
Android SDK Build-tools
Sources for Android SDK
2) delete old version
(5)終端命令adb -version
安裝完platform-toos就可以使用adb命令了
出現如下內容則表示配置成功:Android Debug Bridge version 1.0.36Revision fd9e4d07b0f5-android
2.2 android studio安裝
(1)android-studio-ide-143.2821654-linux.zip提取得到目錄android-studio
(2)將android-studio目錄復制到/opt目錄下(如有需要,使用sudo nautilus命令)
進入目錄:cd /opt/android-studio/bin/
運行:sudo ./studio.sh
運行之后可設置指向已下載的sdk目錄
該目錄可能沒有寫權限,所以要更改目錄權限
(3)建立快捷方式
/home/目錄下新建AndroidStudio.desktop,實際上就是指向/opt/android-studio/bin/studio.sh,編輯內容如下:
[Desktop Entry]
Name=AnbdroidStudio
Comment=AndroidStudio
Exec=/opt/android-studio/bin/studio.sh
Icon=/opt/android-studio/bin/studio.png
Terminal=false
Type=Application
Categories=Application;Development;
保存后在這個文件的屬性里把它設置成可執行。
3 創建虛擬機
(1) 可能存在虛擬機目錄.android找不到的問題。
如果提示中的目錄在/home目錄下,則在home目錄ctrl+h顯示隱藏文件,刪除.android目錄和.android的引導文件,然后只需重新創建.android目錄,然后退出程序,重新啟動應用(如有必要則重啟系統)
(2) 可能打開后黑屏,選擇的api版本太新,可以降低1或更多。
(3) 命令行啟動和創建虛擬機
~:android avd
4 問題解決
4.1 權限問題
avd啟動過程中會出現無法save文件或者是sdk home無法寫入,可以把sdk home用戶和用戶組設置成當前用戶
sudo chown -R user:group /opt/android-sdk-linux/
4.2 i965_dri.so的驅動問題
執行android avd可能會出現此驅動問題
mv /opt/android-sdk-linux/tools/lib64/libstdc++/libstdc++.so.6{,.bak}
mv /opt/android-sdk-linux/tools/lib64/libstdc++/libstdc++.so.6.0.18{,.bak}
然后重新啟動avd
4.3 android studio無法輸入中文問題
sudo gedit /opt/android-studio/bin/studio.sh
在有效位置的開頭加上以下
export XMODIFIERS="@im=fcitx"export GTK_IM_MODULE="fcitx"export QT_IM_MODULE="fcitx"
4.4 虛擬機failed to create sdcard
系統和軟件都是64位,但是仍需要32位支持,為系統安裝ia32-libs庫
兩個方法,
第一個方法2016/07/22親測有效,(源自雪人的博客)
<font color=Red>這個命令:sudo apt-get install libc6:i386libgcc1:i386 gcc-4.6-base:i386 libstdc++5:i386libstdc++6:i386</font>
在雪人的博客中有下面一段扔可以作為后續問題的參考,后續可能會遇到gradle運行失敗,R文件無法識別
在此援引
“
我本意是運行adb的。運行adb時,發現缺乏libncurses5庫,自己動手,豐衣足食,比葫蘆畫瓢,
sudo apt-get installlibncurses5:i386
在64位下,gcc默認編譯代碼位64位的,但是,如果你想編譯位的,可以用gcc-m32選項,來設置。
不過,不幸的是,會出現錯誤,說找不到/usr/include/features.h文件什么的。google一下,發現用這種方法:
sudo apt-get installg++-multilib(就這一句有用的)
這么糾結過后,終于能創建模擬器了,但是又有新的問題:
SDL init failure, reason is: No availablevideo device
各方查找發現:
方法1:sudo apt-getinstall ia32-libs lib32stdc++6
”
方法2,可能失效,依次執行下邊的命令:
(1)獲取權限:sudo -i
(2)進入apt源列表:cd /etc/apt/sources.list.d
(3)添加源:echo "deb http://old-releases.ubuntu.com/ubuntu raring main restricted universe multiverse" > ia32-libs-raring.list
(4)更新:apt-get update,這條命令開始下載,
下載完后:apt-get install ia32-libs,這條命令是安裝ia32-libs,有可能提示需要依賴庫xxx,但是xxx不存在,那么就安裝這個xxx,apt-get install xxx,然后可能提示需要另一個依賴庫yyy,同樣安裝這個yyy,apt-get install yyy,如果后邊還有提示就繼續安裝,直到成功。
(5)恢復源:rm ia32-libs-raring.list
apt-get update
2016/7/3 15:24總結:以上是目前已知問題和解決方案,任何解決方法可能都需要在重啟系統之后才會生效。
參考:
http://blog.sina.com.cn/s/blog_66c16c980101g5qj.html,雪人的博客;
http://blog.sina.com.cn/s/blog_b15639e00101tor5.html,xiaowei2012緣的博客;
http://blog.csdn.net/ropai/article/details/24251389,非著名碼農的專欄,以及文章下a110pple 發表的評論;