透過「App Inventor拼圖程式」,讓開發App就像玩拼圖一樣簡單!
◆不需要具備高深的程式語言技巧,輕鬆上手。
◆訓練專案邏輯、程式開發及問題解決能力的重要工具。
◆快速建構「創造力」,打造專業高質感的Android APP。
◆開發酷炫NXT樂高機器人手機控制程式。
【本書特點】
1. 提供「雲端化」的「整合開發環境」來開發專案。
2. 提供「群組化」的「元件庫」來快速設計使用者介面。
3. 利用「視覺化」的「拼圖式」開發工具來撰寫程式邏輯。
4. 支援「娛樂化」的「NXT樂高機器人」製作的控制元件。
5. 提供「多元化」的「專案發布模式」,讓使用者能輕易的在手機上執行測試。
【適用對象】
1. 中、小學的學生(青少年)的才藝課程、夏令營。
2. 高中、職學生的程式設計及社團。
3. 大專學生之「程式設計」、「雲端技術」、「多媒體應用」等相關課程。
4. 對於App開發有興趣的初學者。
作者序
還記得您在小學時,最喜歡的組合玩具是什麼嗎?我想大部份的同學都會回答「樂高積木」,為什麼呢?其實就是因為它可以依照每一位同學的「想像力及創造力」來建構個人喜歡的作品,並且它還可以透過「樂高專屬的軟體」來控制NXT樂高機器人。
那各位同學是否有想過一個有趣的問題?那就是為何「小學生」也可以撰寫程式來控制NXT樂高機器人呢?其實它就是透過「拼圖」方式來撰寫程式。
反觀,目前高中職及大專院校學生,如果想自己開發Android App 程式,則必須要學習困難的Java程式語言,使得大部份學習者望而卻步,甚至半途而廢。
有鑑於此,Google 實驗室基於「程式圖形化」理念,發展了「App Inventor」拼圖程式,來專門用來撰寫Android App 的開發平台。並且在2012年初將此軟體移轉給MIT(麻省理工學院)行動學習中心管理及維護。
MIT行動學習中心在2013 年12月發表App Inventor 2(簡稱AI2),除了省略需要使用Java才能開啟的Blocks Editor之外,並且大幅度的改善開發環境。因此,目前App Inventor已經被公認為小學生也可以開發Android App程式的重要工具,其主要原因如下:
1. 提供「雲端化」的「整合開發環境」來開發專案。
2. 提供「群組化」的「元件庫」來快速設計使用者介面。
3. 利用「視覺化」的「拼圖程式」來撰寫程式邏輯。
4. 支援「娛樂化」的「NXT 樂高機器人」製作的控制元件。
5. 提供「多元化」的「專案發佈模式」來輕易在手機上執行測試。
最後,在此特別感謝各位讀者的對本著作的支持與愛戴,筆者才疏學淺,有誤之處。請各位資訊先進不吝指教。
李春雄(Leech@csu.edu.tw)
2016.11.1
於 正修科技大學 資管系
還記得您在小學時,最喜歡的組合玩具是什麼嗎?我想大部份的同學都會回答「樂高積木」,為什麼呢?其實就是因為它可以依照每一位同學的「想像力及創造力」來建構個人喜歡的作品,並且它還可以透過「樂高專屬的軟體」來控制NXT樂高機器人。
那各位同學是否有想過一個有趣的問題?那就是為何「小學生」也可以撰寫程式來控制NXT樂高機器人呢?其實它就是透過「拼圖」方式來撰寫程式。
反觀,目前高中職及大專院校學生,如果想自己開發Android App 程式,則必須要學習困難的Java程式語言,使得大部份學習者望而卻步,甚至半途而廢。
有鑑於...
目錄
CHAPTER 1 Android App 導論
1-1 行動載具(Mobile Devices)
1-2 行動應用程式(Mobile Application)
1-3 Android App 開發方式
1-4 Android 作業系統.
1-5 Android 作業系統的架構
1-6 App Inventor 拼圖程式
課後評量
CHAPTER 2 App Inventor 2 程式的開發環境
2-1 App Inventor 2 拼圖程式的開發環境
2-2 進到App Inventor2 雲端開發網頁
2-3 App Inventor2 的整合開發環境
2-4 撰寫第一支App Inventor 程式
2-5 App Inventor 程式的執行模式
2-6 管理自己的App Inventor 專案
課後評量
CHAPTER 3 使用者基本介面設計
3-1 App Inventor 的「使用者介面」設計工具
3-2 標籤元件(Label)
3-3 輸入方塊元件(TextBox)
3-4 密碼文字方塊元件(PasswordTextBox)
3-5 命令按鈕元件(Button)
3-6 顯示圖片元件(Image)
3-7 複選鈕元件(CheckBox)
3-8 對話訊息方塊元件(Notifier)
3-9 下拉式元件(Spinner)
3-10 滑桿元件(Slider)
3-11 清單選取元件(ListPicker)
3-12 日期選項元件(DatePicker)
3-13 時間選項元件(TimePicker)
3-14 多重頁面(Multi-Screen)
課後評量
CHAPTER 4 資料的運算
4-1 變數(Variable)
4-2 常數(Constant)
4-3 變數的生命週期
4-4 資料的運算
課後評量
CHAPTER 5 流程控制
5-1 模組化程式設計
5-2 循序結構(Sequential)
5-3 選擇結構(Selection)
5-4 迴圈結構(Loop)
5-5 計數迴圈(For/Next)
5-6 條件迴圈(Do/Loop)
課後評量
CHAPTER 6 清單(陣列)
6-1 清單的觀念
6-2 清單的宣告及初值設定
6-3 新增元素到清單
6-4 取得清單的元素
6-5 清單的專屬迴圈
6-6 清單的其他重要的指令應用
6-7 物件清單
課後評量
CHAPTER 7 程序(副程式)
7-1 程序(副程式)
7-2 不傳回值的程序(無參數)
7-3 不會傳回值的程序(多個參數)
7-4 會傳回值的程序(兩個參數)
7-5 傳遞清單參數的程序
7-6 多重活動頁面之間的資料傳遞
課後評量
CHAPTER 8 內建程序(函數)的應用
8-1 字串函數(String)
8-2 數值函數(Math)
8-3 亂數函數(Rrndom)
8-4 日期與時間函數(Clock 元件)
課後評量
CHAPTER 9 多媒體
9-1 認識多媒體
9-2 影像媒體(照相相關元件)
9-3 聲音媒體元件
9-4 視訊媒體元件
9-5 語音辨識
課後評量
CHAPTER 10 繪圖與動畫
10-1 動畫的基本概念
10-2 Canvas 畫布元件
10-3 ImageSprite 動畫圖片元件
10-4 Ball 球形動畫元件
課後評量
CHAPTER 11 感測器(Sensor)
11-1 感測器(Sensor)
11-2 加速感測器(Accelerometer Sensor)
11-3 位置感測器(Location Sensor)
11-4 方向感測器(Orientation Sensor)
11-5 條碼掃瞄器(BarcodeScanner)
課後評量. 11-28
CHAPTER 12 聯絡人、電話及簡訊
12-1 聯絡人選擇器元件(ContactPicker)
12-2 電話號碼選擇器元件(PhoneNumberPicker)
12-3 打電話元件(PhoneCall)
12-4 傳送簡訊元件(Texting)
課後評量
CHAPTER 13 資料庫
13-1 使用TinyDB 元件
13-2 使用TinyWebDB 元件的前置設定
13-3 加入TinyWebDB 元件
課後評量
CHAPTER 14 Connectivity 元件(網際網路的應用)
14-1 手機瀏覽器(WebView 元件)
14-2 WebView 元件在Google Maps上的應用
14-3 ActivityStarter 元件
14-4 藍牙通訊(Bluetooth)
14-5 Web 元件與JSON 資料交換語言
課後評量
CHAPTER 15 樂高機器人程式設計
15-1 NXT 樂高機器人
15-2 NXT 樂高機器人套件
15-3 藍牙控制樂高機器人的走動
15-4 利用「語音操控」樂高機器人
15-5 使用感測器(Sensor)控制機器人
15-6 NXT 與EV3 比較
CHAPTER 16 App 程式上架Google Play 流程
16-1 設定專案程式的相關資料
16-2 上架Google Play商店
CHAPTER 1 Android App 導論
1-1 行動載具(Mobile Devices)
1-2 行動應用程式(Mobile Application)
1-3 Android App 開發方式
1-4 Android 作業系統.
1-5 Android 作業系統的架構
1-6 App Inventor 拼圖程式
課後評量
CHAPTER 2 App Inventor 2 程式的開發環境
2-1 App Inventor 2 拼圖程式的開發環境
2-2 進到App Inventor2 雲端開發網頁
2-3 App Inventor2 的整合開發環境
2-4 撰寫第一支App Inventor 程式
2-5 App Inventor 程式的執行模式
2-6 管理自己的App Inventor 專案
課後評量
CHAPTER 3 使...