建立 Android 新專案

98
建建 Android 建建建 建建建建建建 建建建 建建建 2012/4 V1 2012/8 V2 Android 建建建建建建建建建 建建建建建建建建

description

Android 智慧型手機程式設計 程式設計與應用班. 建立 Android 新專案. 建國科技大學 資管系 饒瑞佶 2012/4 V1 2012/8 V2. 建立新專案步驟 使用 Eclipse. 步驟 1 :啟動 Eclipse 步驟 2 : File  New  Project Android Project 步驟 3 :設定專案參數 ( 主要 4 個 ) Project name Application name Package name Create activity 步驟 4 :編輯程式 步驟 5 :執行程式. 建立新專案. - PowerPoint PPT Presentation

Transcript of 建立 Android 新專案

Page 1: 建立 Android 新專案

建立 Android 新專案

建國科技大學 資管系饒瑞佶

2012/4 V1

2012/8 V2

Android 智慧型手機程式設計程式設計與應用班

Page 2: 建立 Android 新專案

建立新專案步驟使用 Eclipse

• 步驟 1 :啟動 Eclipse• 步驟 2 : File New Project Android Project• 步驟 3 :設定專案參數 ( 主要 4 個 )– Project name– Application name– Package name– Create activity

• 步驟 4 :編輯程式• 步驟 5 :執行程式

Page 3: 建立 Android 新專案

建立新專案本範例設定如下:• Project name : Hello Android• Application name : Hello Android App• Package name : com.android.hello• Create Activity : HelloAndroid

Page 4: 建立 Android 新專案

建立新專案步驟步驟 1 :啟動 Eclipse

Eclipse.exe Eclipse 啟動畫面

1

2

Page 5: 建立 Android 新專案

建立新專案步驟步驟 1 :啟動 Eclipse

指定工作空間3

放置原始碼位置請指定您自己需要的目錄來存放新專案

Page 6: 建立 Android 新專案

建立新專案步驟步驟 2 :建立新專案

1

Page 7: 建立 Android 新專案

建立新專案步驟步驟 2 :建立新專案

2

選擇 Android Android Project

3

版面會因 ADT 不同而不同

Page 8: 建立 Android 新專案

建立新專案步驟步驟 3 :設定專案參數

3Project name

4

選擇 platform

5

Page 9: 建立 Android 新專案

建立新專案步驟步驟 3 :設定專案參數

新的 ADT 畫面可能不同!!

Page 10: 建立 Android 新專案

建立新專案步驟步驟 3 :設定專案參數

8

Application name7 Package name

6

Page 11: 建立 Android 新專案

建立新專案步驟• Project name :專案名稱, Eclipse 中使用• Application name :應用程式名稱,未來安裝到

手機上時的顯示名稱• Package name : APK ( Android Package )安

裝套件名稱(使用網域名稱的命名方式,只要符合應用程式意涵就可以)– Google play 不接受 com.android.xx 或 com.sample.xx

• Create Activity :動作類別名稱,未來 OS 以這個名稱判別程式處於活動、暫停或關閉狀態

Page 12: 建立 Android 新專案

建立新專案步驟• Min SDK Version : SDK API Level 版

本2=1.1 版3=1.5 版4=1.6 版5=2.0 版…( 更多的請參考 Android SDK 一節 )

Page 13: 建立 Android 新專案

Android 程式目錄架構• Package explorer

Java 原始檔案

R.java 版面與資源設定檔(自動產生,不要輕易更改)

程式介面主檔案 main.xml內容檔案 strings.xml

AndroidMainfest.xml 定義應用程式整體內容與資源定義 Android SDK 版本的檔案 default.properties

Android.jar 指出 Android SDK 存放的目錄

多數時間都與其打交道

可以存放一些資源檔案的目錄

Page 14: 建立 Android 新專案

Android 程式目錄架構• Eclipse 內的 workspace 目錄• 實際檔案目錄

Page 15: 建立 Android 新專案

先不更改任何程式下執行看看本專案的結果

Page 16: 建立 Android 新專案

步驟 5 :執行專案程式• 如果有設定好 AVD ,會自動啟動模擬器• 會將 APK ( com.android.hello )安裝到模

擬器( data/app/ 目錄)上面• 模擬器上顯示 Application name ( Hello

Android App )的名稱

Page 17: 建立 Android 新專案

步驟 5 :執行專案程式

1

如果沒有設定,請設定專案對應的 AVD

Page 18: 建立 Android 新專案

步驟 5 :執行專案程式

2

設定專案對應的 AVD

Page 19: 建立 Android 新專案

步驟 5 :執行專案程式

3

4

設定專案對應的 AVD

Page 20: 建立 Android 新專案

步驟 5 :執行專案程式

5 確定模擬器

6

設定專案對應的 AVD

Page 21: 建立 Android 新專案

步驟 5 :執行專案啟動模擬器 I

啟動模擬器執行需時較久,請耐心等候

Page 22: 建立 Android 新專案

步驟 5 :執行專案啟動模擬器 II

Page 23: 建立 Android 新專案

步驟 5 :執行專案啟動模擬器 III

這個畫面長怎樣,要看你選的 SDK 版本

Page 24: 建立 Android 新專案

步驟 5 :執行專案模擬器結果

Page 25: 建立 Android 新專案

模擬器上程式畫面

模擬器不用關閉,等待下次執行

Page 26: 建立 Android 新專案

如何看模擬器上面的 data/app 目錄 (I)

• 執行程式會將 APK 套件( com.android.hello )安裝到模擬器( data/app/ 目錄)上面

• 透過 android-sdk-windows\tools\adb.exe

Page 27: 建立 Android 新專案

如何看模擬器上面的 data/app 目錄 (II)

• 模擬器要開啟執行

adb shell1

Page 28: 建立 Android 新專案

如何看模擬器上面的 data/app 目錄 (III)

cd data/app2

Page 29: 建立 Android 新專案

如何看模擬器上面的 data/app 目錄 (IV)

ls3

Page 30: 建立 Android 新專案

先來講講兩個檔案main.xml 與 strings.xml

• 為何沒寫程式會出現 hello world ?

UI 主介面關連到 strings.xml 內的hello 標記內容

Page 31: 建立 Android 新專案

main.xml 與 strings.xml

主要顯示內容

hello 標記內容

Page 32: 建立 Android 新專案

整個原始專案內容

看到這個有什麼感覺?

找找看 Java 程式在那?

專案內兩大檔案類型.java.xml

Page 33: 建立 Android 新專案

整個原始程式內容Package name( 代表這支程式,未來要找到它就靠這個 )

預設的兩個 class

Activity 名稱

啟動 Activity 的事件 儲存 Activity 狀態

畫面上顯示之內容

連結到 main.xml

覆載

繼承自 Activity

執行原 class 中的方法

Page 34: 建立 Android 新專案

R.java

定義所有的 res 資源,自動產生,不要隨便去更改

Page 35: 建立 Android 新專案

另一個很重要的檔案AndroidManifest.xml

Package name

目標 SDK

預設啟動的 Activity

預告:所有 Activity 都要在這註冊

Page 36: 建立 Android 新專案

AndroidManiFest.xml

• 還可以做:– 專案 icon 設定– 匯出 APK– 設定 Activity 顯示方式 ( 例如螢幕旋轉 )– 設定專案啟動時的 Activity– 設定專案的權限 ( 例如是否可以使用 sdcard)– 版本控管–…

這些東西將陸續在後面章節提到

Page 37: 建立 Android 新專案

先畫個圖

R.java

Java 程式

Java 程式

Res資源

layout

drawable

變動自動註冊

透過 package name互相串連

使用方法:• R.id. 名稱• R.layout. 名稱• R.string. 名稱• getResources().getString(

R.string.receiving)

• @string/名稱

values

Page 38: 建立 Android 新專案

開始來修改程式

Page 39: 建立 Android 新專案

修改程式

1 開啟 java 原始檔

Page 40: 建立 Android 新專案

原始程式碼內容Package name

預設的兩個 class

Activity 名稱

啟動 Activity 的事件 儲存 Activity 狀態

畫面上顯示之內容

Page 41: 建立 Android 新專案

修改 strings.xml

改成:這是我的第一個 Android 程式

Page 42: 建立 Android 新專案

修改 strings.xml

再重新執行一次程式

Page 43: 建立 Android 新專案

重新執行程式

Page 44: 建立 Android 新專案

修改 main.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" ><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/content" /> </LinearLayout>

新加入的程式

連結到 strings.xml

Page 45: 建立 Android 新專案

修改 strings.xml

<?xml version="1.0" encoding="utf-8"?><resources> <string name="hello">Hello World, 這是我的第一個 Android程式 !</string>

<string name="content">這一段是屬於內容的部分 \n 請大家指教 </string>

<string name="app_name">Hello Android App</string>

</resources>

新加入的內容

Page 46: 建立 Android 新專案

新程式執行結果

Page 47: 建立 Android 新專案

從模擬器取出 APK安裝到實際手機上

Page 48: 建立 Android 新專案

從模擬器取出 APK• 方法 1 : adb pull 指令 (Android SDK tools)

adb pull /data/app/com.android.hello.apk .

Page 49: 建立 Android 新專案

com.android.hello.apk

Page 50: 建立 Android 新專案

從模擬器取出 APK• 方法 2 :透過 AndroidMainfest.xml

Page 51: 建立 Android 新專案

從模擬器取出 APK方法 2 :透過 AndroidMainfest.xml

• Use the Export Wizard to export and sign an APK

Page 52: 建立 Android 新專案

從模擬器取出 APK方法 2 :透過 AndroidMainfest.xml

Page 53: 建立 Android 新專案

從模擬器取出 APK方法 2 :透過 AndroidMainfest.xml

至少填到這裡

Page 54: 建立 Android 新專案

從模擬器取出 APK方法 2 :透過 AndroidMainfest.xml

實際存檔 apk 名稱

Page 55: 建立 Android 新專案

從模擬器取出 APK方法 2 :透過 AndroidMainfest.xml

Page 56: 建立 Android 新專案

從模擬器取出 APK方法 2 :透過 AndroidMainfest.xml

Page 57: 建立 Android 新專案

APK 套件

類似於 Windows 系統的 setup.exe 安裝檔案

Page 58: 建立 Android 新專案

安裝 APK 套件

• 可以透過廠商提供的 Sync軟體,例如 HTC Sync• 透過 SDK tool 的 adb install

Page 59: 建立 Android 新專案

安裝 APK 套件到手機HTC Sync

• Sync 同步軟體

Page 60: 建立 Android 新專案
Page 61: 建立 Android 新專案

安裝 APK 套件到手機

Page 62: 建立 Android 新專案

安裝 APK 套件到手機

Page 63: 建立 Android 新專案

安裝 APK 套件到手機

Page 64: 建立 Android 新專案

Android 手機畫面

Page 65: 建立 Android 新專案

手機上安裝完成畫面

Page 66: 建立 Android 新專案

手機上程式集畫面

Page 67: 建立 Android 新專案

安裝 APKadb install

adb install com.android.hello.apk .

Page 68: 建立 Android 新專案

ddms 管理軟體Android SDK tools

• ddms.bat

Page 69: 建立 Android 新專案
Page 70: 建立 Android 新專案

這裡一樣可以看模擬器上面的檔案

Page 71: 建立 Android 新專案

專案轉移

Page 72: 建立 Android 新專案

• 專案在 Eclipse 的 workspace 目錄中

專案轉移

Page 73: 建立 Android 新專案

• workspace 目錄中每個目錄名稱就是一個專案

專案轉移

這些都是專案

• 直接複製這個目錄就可以轉移

Page 74: 建立 Android 新專案

• 透過 Eclipse 的 import 匯入專案專案轉移

Page 75: 建立 Android 新專案

• 透過 Eclipse 的 import 匯入專案專案轉移

選擇專案目錄所在位置就可以

Page 76: 建立 Android 新專案

New class 或 XML

Page 77: 建立 Android 新專案

New class

1

2

Page 78: 建立 Android 新專案

New class

3

4

Page 79: 建立 Android 新專案

New class

5

6

7

Page 80: 建立 Android 新專案

New class

8

Page 81: 建立 Android 新專案

New class

Page 82: 建立 Android 新專案

New XML1

2

Page 83: 建立 Android 新專案
Page 84: 建立 Android 新專案

New XML

Page 85: 建立 Android 新專案

New XML

Page 86: 建立 Android 新專案

New 檔案• 其實不用那麼麻煩…• 我們常常用的都是 Copy Paste

Page 87: 建立 Android 新專案

幾個小技巧

Page 88: 建立 Android 新專案

Project Clean

重新 compile Project

Page 89: 建立 Android 新專案

Refresh

重新建立專案內檔案連結

Page 90: 建立 Android 新專案

Android Tools Fix Project Properties

修復專案內某些參數連結與設定

Page 91: 建立 Android 新專案

Properties

所有專案相關設定

Page 92: 建立 Android 新專案

預設執行的 SDK Level

Page 93: 建立 Android 新專案

加入外部 jar 檔案

Page 94: 建立 Android 新專案

使用的 Java compiler

Page 95: 建立 Android 新專案

還有嗎?當然有

… .碰到再說!

Page 96: 建立 Android 新專案

補充

解決Application 與 Activity Label屬性衝突問題

Page 97: 建立 Android 新專案

方法一• 多設定 intent-filter 內的 android:label屬性• 移除 application 內的 android:label屬性• intent-filter 的 label屬性將取代

application ,同時與 activity 的不同

Page 98: 建立 Android 新專案

方法二• 移除 activity 內的 android:label屬性• 重新用程式定義 activity 標題–加入 layout/my_title.xml

– onCreate 中加入程式碼