1. 程式人生 > >從Mac轉投Ubuntu進行Android開發

從Mac轉投Ubuntu進行Android開發

Macbook Pro 13寸 乞丐版:開始撤退

I7 7700 Win 10: 猥瑣發育,別浪

I5 4570 Ubuntu :進攻敵方水晶

前言

由於公司的Android專案過大,15年款13寸的乞丐版Macbook Pro 已經跑不動了,於是只好把專案匯入到自己的PC上。

而自己又用習慣了Macbook Pro的開發環境,對於Windows的命令列實在是無法忍受,於是給PC裝了Ubuntu 16.04.

誒,沒想到Ubuntu還挺好用的,不僅速度快,開發起來還很順手(就是有點想念渣渣輝,古天樂了),於是就把其他的開發環境都一併配上,開始用Ubuntu作為主要開發環境。

首先對三個機器對同一個專案的編譯速度做個比較吧

Macbook Pro 2015 Early 13

Snip20181125_3.png

公司PC

CPU:I7 7700

記憶體:16G DDR4

系統:Win 10

因為這篇文章是週末在家寫的,就不放圖片了

個人PC - Ubuntu

ubuntu_pc.png

專案大小(Build後)

_002.png

編譯速度

第一次編譯 (包括切換分支後的第一次編譯時間)

Macbook Pro : 12 min + 風扇的怒吼

公司PC:4min 30s - 6min 10s

Ubuntu:1min 39s - 2min 16s

Instant Run

Macbook Pro : 12 min + 風扇的怒吼

公司PC:2min 8s - 4min

Ubuntu:3s

雖然公司的PC是 I7 7700 的CPU + 16G 記憶體,但是每次編譯的時間都夠我去泡個咖啡了,哪怕是Instant Run 都需要2分鐘左右。再加上Macbook Pro的陣亡,我一開始對家裡用了4年的PC老年機真的沒抱任何希望。剛開始在Win 10 環境下的編譯時間和Mac差不多,沒想到換成Ubuntu後會有這麼 Perfect

的表現,Perfect! Perfect! Perfect!

最後上個圖吧

Ubuntu下第一次編譯時間:

ubuntu_time.png

Instant Run的編譯時間:

ubuntu_least.png

疑問

Macbook Pro 2015款比不過是很正常的,但是為什麼I7 7700 的 win10 PC 還會比不過i5 4570 的 Ubuntu呢…

而且這個差距不像遊戲的FPS 差 5 -10 幀, 用編譯時間來算的話這個差別已經是200 % - 4000%( 2min / 3s)了。

彷彿在Win10上是不存在Instant Run的,哪怕我一句程式碼都沒有改,點選Build 和 Instant Run 的時間都需要2min以上…

總結

通過這一個多月的Ubuntu使用來看,作為程式設計師的生產環境真是一點問題都沒有,對我而言是這樣的。如果需要玩遊戲的話還是選擇Windows吧。

而且美化過後的Ubuntu其實還是挺好看的~

_003.png

相關推薦

MacUbuntu進行Android開發

Macbook Pro 13寸 乞丐版:開始撤退 I7 7700 Win 10: 猥瑣發育,別浪 I5 4570 Ubuntu :進攻敵方水晶 前言 由於公司的Android專案過大,15年款13寸的乞丐版Macbook Pro 已經跑不動了,於是只好把專案匯入

Ubuntu做日常開發電腦的系統是一種怎樣的體驗

和我 manager sublime 分享圖片 ffice 最好的 技術 重要 zsh 【原文】https://www.toutiao.com/i6594291159911105031/ Ubuntu 我現在已經基本不開windows了.學習娛樂開發基本都在Ubuntu

使用Kotlin進行Android開發

    Kotlin是一門基於JVM的程式語言,它正成長為Android開發中用於替代Java語言的繼承者。Java是世界上使用最多的程式語言之一,當其他程式語言為更加便於開發者使用而不斷進化時,Java並沒有像預期那樣及時跟進。     Kotlin是由JetBra

首次用Eclipse進行android開發,能夠提高效率的配置

<=:abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 二、解決Eclipse中android新增過載函式時引數為arg0,arg1的問題 解壓sources-19_r02.zip後,會得到包含了對應(android-19,

Mac OS X下搭建Android開發環境

準備工具 Java 1.6 For Mac OS X — 在Mac上執行Eclipse會提醒需要Java 6執行時支援庫 Java 1.8 For Mac OS X — 本人開發時所用的jdk版本 Eclipse — 本人開發時所用版本為Eclipse Lun

利用Visual GDB在Visual Studio中進行Android開發

無意中發現了Visual GDB這個工具,可以再Visual Studio中進行Android開發吸引了我,前不久,看到說是微軟將.net開源,可以用C#語言在Visual Studio去構建跨平臺的移動應用開發 iOS、Android apps,不過目前目前這方面還不多,利用Visual GDB馬上就可

配置phonegap進行android開發()java.lang.SecurityException: ConnectivityService:

過程比較簡單,就不多言: 具體配置過程請在此穿越時光隧道 不過我是碰到了一下問題: 05-28 08:22:30.580: E/AndroidRuntime(332): java.lang.SecurityException: ConnectivityService: Neither user 1003

筆記:虛擬機器ubuntu搭建android開發環境

 如果cpu 是AMD, 並且在Windows下, android studio自帶的模擬器是不能正常執行的。 試了試安裝比較專業的genymotion模擬器, 安裝過程中也是無數的問題, 最後也沒有

UbuntuAndroid開發:手機不能識別

在windows下,Android手機連線PC非常簡單,但是當我切換到ubuntu下時,發現Target列表中出現一行“????? N/A unknown ”類似這樣一行的內容,說明PC無法正確識別手機,通過查詢相關資料後,進行相關設定,發現可以連線PC了,故在此記錄下來,

使用夜神模擬器進行Android開發除錯

一、前提 1.電腦CPU為AMD,不支援VT-x, Android Studio自帶模擬器和Genymotion嘗試均以失敗告終。 2.CPU支援虛擬化技術AMD-v,BIOS中已啟用。檢測工具CPU-V,http://pan.baidu.com/s/1eSBOqbS,安全

react-native —— 在Mac上搭建React Native Android開發環境

需要:JDK,Android SDK,Node.js 1.安裝JDK 2.安裝Android SDK 雖然現在谷歌推薦使用Android Studio,但是我還是選擇了單獨安裝Android SDK。 這是一個比較全的目錄,上面的連結是官方的,有wall,用下面的基本都是網盤資源,速度

蘋果MAC中安裝並搭建Android開發環境的詳細步驟

 Android的開發平臺搭建主要需要的工具有:Java虛擬機器JDK、Eclipse、Eclipse外掛ADT(Android Developer Tool)和Android開發包SDK,以下是具體的安裝方法。   A、JDK   在MAC中已經為我們預裝了JDK並

ubuntu配置android開發所需環境變數

################ CUSTOM SETTING BEGIN #################### #set jdk path export JAVA_HOME=/usr/lib/jdk/jdk1.7.0_45 export JRE_HOM

Mac上搭建React Native Android開發環境並執行

在執行命令 需要使用vpn,才能安裝成功,國內網路受限。 nvm install node 最後執行命令 npm install -g react-native-cli 執行命令 可以建立工程 這個過程是比較慢 react-nati

一篇關於android開發框架的全域性理解的好文

轉自:http://www.thinkphp.cn/document/382.html 導讀:對於Android開發者來說,成系列的技術文章對他們的技術成長幫助最大。如下是我們向您強烈推薦的主題為Android開發的第一個系列文章。 《Android核心分析》整理如下

Android開發書籍推薦:入門到精通系列學習路線書籍介紹

成長 程序員 理論 targe base 官方 app als 自己的 Android開發書籍推薦:從入門到精通系列學習路線書籍介紹 轉自:http://blog.csdn.net/findsafety/article/details/52317506 很多時候我們都會

Android開發環境Windows遷移到Ubuntu以上以及Gradle3.0+遇到的問題

一:gradle和gradlew的區別 以gradle apkRelease和gradlew apkRelease,gradle是你本地安裝好的gradle版本,gradlew始終是跟隨你專案的版本。 因此如果使用gradle可能和你的專案不相容。所以儘量使用gradlew構建。第一次使

Android開發中使用startActivityForResult()方法Activity A跳Activity B出現B退出時A也同時退出的解決辦法

最近一個 App 中用到了 startActivityForResult() 方法,使用的時候卻出現了一些問題,比如我在 Activity A 中呼叫該方法向 Activity B 中跳轉,如果 B 中完成一系列操作之後用 setResult(resultcode, intent); f

Android開發之--app中跳到淘寶店鋪

首先、一個工具類   方法,檢測該包名下的應用是否存在 public static boolean checkPackage(Context context ,String packageName) { if (packageName == null || "".

Android開發歷程_1(1個activity跳到另一個activity)

今天第一次學習android開發,配置好了環境後就打算來個hello world程式,且實現從一個activity跳轉到另一個activity中去。 開發環境:android4.1.1        實驗功能:        在第一個Hello World!為標籤