ANDROID
基礎開發課程 (1)
Presented by
Duran Hsieh
http://dog0416.blogspot.tw/
2Presented By: Duran Hsieh
關於我
• 謝政廷 (Duran Hsieh)
• 曾任逢甲大學資訊系
• 教育部計畫/國科會計畫兼任研究助理
• 文史脈流/網通人才培育/資策會委託案
• ASP .NET MVC C# 業師
• 曾任凌網科技 :
• 開發工程師/資深工程師/教育訓練講師/專案經理
• 13建置案/維護案、參與競標簡報 (1 android project)
• 15場教育訓練、訓練超過150位以上使用者
• 曾任 Freelancer
• 外包專案、自由研究開發者 (1 android project)
• 台中市輔具整合平台
3Presented By: Duran Hsieh
關於我
• 現任 Asia Fusion Technology
• C# .Net Developer
• 第三分支付介接、持續整合、系統維護
• 現任 2016年 Microsoft MVP
• Visual Studio and Development Technologies
• 現任 Study4.TW 社群成員
• 每月活動企劃
• 台中場務負責
4Presented By: Duran Hsieh
關於我
• 證照與課程完成證明
• Oracle Certified Professional, Java SE 6 Programmer
• MS: Programming in HTML5 with JavaScript and CSS3
• Oracle Database SQL Certified Expert
• Oracle Database 10g Administrator Certified Associate - Version Retired
• Oracle Database 10g Administrator Certified Professional - Version
Retired
• (Course completion confirmation) M102: MongoDB for DBAs
• (Course completion confirmation) M101N: MongoDB for .NET
Developers
• MCSA: Web Applications
• MCSD: Web Applications
• MCSD: App Builder
5Presented By: Duran Hsieh
關於我
• 競賽
• 2011資訊教育與科技應用研討會專題競賽佳作(Excellent Work)
• 2010 Open Source and Creative Application Contest (Silver Medal Award)
• 2012跨領域創意網路通訊應用與服務競賽 (特優)
• IBM Taiwan 2011 z Master Contest (Excellent Performance in Part II)
• The 2012 Network Communication software and Creative Application
Contest Award (First Prize)
• 2014第7屆IT邦幫忙鐵人賽入圍 佳作(Excellent Work)
• 2015 Microsoft Community Challenge (Second Prize)
• 2017第8屆IT邦幫忙鐵人賽 佳作(Excellent Work)
OUTLINE
• 課程目標與進度
• Android 基礎知識
• Android Studio 安裝與介紹
• Android 專案架構
• Hello World
• GPS 感測器介紹
• Q&A
7Presented By: Duran Hsieh
課程目標與進度
• 課程目標
• Android 基礎知識
• 名詞解釋
• 運作原理、生命週期
• Android Studio 介紹與操作
• Android App 開發實作
• Android 專案架構說明、Java 學習
• Layout、Components 介紹、操作與程式實作
• 地圖互動程式製作
• 上架教學
• 如何將你的 App 上架
• 廣告
8Presented By: Duran Hsieh
課程目標與進度
•課程進度
日期 說明
04月06日 Android 基礎知識與安裝環境
Android上使用GPS感測器
作業:GPS 範例程式
04月13日 期中考放假
04月20日 Android Google map API
作業:建立地圖範例程式
04月27日 地圖互動程式製作、產生APK與APP上架
作業:準備小專題
05月18日 小專題成果驗收 - DEMO
ANDROID 基礎知識
10Presented By: Duran Hsieh
ANDROID 基礎知識
• 相關知識
• 開源且免費
• 基於 Linux 核心之作業系統
• C、C++、Java
• Google
• 收購並創立聯盟
• 多家廠商研究與開發
• 可以使用在多數電子裝置
• Android Wear
• Android TV
• Google Play 與 APK
11Presented By: Duran Hsieh
ANDROID 基礎知識
Web Page Web Page Web Page
• Web Site 操作行為
網址
參數
網址
參數
12Presented By: Duran Hsieh
ANDROID 基礎知識
Activity Activity Activity
• Android 操作行為
Intent Intent
13Presented By: Duran Hsieh
ANDROID 基礎知識
MainActivity CamaraActivity
• Android 操作行為
14Presented By: Duran Hsieh
ANDROID 基礎知識
• Android 運作
Activity
(前景顯示)
Service
(程式處理)
15Presented By: Duran Hsieh
ANDROID 基礎知識
• Android Layout
• XML
• Programmatically creating UI
• 建議採用 XML
• 程式碼較為簡潔
• 盡可能切割View與邏輯
16Presented By: Duran Hsieh
ANDROID 基礎知識
• Native ? Cordova? Xamarin? 手機版網頁?
• Native 學習曲線高
• 若有C# 或 html, js 經驗, Xamarin 與 Cordova 較快入門
• Native 客製化較佳
• 不僅僅只有表單處理與資訊呈現
• Native 較佳處理速度
• 並非所有情境,但如果你能處理底層….?
• Native 開發成本高
• Native sensor 控制佳
17Presented By: Duran Hsieh
ANDROID 基礎知識
• 經驗談
• SDK 與 套件版本問題
• Open Source 對於初學者是兩面刃
• 相容性問題弄得很頭痛
• UI、Resource 處理
• 不僅僅只有表單與套版
• Thread
• 品牌眾多,裝置大小不同,百家爭鳴
• 有一天,你可能需要處理不同品牌問題
• 有一天,你可能需 要處理每種尺寸規格
ANDROID STUDIO
安裝與介紹
19Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Android Studio
• Android 開發整合平台
• 基於 JetBrains IntelliJ IDEA
• 所見己所得編輯方式
• Layout 編輯器
• Gradle 建構
• Gradle
• 專案自動化建構工具
• 自動處理套件相依關係
• Android SDK Tools
20Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 大綱
• Android Studio 安裝流程
• Android Studio 操作介面介紹
21Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 1. 點選連結,下載Android Studio 最新版本
22Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 2. 開啟安裝程式,點選 Next
23Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 3. 勾選Android SDK, Android Virtual Device,點選Next
24Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 4. 點選 I Agree
25Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 5. 選擇 Android Studio與SDK 安裝路徑,點選Next >
26Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 6. 選擇開始選單資料夾,點選 Install
27Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 7. 安裝中
28Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 8. 完成安裝,點選 Next
29Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 9. 勾選開啟 Android studio,點選 Finish
30Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 大綱
• Android Studio 安裝流程
• Android Studio 操作介面介紹
31Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 1. 啟動 Android Studio
最近開啟專案
開新專案
開啟舊專案
從版控匯出專案
匯入與整合
Android 專案
32Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 2. 開新專案 -> 輸入專案資訊 ->點選下一步
33Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 3. 選擇專案屬性
• 開發裝置
• 最低 Sdk 版本
34Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 4. 選擇預設Activty
35Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• Step 5. Activty 相關設定
36Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介1
專案結構
工具列:SDK、AVD、編譯執行與Debug
撰寫程式
重要資訊
37Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 2
專案相關功能:
新增專案、開啟舊專案、關閉專案、最近專案
IDE設定:
編輯器、版本控管設定、語言設定、工具..等
Project Structure:
SDK 位置設定、專案相關套件設定、IDE套件設定、
Ads、Firebase…等
38Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 2 – Project Structure
設定內容
套件相依設定
相關設定標籤
39Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 3
Make Project
Debug
Run App
Sync Project
With Gradle files SDK Manager
AVD Manager
40Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 3
• Make Project
• Rebuild Project
• Sync Project With Gradle files
41Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 3 – SDK Manager
42Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 3 – AVD Manager
• 若無裝置,可以透過虛擬裝置執行自己的APP
43Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 3 – AVD Manager
• 設定各種不同裝置、銀幕大小、API Level
44Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 3 – AVD Manager
• 設定各種不同裝置、銀幕大小、API Level
45Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 3 – Run & Debug demo
46Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 4 – Refactor
• 運用IDE內Refactor功能,可以節省
很多問題與繁雜的修改過程
• Rename Demo
• Safe Delete Demo
47Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 5 – VCS
• Android Studio與多家版本控管整合相當良好
• Github Demo
48Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 5 – VCS
49Presented By: Duran Hsieh
ANDROID STUDIO 安裝與介紹
• 操作介面簡介 5 – VCS
Android 專案架構
51Presented By: Duran Hsieh
ANDROID 專案架構
應用程式宣示說明
程式、測試程式
Resource,包含layout、
value、style 等相關設定
自動化建構相關設定
52Presented By: Duran Hsieh
ANDROID 專案架構
• Manifest.xml
• 顯示應用程式的基本資訊
• Activity與服務描述
• 裝置、感測器權限
• 宣告最低API級別
• 列出應用程式必須連結的
程式庫
53Presented By: Duran Hsieh
ANDROID 專案架構
• Java Folder
• 主要程式放置位置
• Activity, Fragment, Service…
• Clean
• 寫人看得懂的程式
• 有意義的命名
• 傳遞參數越少越好(DTO概念)
• 必要的註解
54Presented By: Duran Hsieh
ANDROID 專案架構
• Res Folder
• Drawable
• XML 格式
• 可繪製到銀幕上的圖形資源檔案
• Layout
• XML 格式
• 版面配置:定義視覺結構
• Values
• XML 格式,多種類型,如string, style
• 定義附加檔案或靜態資料
55Presented By: Duran Hsieh
ANDROID 專案架構
• Gredle Script
Hello World
57Presented By: Duran Hsieh
HELLO WORLD
• 大綱
• Activity 生命週期
• 範例程式說明 – Hello World
58Presented By: Duran Hsieh
HELLO WORLD
• Activity Lifecycle
• onStart();
• onRestart();
• onResume();
• onPause();
• onStop();
• onDestroy();
59Presented By: Duran Hsieh
HELLO WORLD
• 大綱
• Activity 生命週期
• 範例程式說明 – Hello World
60Presented By: Duran Hsieh
HELLO WORLD
• Manifest
61Presented By: Duran Hsieh
HELLO WORLD
• MainActivity.java
62Presented By: Duran Hsieh
HELLO WORLD
• main_activity.xml
裝置設定:
API, 裝置類型, 水
平垂直顯示…等
各種元件
(可以拖拉)
畫面預覽
63Presented By: Duran Hsieh
HELLO WORLD
• main_activity.xml
XML 描述
預覽畫面
64Presented By: Duran Hsieh
HELLO WORLD
• res 使用
• 於 values/string.xml 內加入
65Presented By: Duran Hsieh
HELLO WORLD
• 於 main_activity.xml 內將text替換成 @string/display_message
66Presented By: Duran Hsieh
HELLO WORLD
• Run and result
67Presented By: Duran Hsieh
HELLO WORLD
• Linear Layout
component
component
component
component component component
68Presented By: Duran Hsieh
HELLO WORLD
• Linear Layout
69Presented By: Duran Hsieh
HELLO WORLD
• Button
70Presented By: Duran Hsieh
HELLO WORLD
• Button
• Find view (bind)
• Register event (ClickListener)
71Presented By: Duran Hsieh
HELLO WORLD
• Practice : Linear Layout, TextView, and Button
• 2個TextView
• 1個button
• 使用linear layout
• 按下按鈕後 status 改變
Textview: title
Textview: status button
72Presented By: Duran Hsieh
HELLO WORLD
• 原始碼:
• https://github.com/matsurigoto/AndroidButtonExample.gi
t
GPS 感測器介紹
74Presented By: Duran Hsieh
GPS 感測器介紹
• 大綱
• 原理與介紹
• 程式碼範例
• 經驗分享
• 實作:即時顯示GPS資訊
75Presented By: Duran Hsieh
GPS 感測器介紹
• 實作 LocationListener
76Presented By: Duran Hsieh
GPS 感測器介紹
• 取得服務 (GPS_Provider or NETWORK_Provider)
• 確認使用者有開啟NETWORK 或 GPS 服務
• 取得LOCATION_SERVICE
• 取得GPS 提供的位置
77Presented By: Duran Hsieh
GPS 感測器介紹
• 加入一個方法,更新畫面上 textview,顯示幕前經
緯度
78Presented By: Duran Hsieh
GPS 感測器介紹
1.放到onLocationChanged
方法內
2.放到取得GPS位置後
79Presented By: Duran Hsieh
GPS 感測器介紹
• Manifest.xml 內增加存取權限
80Presented By: Duran Hsieh
GPS 感測器介紹
• 原始碼:
• https://github.com/matsurigoto/AndroidGPSExample.git
QUESTION & ANSWERS
THANK YOU FOR
WATCHING

Android 基礎開發課程

  • 1.
    ANDROID 基礎開發課程 (1) Presented by DuranHsieh http://dog0416.blogspot.tw/
  • 2.
    2Presented By: DuranHsieh 關於我 • 謝政廷 (Duran Hsieh) • 曾任逢甲大學資訊系 • 教育部計畫/國科會計畫兼任研究助理 • 文史脈流/網通人才培育/資策會委託案 • ASP .NET MVC C# 業師 • 曾任凌網科技 : • 開發工程師/資深工程師/教育訓練講師/專案經理 • 13建置案/維護案、參與競標簡報 (1 android project) • 15場教育訓練、訓練超過150位以上使用者 • 曾任 Freelancer • 外包專案、自由研究開發者 (1 android project) • 台中市輔具整合平台
  • 3.
    3Presented By: DuranHsieh 關於我 • 現任 Asia Fusion Technology • C# .Net Developer • 第三分支付介接、持續整合、系統維護 • 現任 2016年 Microsoft MVP • Visual Studio and Development Technologies • 現任 Study4.TW 社群成員 • 每月活動企劃 • 台中場務負責
  • 4.
    4Presented By: DuranHsieh 關於我 • 證照與課程完成證明 • Oracle Certified Professional, Java SE 6 Programmer • MS: Programming in HTML5 with JavaScript and CSS3 • Oracle Database SQL Certified Expert • Oracle Database 10g Administrator Certified Associate - Version Retired • Oracle Database 10g Administrator Certified Professional - Version Retired • (Course completion confirmation) M102: MongoDB for DBAs • (Course completion confirmation) M101N: MongoDB for .NET Developers • MCSA: Web Applications • MCSD: Web Applications • MCSD: App Builder
  • 5.
    5Presented By: DuranHsieh 關於我 • 競賽 • 2011資訊教育與科技應用研討會專題競賽佳作(Excellent Work) • 2010 Open Source and Creative Application Contest (Silver Medal Award) • 2012跨領域創意網路通訊應用與服務競賽 (特優) • IBM Taiwan 2011 z Master Contest (Excellent Performance in Part II) • The 2012 Network Communication software and Creative Application Contest Award (First Prize) • 2014第7屆IT邦幫忙鐵人賽入圍 佳作(Excellent Work) • 2015 Microsoft Community Challenge (Second Prize) • 2017第8屆IT邦幫忙鐵人賽 佳作(Excellent Work)
  • 6.
    OUTLINE • 課程目標與進度 • Android基礎知識 • Android Studio 安裝與介紹 • Android 專案架構 • Hello World • GPS 感測器介紹 • Q&A
  • 7.
    7Presented By: DuranHsieh 課程目標與進度 • 課程目標 • Android 基礎知識 • 名詞解釋 • 運作原理、生命週期 • Android Studio 介紹與操作 • Android App 開發實作 • Android 專案架構說明、Java 學習 • Layout、Components 介紹、操作與程式實作 • 地圖互動程式製作 • 上架教學 • 如何將你的 App 上架 • 廣告
  • 8.
    8Presented By: DuranHsieh 課程目標與進度 •課程進度 日期 說明 04月06日 Android 基礎知識與安裝環境 Android上使用GPS感測器 作業:GPS 範例程式 04月13日 期中考放假 04月20日 Android Google map API 作業:建立地圖範例程式 04月27日 地圖互動程式製作、產生APK與APP上架 作業:準備小專題 05月18日 小專題成果驗收 - DEMO
  • 9.
  • 10.
    10Presented By: DuranHsieh ANDROID 基礎知識 • 相關知識 • 開源且免費 • 基於 Linux 核心之作業系統 • C、C++、Java • Google • 收購並創立聯盟 • 多家廠商研究與開發 • 可以使用在多數電子裝置 • Android Wear • Android TV • Google Play 與 APK
  • 11.
    11Presented By: DuranHsieh ANDROID 基礎知識 Web Page Web Page Web Page • Web Site 操作行為 網址 參數 網址 參數
  • 12.
    12Presented By: DuranHsieh ANDROID 基礎知識 Activity Activity Activity • Android 操作行為 Intent Intent
  • 13.
    13Presented By: DuranHsieh ANDROID 基礎知識 MainActivity CamaraActivity • Android 操作行為
  • 14.
    14Presented By: DuranHsieh ANDROID 基礎知識 • Android 運作 Activity (前景顯示) Service (程式處理)
  • 15.
    15Presented By: DuranHsieh ANDROID 基礎知識 • Android Layout • XML • Programmatically creating UI • 建議採用 XML • 程式碼較為簡潔 • 盡可能切割View與邏輯
  • 16.
    16Presented By: DuranHsieh ANDROID 基礎知識 • Native ? Cordova? Xamarin? 手機版網頁? • Native 學習曲線高 • 若有C# 或 html, js 經驗, Xamarin 與 Cordova 較快入門 • Native 客製化較佳 • 不僅僅只有表單處理與資訊呈現 • Native 較佳處理速度 • 並非所有情境,但如果你能處理底層….? • Native 開發成本高 • Native sensor 控制佳
  • 17.
    17Presented By: DuranHsieh ANDROID 基礎知識 • 經驗談 • SDK 與 套件版本問題 • Open Source 對於初學者是兩面刃 • 相容性問題弄得很頭痛 • UI、Resource 處理 • 不僅僅只有表單與套版 • Thread • 品牌眾多,裝置大小不同,百家爭鳴 • 有一天,你可能需要處理不同品牌問題 • 有一天,你可能需 要處理每種尺寸規格
  • 18.
  • 19.
    19Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Android Studio • Android 開發整合平台 • 基於 JetBrains IntelliJ IDEA • 所見己所得編輯方式 • Layout 編輯器 • Gradle 建構 • Gradle • 專案自動化建構工具 • 自動處理套件相依關係 • Android SDK Tools
  • 20.
    20Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 大綱 • Android Studio 安裝流程 • Android Studio 操作介面介紹
  • 21.
    21Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 1. 點選連結,下載Android Studio 最新版本
  • 22.
    22Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 2. 開啟安裝程式,點選 Next
  • 23.
    23Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 3. 勾選Android SDK, Android Virtual Device,點選Next
  • 24.
    24Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 4. 點選 I Agree
  • 25.
    25Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 5. 選擇 Android Studio與SDK 安裝路徑,點選Next >
  • 26.
    26Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 6. 選擇開始選單資料夾,點選 Install
  • 27.
    27Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 7. 安裝中
  • 28.
    28Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 8. 完成安裝,點選 Next
  • 29.
    29Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 9. 勾選開啟 Android studio,點選 Finish
  • 30.
    30Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 大綱 • Android Studio 安裝流程 • Android Studio 操作介面介紹
  • 31.
    31Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 1. 啟動 Android Studio 最近開啟專案 開新專案 開啟舊專案 從版控匯出專案 匯入與整合 Android 專案
  • 32.
    32Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 2. 開新專案 -> 輸入專案資訊 ->點選下一步
  • 33.
    33Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 3. 選擇專案屬性 • 開發裝置 • 最低 Sdk 版本
  • 34.
    34Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 4. 選擇預設Activty
  • 35.
    35Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • Step 5. Activty 相關設定
  • 36.
    36Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介1 專案結構 工具列:SDK、AVD、編譯執行與Debug 撰寫程式 重要資訊
  • 37.
    37Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 2 專案相關功能: 新增專案、開啟舊專案、關閉專案、最近專案 IDE設定: 編輯器、版本控管設定、語言設定、工具..等 Project Structure: SDK 位置設定、專案相關套件設定、IDE套件設定、 Ads、Firebase…等
  • 38.
    38Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 2 – Project Structure 設定內容 套件相依設定 相關設定標籤
  • 39.
    39Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 3 Make Project Debug Run App Sync Project With Gradle files SDK Manager AVD Manager
  • 40.
    40Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 3 • Make Project • Rebuild Project • Sync Project With Gradle files
  • 41.
    41Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 3 – SDK Manager
  • 42.
    42Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 3 – AVD Manager • 若無裝置,可以透過虛擬裝置執行自己的APP
  • 43.
    43Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 3 – AVD Manager • 設定各種不同裝置、銀幕大小、API Level
  • 44.
    44Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 3 – AVD Manager • 設定各種不同裝置、銀幕大小、API Level
  • 45.
    45Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 3 – Run & Debug demo
  • 46.
    46Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 4 – Refactor • 運用IDE內Refactor功能,可以節省 很多問題與繁雜的修改過程 • Rename Demo • Safe Delete Demo
  • 47.
    47Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 5 – VCS • Android Studio與多家版本控管整合相當良好 • Github Demo
  • 48.
    48Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 5 – VCS
  • 49.
    49Presented By: DuranHsieh ANDROID STUDIO 安裝與介紹 • 操作介面簡介 5 – VCS
  • 50.
  • 51.
    51Presented By: DuranHsieh ANDROID 專案架構 應用程式宣示說明 程式、測試程式 Resource,包含layout、 value、style 等相關設定 自動化建構相關設定
  • 52.
    52Presented By: DuranHsieh ANDROID 專案架構 • Manifest.xml • 顯示應用程式的基本資訊 • Activity與服務描述 • 裝置、感測器權限 • 宣告最低API級別 • 列出應用程式必須連結的 程式庫
  • 53.
    53Presented By: DuranHsieh ANDROID 專案架構 • Java Folder • 主要程式放置位置 • Activity, Fragment, Service… • Clean • 寫人看得懂的程式 • 有意義的命名 • 傳遞參數越少越好(DTO概念) • 必要的註解
  • 54.
    54Presented By: DuranHsieh ANDROID 專案架構 • Res Folder • Drawable • XML 格式 • 可繪製到銀幕上的圖形資源檔案 • Layout • XML 格式 • 版面配置:定義視覺結構 • Values • XML 格式,多種類型,如string, style • 定義附加檔案或靜態資料
  • 55.
    55Presented By: DuranHsieh ANDROID 專案架構 • Gredle Script
  • 56.
  • 57.
    57Presented By: DuranHsieh HELLO WORLD • 大綱 • Activity 生命週期 • 範例程式說明 – Hello World
  • 58.
    58Presented By: DuranHsieh HELLO WORLD • Activity Lifecycle • onStart(); • onRestart(); • onResume(); • onPause(); • onStop(); • onDestroy();
  • 59.
    59Presented By: DuranHsieh HELLO WORLD • 大綱 • Activity 生命週期 • 範例程式說明 – Hello World
  • 60.
    60Presented By: DuranHsieh HELLO WORLD • Manifest
  • 61.
    61Presented By: DuranHsieh HELLO WORLD • MainActivity.java
  • 62.
    62Presented By: DuranHsieh HELLO WORLD • main_activity.xml 裝置設定: API, 裝置類型, 水 平垂直顯示…等 各種元件 (可以拖拉) 畫面預覽
  • 63.
    63Presented By: DuranHsieh HELLO WORLD • main_activity.xml XML 描述 預覽畫面
  • 64.
    64Presented By: DuranHsieh HELLO WORLD • res 使用 • 於 values/string.xml 內加入
  • 65.
    65Presented By: DuranHsieh HELLO WORLD • 於 main_activity.xml 內將text替換成 @string/display_message
  • 66.
    66Presented By: DuranHsieh HELLO WORLD • Run and result
  • 67.
    67Presented By: DuranHsieh HELLO WORLD • Linear Layout component component component component component component
  • 68.
    68Presented By: DuranHsieh HELLO WORLD • Linear Layout
  • 69.
    69Presented By: DuranHsieh HELLO WORLD • Button
  • 70.
    70Presented By: DuranHsieh HELLO WORLD • Button • Find view (bind) • Register event (ClickListener)
  • 71.
    71Presented By: DuranHsieh HELLO WORLD • Practice : Linear Layout, TextView, and Button • 2個TextView • 1個button • 使用linear layout • 按下按鈕後 status 改變 Textview: title Textview: status button
  • 72.
    72Presented By: DuranHsieh HELLO WORLD • 原始碼: • https://github.com/matsurigoto/AndroidButtonExample.gi t
  • 73.
  • 74.
    74Presented By: DuranHsieh GPS 感測器介紹 • 大綱 • 原理與介紹 • 程式碼範例 • 經驗分享 • 實作:即時顯示GPS資訊
  • 75.
    75Presented By: DuranHsieh GPS 感測器介紹 • 實作 LocationListener
  • 76.
    76Presented By: DuranHsieh GPS 感測器介紹 • 取得服務 (GPS_Provider or NETWORK_Provider) • 確認使用者有開啟NETWORK 或 GPS 服務 • 取得LOCATION_SERVICE • 取得GPS 提供的位置
  • 77.
    77Presented By: DuranHsieh GPS 感測器介紹 • 加入一個方法,更新畫面上 textview,顯示幕前經 緯度
  • 78.
    78Presented By: DuranHsieh GPS 感測器介紹 1.放到onLocationChanged 方法內 2.放到取得GPS位置後
  • 79.
    79Presented By: DuranHsieh GPS 感測器介紹 • Manifest.xml 內增加存取權限
  • 80.
    80Presented By: DuranHsieh GPS 感測器介紹 • 原始碼: • https://github.com/matsurigoto/AndroidGPSExample.git
  • 81.
  • 82.

Editor's Notes

  • #8 1. Net core rc4 版本,dotnet new 指令有重大變更。
  • #9 1. Net core rc4 版本,dotnet new 指令有重大變更。
  • #11 參考資料:https://zh.wikipedia.org/wiki/Android
  • #15 你需要知道處理 Thread、同步異步問題時,你在哪裡?
  • #17 1. Net core rc4 版本,dotnet new 指令有重大變更。
  • #18 開源程式 1.資源很多,你是否能找到它? 2.你有很多資源可以使用,但你必須駕馭它? 3.你是否也能貢獻?
  • #20 參考資料: https://zh.wikipedia.org/wiki/Android_Studio https://zh.wikipedia.org/wiki/Gradle
  • #51 Note: Insert your picture by clicking on the Picture Place Holder Icon, then send it back!
  • #54 Clean Code 說明
  • #55 1.各種 Res 使用說明 2. 範例介紹
  • #56 1.各種 Res 使用說明 2. 範例介紹
  • #57 Note: Insert your picture by clicking on the Picture Place Holder Icon, then send it back!
  • #59 1.各種 Res 使用說明 2. 範例介紹
  • #61 設定icon, label, theme 設定起始的Activity 設定這個應用程式內需要的Activity 設定權限(此頁沒有,後續範例提供)
  • #62 Activity 都必須要有 OnCreate 方法(不然怎麼開始?) 設定這個Activity 對應的 Layout
  • #64 外層 Layout 包內層components (通常),依據Layout類型不同,內容些微不同 屬性介紹 width, height, text, 相對位置…等 將靜態資料寫入res/string中
  • #65 將靜態資料寫入res/string中
  • #66 將靜態資料寫入res/string中
  • #70 https://developer.android.com/reference/android/widget/Button.html
  • #71 https://developer.android.com/reference/android/widget/Button.html
  • #80 <uses-permission android:name="android.permission.INTERNET"></uses-permission> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>