第一支 Android 程式

沒看錯! ArduinoAndroid很繞口,但今天就是要學Android!

現在的小學生都在談「雙A(BLow)或「三A」,亦就是AndroidArduino再外加Ardupilot。通常以Android手機為通訊基礎,透過藍芽或ZigBee為傳輸介面來控制遠端的汽車、機器人或飛行器。(以上是小學生的程度,沒錯! 歐吉尚今天要從幼幼班進階到幼兒園中班了)

想成為Maker,但歐吉尚很清楚應該先跟上小學生的程度再說。不可能只買個Arduino版子,就想一步登Maker! 先從Single A開始(ArduinoAndroid皆可),再進階至Double A

也想自己寫寫Android程式嗎? 今天跟大家分享一個偷吃步的方法,也是現在在小學很紅的App Inventor 2 (AI2)。原是Google Lab的一個子計畫,後來移交給美國麻省理工學院(MIT)行動學習中心。它是屬於線上開發的整合環境,按照官網的下載與安裝指令即可在Chrome或Firefox網頁瀏覽器中開發自己的Android程式。不過若你想用模擬器執行自己寫的Code,則須另外安裝aiStarter,我直接裝最新版的AI2 for Windows installer package






晚一點學也有好處! AI2現在的Designer(相當於視覺化原件佈局)Block(相當於事件與程式碼)編輯器已經整合在一起了,多了很多功能,也不用再安裝Java外掛。先申請一個Google帳號,用Chrome開啟官網 http://appinventor.mit.edu 就可以進入開發環境。(我是用Windows 7桌機)

既然是第一支Android程式,當然還是「Hello World!」。二話不說,開啟Designer立馬拉了四個原件: TextBoxButtonLableTextToSpeech






我希望能夠在TextBox內輸入「Hello World!」,當Button被敲下之後將TextBox的內容可以被存入一個字串變數(myMessage)中且秀在Label原件上,並讓TextToSpeech原件將所存的字串念出來。

AI2Block編輯器透過視覺化的物件,我沒多看文件資料,很直覺地就可以把我想的腳本實作出來了。只有拖拉與排列這些事件元素,沒有寫Code,而這就是AI2Coding方式。當然有人會懷疑: 如果Coding這麼簡單,那將來Android陣營App Store的品質是否不保呢? (比如說,我就真的把這支「Hello World!」程式給上架了!)






完成Coding(腳本規劃),選擇Connect-->AI CompanionAI2會將你的程式編譯成Android的可執行檔(.apk),並產生相對應的QR Code






因為AI2是雲端的開發環境,你須在你的Android手機另外下載安裝MIT AI2 Companion (Google Play商店下載),再透過QR Code掃描碼將你的程式下載。






執行程式只要用手機對著AI2產生的QR Code識別即可 (請記得將手機與桌機的WiFi打開)。我發現,現在的小孩寫程式真的太幸福了! 我還不會細部設定,「Hello World!」目前聽到是女孩的聲音。