課程名稱 |
(中文) 手持裝置應用系統設計 (英文) Handheld Devices Application Systems Design |
開課單位 | 資訊工程研究所 | ||
課程代碼 | I5630A | ||||
授課教師 | 王永心 | ||||
學分數 | 3.0 | 必/選修 | 選修 | 開課年級 | 研究所 |
先修科目或先備能力:程式設計 | |||||
課程概述與目標:手持裝置包括各式智慧型行動手機、平板電腦等。Android之設計從主流手機擴及到行動上網裝置及平板電腦,其SDK提供了功能完善的API,使用Java程式語言可開發出跨平台的應用程式。其平台的開放性也引發行動裝置許多未來的創新應用與商務模式。本課程運用理論與實務並重的教學方式,配合實機操作演練,厚實學習者就業所需之紮實的程式設計技巧,並加強學習者核心概念、應用框架運作原理,以期提昇同學對手持裝置的應用程式設計能力與水準。 | |||||
教科書 | Android Dev Guides @https://developer.android.com/guide/ | ||||
參考教材 | 1. 孫宏明,Android程式設計入門、應用到精通-第五版,碁峰資訊,2019。 2. 施威銘,Android App 程式設計教本之無痛起步:使用 Android Studio 2.X 開發環境,旗標 ,2017。 3. 王安邦,Android 7.X App開發之鑰:使用Java及Android Studio,上奇資訊,2017。 |
||||
圖書館電子書 | 1. Mark Wickham, Practical Android: 14 Complete Projects on Advanced Techniques and Approaches, 2018. 2. Ted Hagos, Learn Android Studio 3: Efficient Android App Development, 2018. @https://link.springer.com/book/10.1007%2F978-1-4842-3156-2 3. Wallace Jackson, Android Apps for Absolute Beginners, 2017. @https://link.springer.com/book/10.1007%2F978-1-4842-2268-3 |
課程大綱 | 學生學習目標 | 單元學習活動 | 學習成效評量 | 備註 | ||
週 | 單元主題 | 內容綱要 | ||||
1 | 行動裝置平台介紹及Android開發環境安裝與使用 | •Android平台架構概述 •安裝Android開發環境 •Android SDK & Android Studio 介紹 •建立第一個 Android App 專案 •Android模擬器與工具操作 |
•瞭解智慧型手機與行動裝置及其開發平台 •瞭解Android系統的發展與特色、應用程式框架以及開發環境 •學會建立Android程式開發環境 |
|
||
2 | Android 應用程式基礎 | •Android App 的主角:Activity •Android 程式的設計流程 •認識 Activity 的基本程式邏輯 •專案結構與Android Manifest定義檔 •Android資源檔設計 |
•瞭解一個Android應用程式專案結構 •瞭解Android系統架構與應用程式組件及功能 •瞭解完成一支Android應用程式需要哪些東西 |
|
||
3 | Android App 介面設計 | •View 與 ViewGroup(Layout):元件與佈局 •使用 LinearLayout 建立畫面佈局•設定元件的外觀屬性 •使用 ConstraintLayout 提升設計與執與執行的效能 •其他元件佈局(Layout) |
•瞭解Android應用程式介面之各式版面配置 •瞭解視圖元件與佈局之關係 |
|
|
|
4 | 事件處理 | •事件處理的機制 •觸控模式 •處理不同來源物件的相同事件 •托放動作的事件 |
•瞭解使用者介面的事件處理機制 •熟悉事件處理程式之各種撰寫方式 |
|
|
|
5 | 使用者介面的基本元件 | •文字元件 •按鈕元件 (RadioButton & CheckBox) •顯示圖形的 ImageView •其他視覺元件 |
•瞭解Android應用程式介面之常用元件 •熟悉Android應用程式介面的編排與屬性設定方式 |
|
|
|
6 | 進階 UI 元件:Spinner 與 ListView/RecyclerView | •Spinner 選單元件 •ListView & RecyclerView 選單元件 •在程式中變更選單元件的顯示項目 |
•瞭解Android提供的列表元件 •瞭解AdapterView的資料和畫面繫結方式以及如何使用Adapter進行其內容呈現 |
|
||
7 | 選單與對話視窗 | •系統選單 •分頁視窗 •對話視窗元件 •通知視窗 |
•瞭解常用的選單、動作列、工作列、對話視窗、通知視窗等之撰寫方式 |
|
|
|
8 | 活動(Activity)與意圖(Intent) | •活動的生命週期 •意圖訊息傳送框架 •活動切換和意圖之使用 •意圖過濾器(intent-filter) |
•瞭解活動的生命週期、不同活動間的切換及其資料傳遞方式 •瞭解Intent類別及IntentFilter之意涵與運用方式 |
|
||
9 | 期中考 | 線上測驗與上機實作測驗 | 檢驗上半學期學習成效 |
|
||
10 | 廣播接收器 | •Broadcast Intent的運作機制 •建立廣播接收器 |
•瞭解廣播接收器之意及其生命週期 •瞭解如何動態或靜態註冊一個廣播接收器 |
|
||
11 | 背景工作 | •執行緖(Thread) •服務(Service) •通知(Notification) •警報(Alarm) |
•瞭解主執行緖與工作執行緖之不同與撰寫方式 •瞭解服務的兩種類型、狀態變化和生命週期 •瞭解不同的通知方式 •瞭解如何發送警報 |
|
|
|
12 | Google地圖服務應用開發 | •手機定位方法 •Google地圖服務 |
•瞭解如何實作Google Map應用程式與其他Google Services |
|
||
13 | 資料儲存(一) | •檔案存取 •使用SharedPreferences •使用SQLite資料庫 |
•瞭解開發Android應用程式時儲存資料的各種方式 |
|
|
|
14 | 資料儲存(二) | •使用Content Provider與Content Resolver | •瞭解開發Android跨應用程式之資料儲存方式 |
|
||
15 | 網路應用(Web Apps) | •WebView-based應用 •JavaScript vs. Android |
•瞭解如何實作WebView為主之網路應用程式 |
|
|
|
16 | 網路服務(Web Service) | •HTTP-based應用 •網路資料擷取 |
•瞭解如何實作HTTP為主之網路應用程式 |
|
||
17 | 探究Android系統核心及原碼 | •Android系統核心與架構 •剖析Android原始碼實例 |
•瞭解如何進一步探究Android原始碼 |
|
||
18 | 期末考 | 專案實作與報告 | 檢驗本課程學習成效 |
|
|
教學要點概述: |