App Inventor是一個完全線上開發的Android程式環境,拋棄複雜的程式碼而使用樂高積木式的程式設計介面來完成您的Android行動裝置程式,對於Android初學者或是機器人開發者來說是一大福音。本書承接《Android手機程式超簡單!!App Inventor 入門卷》的讀者群,進一步探討App Inventor於實體手機上的應用,包含影音多媒體、加速度/感測器、透過藍牙通訊傳輸文字與圖案、多點觸碰與樂高NXT機器人控制精彩課題。為目前市面上書籍所未見。
本書中所有範例皆可在一般電腦使用模擬器來完成,內容包含人機介面設計、影音多媒體、網路通訊,Google Map地圖定位,資料庫與繪圖等,即便您尚未購置Android裝置,一樣能玩得很開心,輕鬆學會手機程式設計。
本書特色
Hal Abelson教授 美國麻省理工學院行動學習中心
李祖聖特聘教授 國立成功大學電機工程學系
施順鵬教授 樹德科技大學電腦與通訊系
作者簡介:
曾吉弘
CAVE機器人教育團隊技術總監。
淡江大學兼任講師/台灣師大、雲科大、萬能科大等多所業界講師師資。
財團法人電腦技能基金會 Android 專業師資。
《Make》 國際中文版、《RROBOCON》國際中文版專欄作者/特約編輯。
賴偉民
CAVE教育團隊專業講師,國立臺灣科技大學機械工程研究所碩士班在學。
專長:NXC、C++、Arduino、機械手臂運動學。
謝宗翰
國立臺灣大學生物機電工程學系在學,《LabVIEW高階機器人教戰手冊》與《機器人新視界NXC與NXT》作者。現為CAVE教育團隊專業講師。
專長:C語言、LabVIEW 自動控制。
林毓祥
國立臺灣大學土木工程學系在學,《Android NXT機器人大戰智慧型手機控制機器人》作者。現為CAVE教育團隊專業講師,負責行動裝置應用程式開發。
專長:JAVA、C#程式語言,LabVIEW圖形化程式語言、高階機器人機構設計。
薛皓云
CAVE教育團隊講師,國立臺灣海洋大學機械與機電工程學系在學。
專長:Arduino、C++、NXT-G。
各界推薦
名人推薦:
App Inventor是由Google所推出的圖形化Android智慧型手機程式開發環境,無需艱澀的Java開發語法,只要拖拉放就能輕鬆地完成您第一支App!
本書延續《Android手機程式超簡單!!App Inventor 入門卷》內容,進一步介紹App Inventor開發環境搭配實體Android裝置後的超豐富應用。
名人推薦:App Inventor是由Google所推出的圖形化Android智慧型手機程式開發環境,無需艱澀的Java開發語法,只要拖拉放就能輕鬆地完成您第一支App!
本書延續《Android手機程式超簡單!!App Inventor 入門卷》內容,進一步介紹App Inventor開發環境搭配實體Android裝置後的超豐富應用。
章節試閱
CHAPTER1 電話功能
本章將介紹App Inventor的社交(Social)功能,包含ContactPicker、EmailPicker、PhoneCall、PhoneNumberPicker與Texting等元件。您可以利用這些元件來查詢通訊錄名單、打電話、發電子郵件與發送簡訊。由於這些元件多與電話功能(telephony)有關,建議使用實體Android 裝置比較好,因為模擬器上的通訊錄與撥號清單都是空的,使用起來不太有感覺。另外兩台Android模擬器之間可以正常收發簡訊,還可以模擬打電話的撥號過程,不過當然無法接聽啦!
1-1 聯絡人選取器ContactPicker
本章首先登場的是ContactPicker元件。ContactPicker是一個特殊的ListPicker,會直接連接到通訊錄裡所有的聯絡人以供選擇,當使用者選取完聯絡人後,即可取得該聯絡人的基本資料,包括姓名、電子郵件地址與大頭照。
1-2 打電話PhoneCall 以及電話簿PhoneNumberPicker
在介紹完ContactPicker後,本節我們將介紹PhoneCall通話元件,並結合PhoneNumberPicker 元件做更多有趣的應用。PhoneNumberPicker與上節所提的ContactPicker非常類似,唯一不同的地方在於 PhoneNumberPicker可以提供指定聯絡人的電話號碼,而ContactPicker不行,兩者在應用上會有所不同,前者主要在於通訊上的應用,而後者則是單純的取出聯絡人的相關資訊。
1-3 發簡訊Texting
隨著3G 網路的發達,例如像WhatsApp與Line這類的即時通軟體一下子迅速蔓延了起來,除了傳統的文字簡訊之外,還能發送照片、連絡人資訊、位置等等資訊,非常方便,所以現在路上的低頭滑滑族愈來愈多啦。本節將介紹如何使用App Inventor 的Texting 簡訊元件來設計一個可發送簡訊的程式,您可輸入收件人號碼與簡訊內容,另外也讓手機在接收到簡訊之後會另外跳出一個對話視窗來顯示簡訊。
1-4 發電子郵件EmailPicker
EmailPicker長得和TextBox一樣,當使用者在文字框上輸入通訊錄裡的聯絡人的電子郵件地址時,會有自動完成(Auto Complete)的功能,是一個貼心的小元件。EmailPicker有兩個重要的欄位:Text以及Hint。Text欄位是預先填入文字,例如「請輸入電子郵件地址」或是「選擇電子郵件地址」等提示用語,而若是Text欄位為空白,則文字框會以灰色字來顯示Hint 屬性所設定的文字。
1-5 總結
本章介紹了App Inventor的社交Social元件以及與通訊有關的指令,這些指令雖然簡單,卻是發展應用程式的重要基礎。近年來,手機的功能越來越多元,運算能力也越來越強大,然而,最基本也最重要的功能仍然是在通訊──讓人與人彼此之間互動更方便。掌握本章所介紹的指令,可以讓我們輕鬆設計出許多功能強大的程式。這些指令或許不會是一個程式裡的主軸,然而它們會在您日後的開發過程中扮演著不可或缺的角色。
CHAPTER1 電話功能
本章將介紹App Inventor的社交(Social)功能,包含ContactPicker、EmailPicker、PhoneCall、PhoneNumberPicker與Texting等元件。您可以利用這些元件來查詢通訊錄名單、打電話、發電子郵件與發送簡訊。由於這些元件多與電話功能(telephony)有關,建議使用實體Android 裝置比較好,因為模擬器上的通訊錄與撥號清單都是空的,使用起來不太有感覺。另外兩台Android模擬器之間可以正常收發簡訊,還可以模擬打電話的撥號過程,不過當然無法接聽啦!
1-1 聯絡人選取器ContactPicker
本章首先登場的是ContactPicker元件。...
作者序
【CAVE 教育團隊序】
本書為《Android手機程式超簡單!!App Inventor 入門卷》的續集,深入探討App Inventor 結合實體Android裝置後的應用,包含感測器、多點觸控、藍牙與機器人控制等。由於本團隊致力於推廣樂高NXT機器人的高階程式應用,所以特闢數章來詳述樂高機器人、I2C裝置存取以及Arduino開發板等整合應用。熟悉Android的讀者可以延伸閱讀本團隊的另一本專書《Android / NXT機器人大戰:智慧型手機控制機器人》,使用正規Android開發環境來編寫機器人程式,您會對Android裝置上的許多裝置例如Wifi、GPS以及各類感測器等更加熟悉,並可大幅提升機器人的功能,非常適合資訊、機電相關科系的同學們應用在各種專題上。
從樂高NXT-G、Scratch 到App Inventor,這樣的圖形化開發環境已是一股趨勢,讓更多人得以輕鬆地寫出各種程式,完成心中的小小願望。為了讓更多喜愛App Inventor 的朋友們能有一個共享學習的園地,我們建置了App Inventor 中文學習網(http://www.appinventor.tw),期待更多同好能充分利用本教學平台並分享開發心得。針對App Inventor結合樂高NXT機器人,我們也上架了幾隻App。請在Google play(http://play.google.com)上搜尋「CAVE 教育團隊」就可以找到。
本書很榮幸能獲得MIT App Inventor負責人Hal Abelson教授、成功大學李祖聖教授以及樹德科大施順鵬教授的熱情推薦,並提供許多寶貴的建議。感謝本書作者群努力產出無數有趣的範例並「心甘情願」反覆修改。感謝本團隊專業美編Amber小姐沒日沒夜地趕工,以遠超正常工時的工作量完成本書所需的視覺設計項目。感謝馥林文化全體同仁在本書編寫過程中的專業指導與協助,讓本書能在入門卷出版之後火速出版,在此獻上無比的敬意。
千里之行,始於足下。CAVE教育團隊由衷感謝各位師長好友們的支持與鼓勵,我們將秉持著「開放、分享」的精神繼續努力,期待很快可以與您在下一本書見面。
CAVE 教育團隊 謹致
service@cavedu.com
【CAVE 教育團隊序】
本書為《Android手機程式超簡單!!App Inventor 入門卷》的續集,深入探討App Inventor 結合實體Android裝置後的應用,包含感測器、多點觸控、藍牙與機器人控制等。由於本團隊致力於推廣樂高NXT機器人的高階程式應用,所以特闢數章來詳述樂高機器人、I2C裝置存取以及Arduino開發板等整合應用。熟悉Android的讀者可以延伸閱讀本團隊的另一本專書《Android / NXT機器人大戰:智慧型手機控制機器人》,使用正規Android開發環境來編寫機器人程式,您會對Android裝置上的許多裝置例如Wifi、GPS以及各類感測器等更加熟悉,...
目錄
第1章 電話功能
第2章 藍牙通訊淺談
第3章 手機上的感測器
第4章 手機與機器人/ TTS / 語音辨識
第5章 手機觸控面板,、感應器與機器人
第6章 App Inventor其他嵌入式系統
第7章 影音多媒體/相機結合條碼掃描
第8章 數學高手
第9章 專題:滾球遊戲
第10章 專題:TinyDB打方塊
第11章 專題:藍牙控制Arduino BT
第12章 專題:NXTcam
附錄A App Inventor指令集-BuiltIn
附錄B App Inventor指令集-My Blocks
附錄C App小秘訣
附錄D 差速驅動機器人組裝說明
附錄E 樂高藍牙開發套件直接指令說明
附錄F 網路資源與好書推薦
第1章 電話功能
第2章 藍牙通訊淺談
第3章 手機上的感測器
第4章 手機與機器人/ TTS / 語音辨識
第5章 手機觸控面板,、感應器與機器人
第6章 App Inventor其他嵌入式系統
第7章 影音多媒體/相機結合條碼掃描
第8章 數學高手
第9章 專題:滾球遊戲
第10章 專題:TinyDB打方塊
第11章 專題:藍牙控制Arduino BT
第12章 專題:NXTcam
附錄A App Inventor指令集-BuiltIn
附錄B App Inventor指令集-My Blocks
附錄C App小秘訣
附錄D 差速驅動機器人組裝說明
附錄E 樂高藍牙開發套件直接指令說明
附錄F 網路資源...