2022 Kotlin 教學入門實戰範例【Android 入門開發實戰:口罩地圖】線上教學課程目錄(Android Studio 開發, Google Map 教學, RecyclerView 範例)
【Android 入門開發實戰:口罩地圖】使用 Kotlin 程式語言,開發應用程式。
本課程開發環境:Android Studio 4.x & Android 11 & Kotlin 1.4.x
HKT 講師,相關課程
HKT 講師,相關課程:
🎬 從零開始學 kotlin 程式設計 免費講義
https://bit.ly/2Kx7GrM
🎬 從零開始學 Jetpack Compose 程式設計
https://bit.ly/3JF4SFA
🎬Android 入門開發實戰:口罩地圖(Kotlin) 免費講義
https://bit.ly/2KKZcju
🎬從零開始學 Dart 程式設計 免費講義
https://bit.ly/2OJW6hl
🎬 Flutter 程式設計入門實戰 免費講義
https://bit.ly/37L47Ij
🎬從零開始學 Java 程式設計 免費講義
https://bit.ly/2WlCn6y
🎬 從零開始學 Swift 程式設計 免費講義
https://bit.ly/3ekjsEP
Android 入門開發實戰:口罩地圖
一次搞懂 Google Maps 基本開發技能,從觀念到實作一次搞定
課程說明
這次課程的主題, KT 老師,選擇貼近你我身邊的實際例子:「口罩地圖」,來開發練習。
2020年初,爆發新型冠狀病毒肺炎(COVID-19)疫情,當時口罩搶破頭,面對一罩難求的情況下,政府管制口罩禁止出口,國內採實名制,民眾可持健保卡至藥局購買。在政府開放口罩庫存資料,透明呈現每間藥局即時庫存,不用辛苦挨家挨戶的跑遍每間藥局詢問有無口罩,方便民眾購買口罩。
我們這次就實際動手來做一個「口罩地圖」APP ,本課程使用 Kotlin 程式語言,來串接口罩即時庫存的公開資料,從實作中來學習如何開發一款 Android APP 應用程式。精彩課程內容中包含了,如何使用主流 OkHttp 第三方 Library 與 GSON 處理網路連線串接實際 API 應用、如何使用 TextView、Button、RecyclerView、Spinner、Toast、AlertDialog 等常用的 UI 元件,且進一步的在實戰中介紹進階 Kotlin 的 Collection 語法,如何靈活去運用,最後學習如何獲取使用者位置權限、判斷使否開啟 GPS、學習如何使用 Google Map 結合口罩資料,在地圖上,使用圖釘 Maker 與自定義客製化資訊視窗,顯示每間藥局名稱與口罩數量。有別於一般 Android 課程內容設計,或許之後疫情趨緩,再也用不上口罩地圖、但實際上這套課程,我們學到的不只是口罩地圖的開發,而是一套紮實開發 Android 應用程式的方法。
有了這套開發經驗,我們只要將資料來源轉換成是天氣,他就會是一款氣象APP,同理換成 YouBike 微笑單車,他就可以變成隨時查詢,目前每站租借單車狀態的 APP,如果是公車進站資訊,就可以變成等公車 APP,以此類推。
網路自學 Java 最常見的三大痛
- 學習資訊東拼西湊,無法有系統很完整性的學習
- 英文資料看得霧煞煞,一頭霧水
- 觀念混淆,挫折感超重
課程特色
- 由淺入深,無痛學習 Google Maps 的程式開發技巧
- 一次掌握 Google Maps 最常用的核心關鍵知識
- 繁體中文教材,系統化的課綱編排,HKT (侯光燦) 講師親授影片教學
Kotlin 先修班
若還不熟悉 Kotlin 程式語言,可以參考:【從零開始學 Kotlin 程式設計】免費講義課程目錄 Kotlin 程式語言基礎入門課程。
課程目錄
CH 1 Go 準備開始
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 口罩即時庫存開放資料 | 連結 | 連結 |
2 | 建立口罩APP專案 | 連結 | 連結 |
CH 2 git 簡介
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 土炮備份程式碼(錯誤示範小故事) | 連結 | 連結 |
2 | git 時光機差異比較 | 連結 | 連結 |
3 | 程式碼儲存庫托管服務(GitHub、GitLab、Bitbucket) | 連結 | 連結 |
4 | Sourcetree (圖形化界面 git 版控軟體) | 連結 | 連結 |
5 | Android Studio 專案導入版本控制 | 連結 | 連結 |
CH 3 網路資料處理
CH 3.1 OkHttp 獲取網路資料方式
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | OkHttp 與第三放 Lib 套件安裝方式 | 連結 | 連結 |
2 | Permission 宣告使用網路權限方式 | 連結 | 連結 |
3 | OkHttp 基本使用套路介紹 | 連結 | 連結 |
4 | 實戰 OkHttp 中的 enqueue 非同步處理 GET 請求方法 | 連結 | 連結 |
5 | 實戰 OkHttp 中的 execute 同步處理 GET 請求方法 | 連結 | 連結 |
6 | 補充 OkHttp 中的 POST 請求方法 | 連結 | 連結 |
CH 3.2 JSON 資料解析方式
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 使用TextView 和 ScrollView 將口罩資料顯示在畫面上 | 連結 | 連結 |
2 | JSON 資料格式簡介 | 連結 | 連結 |
3 | JSON Viewer 線上小工具 | 連結 | 連結 |
4 | 解析 JSON 範例一 | 連結 | 連結 |
5 | 解析 JSON 範例二 | 連結 | 連結 |
6 | 使用 StringBuilder 組合字串資料 | 連結 | 連結 |
7 | 解析JSON 發生例外處理方式 | 連結 | 連結 |
CH 3.3 Gson 資料解析方式
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | GSON 使用介紹 | 連結 | 連結 |
2 | 使用 GSON 解析每間藥局名稱與電話 | 連結 | 連結 |
3 | JSON To Class 外掛套件安裝與使用介紹 | 連結 | 連結 |
CH 3.4 ProgressBar 忙碌圈圈
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 補充課程:如何使用元件綁定 View Binding | 連結 | 連結 |
2 | 如何顯示 ProgressBar 忙碌圈圈 | 連結 | 連結 |
CH 3.5 封裝 OkHttp
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 為什麼要封裝 OkHttp ? | 連結 | 連結 |
2 | 如何封裝 OkHttp ? | 連結 | 連結 |
3 | 如何使用我們封裝的 OkHttp ? | 連結 | 連結 |
4 | 固定常數檔案 Constants 用途 ? | 連結 | 連結 |
CH 4 UI 使用者介面元件-RecyclerView
CH 4.1 基本資料列表顯示
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 為什麼要用 RecyclerView ? | 連結 | 連結 |
2 | 如何添加 RecyclerView Lib 依賴庫? | 連結 | 連結 |
3 | 如何自定義列表,每一列項目顯示的樣式? | 連結 | 連結 |
4 | 如何自定義 Adapter 資料顯示容器 | 連結 | 連結 |
5 | 如何使用 RecyclerView 結合自定義 Adapter 資料顯示 | 連結 | 連結 |
6 | 如何設定 RecyclerView 顯示分隔線與點擊漣漪效果 | 連結 | 連結 |
CH 4.2 進階項目佈局
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 進階項目佈局,課程簡介 | 連結 | 連結 |
2 | 進階項目佈局 Layout 實作 | 連結 | 連結 |
3 | 進階項目佈局,搭配口罩資料顯示 | 連結 | 連結 |
CH 4.3 卡片樣式的項目佈局
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | CardView 卡片式元件項目佈局 | 連結 | 連結 |
2 | 如何使用自定義背景樣式 | 連結 | 連結 |
CH 4.4 跳頁&資料傳遞(1)
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | Adapter 監聽並回傳點擊事件 | 連結 | 連結 |
2 | Intent 基本跳頁和資料傳遞 | 連結 | 連結 |
CH 4.5 跳頁&資料傳遞(2)
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 藥局詳細頁佈局與資料顯示 | 連結 | 連結 |
CH 5 Kotlin 過濾&分組語法
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | Kotlin 過濾(filter)集合資料用法 | 連結 | 連結 |
2 | Kotlin 分組(groupBy)集合資料用法 | 連結 | 連結 |
3 | 縣市鄉鎮小工具包(util) | 連結 | 連結 |
CH 6 UI 使用者介面元件-Spinner
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | Spinner 下拉選單基本用法 | 連結 | 連結 |
2 | 縣市、鄉鎮 Spinner 下拉選單佈局方式介紹 | 連結 | 連結 |
3 | 縣市、鄉鎮 Spinner 連動選單實作方式 | 連結 | 連結 |
4 | 列表資料根據縣市、鄉鎮下拉選單,顯示對應口罩資料 | 連結 | 連結 |
CH 7 Google Maps 地圖應用
No. | 課程名稱 | 影片 | 講義 |
---|---|---|---|
1 | 獲取 APP 權限方法介紹 | 連結 | 連結 |
2 | 獲取 APP 權限實作-檢查有無權限方法 | 連結 | 連結 |
3 | 獲取 APP 權限實作-詢問要求獲取權限方法 | 連結 | 連結 |
4 | 獲取 APP 權限實作-處理權限 CallBack 方法 | 連結 | 連結 |
5 | 檢查GPS狀態 | 連結 | 連結 |
6 | 獲取位置經緯度 | 連結 | 連結 |
7 | Google Map 範本學習(1) | 連結 | 連結 |
8 | Google Map 範本學習(2) | 連結 | 連結 |
9 | Google Map 顯示目前位置 | 連結 | 連結 |
10 | Google Map 自訂資訊視窗 | 連結 | 連結 |
11 | Google Map 結合口罩資料 | 連結 | 連結 |
著作聲明
「Android 入門開發實戰:口罩地圖」中提供所有的圖文、程式碼與影片教學,以下簡稱「本資料」。「本資料」,允許使用者重製、散布、傳輸以及修改著作,但不得為商業目的之使用。使用時必須註明出處。教學影片內容,為 HKT 線上教室製作,HKT. 侯光燦 主講。
商標內容聲明
「本資料」,其中所引用之各商標及產品名稱分屬其合法公司所有,「本資料」,部分採用開放源始碼、圖文與影音等多媒體,引用自於網路,皆屬於其原作者之所有,「本資料」引用純屬介紹之用,並無任何侵權之意,特此聲明,其中內容若有不妥,或是侵犯了您的合法權益,請麻煩通知我們,我們將會迅速協助將侵權的部分移除,謝謝!
*有任何問題,麻煩聯繫,謝謝。
活動演講、贊助、公益等相關商業合作邀約,聯絡請洽:粉絲團訊息 or 來信
thishkt@gmail.com
贊助我們
創作不易,知識無價,免費線上教學就像顆種子,希望藉由您的支持與贊助,能夠無後顧之憂的日漸茁壯,努力前行堅持下去。不論捐贈金額的大小,我們都由衷的感謝每位贊助者,都是我們推廣知識、開放共享平台最大的動力!
您的捐贈將用於:請作者喝杯咖啡,鼓勵繼續創作,持續上傳教學影片與更多新技術文章。
Line Pay 打賞
(由 Line Pay 支付平台,提供一卡通轉帳服務)
街口打賞
(由街口行動支付平台,提供轉帳服務)
超商代碼繳費打賞
(由綠界科技支付平台,提供超商繳費代碼)
相關連結
▶ YouTube 頻道
https://goo.gl/3f2pJi
▶ KT 線上教室 臉書粉絲團
https://goo.gl/27H9Li
▶ 贊助我們
https://goo.gl/FiKXAu