[教學]Android的第一個程式
裝好了Eclipse Android開發工具後再來簡介一下Android如何快速的開發
Android開發GUI程式大概分成二種方式
第一種是直接打code,第二種則是利用xml檔設定物件屬性,動作再輸入程式碼控制
現在要介紹的是如何用xml設定一個GUI畫面及設定其屬性
ps.需先安裝環境,可參考[安裝教學]使用Eclipse開發Android程式
1,設定Google Android模擬器環境
Windows –> Android ADV Manager
新增一個AVD
Name:名稱
Target:Android的版本
SDCard:填入記憶卡的容量
2,建立專案
File –> New
Project name : 專案名稱
Build Target : 開發的SDK版本
Application name : 程式名稱,也可以說是顯示在程式Title上的名稱
Package name : Package 名稱,需二層
Create Acivity : 需要打勾,輸入一個程式名,like L123,之後程式會以這裡為啟動點
這裡就可以很明顯看到剛才填的東西
其中 gen 的R.java是系統資料檔,幾乎所有的元件都在此設定(以Google Android開發工具的設定)
而 res 為外部資源檔,裡面可以設定文字、圖片、XML等,其中文字拿到外部設定是為了能直接支援多國語系
layout : 為畫面設定檔
values : 為設定資源檔
ps.以下圖片可能在src裡的內容有些不同,是在截圖的小錯誤,不影響
3,設計畫面
直接雙擊 res 裡的layout main.xml 則會開啟GUI畫面
左一 Layouts 為一層一層的Layout
左二 Views 為元件
下方 Properties 為屬性設定窗
右一 Outline 為元件列表
再來從Views 拉二個元件-Button 及 EditText 放到畫面試看看
然後可以在選擇EditText物件,在屬性窗裡找到Text 設定它的Value 來試看看
也可以利用設定xml來顯示值的部份
在剛才輸入Hello 右邊有一個Browser按鈕按下去
可以看到設定資料檔(你也可以直接雙擊 res 裡的 values的string.xml)
String : 此參數在有選定XML resource to edit 才有做用?
new .R .string : 引用此文字的名稱
可以看到剛才輸入Hello的那個Text 屬性有的變化,而畫面字也不見了,再來要真正設定字的內含值
雙擊 res 裡的 values的string.xml
把要的值設進去,然後再變回去main.xml看看,畫面會有變化(亂碼,不過別介意)
4,執行程式
Run –> Run Configurations
選擇Android Application 按右鍵選New
Browser要執行的程式專案名稱
然後跳到第二個tab Target
ADV部份選則之前設定的那一個,然後選Run
模擬器會啟動及顯示結果,速度會應電腦設備而有所不同,請等一下看看^^



我在模擬器顯示結果之前會有以下訊息:
Process com.android.phone is not responding.
有兩個選項可以選擇
1.Force close 2.Wait
我選擇 Force close 後可以顯示出正確結果
但是不了解這個訊息代表甚麼? 如何解決 ?
謝謝
[回應]
yku Replay:
七月 7th, 2010 at 4:19 下午
是指某一個程式com.android.phone可能在執行時(因為是多工)
並未在指定時間內完成init,所以會問你是否要等待他完成(有時是當掉了)
或是直接關閉
模擬器很容易出現這種狀況,建議除非是自己開發的程式,否則都請選擇wait等待程式init完成
[回應]
請問在建立專案New Android Projec ->Build Target中target Name選Android1.5後面API為3所以下面的Min SDK Version才填3是嗎?還有我在3,設計畫面
直接雙擊 res 裡的layout main.xml 卻沒有開啟GUI畫面,會是什麼原因?也就是您提到的"3設計畫面"。我的Android是2.2 謝謝
[回應]
yku Replay:
八月 6th, 2010 at 2:45 下午
Min SDK是用來指定你的SDK環境要用那個版本,越小的版本可支援的android版本越小
不過能使用的功能可能相對也比較少,
Min的意思是最小支援
你可以在res\main.xml節點上按右鍵選->open with ->android layout editor 就可以了
如果沒有的話代表你的套件並沒有安裝完成
[回應]
MICHAEL Replay:
八月 6th, 2010 at 3:23 下午
Dear yku:
我在res\main.xml節點上按右鍵選->open with ->android layout editor 出現的不是
視窗畫面是一串語法,如下:
並沒有你提到的"直接雙擊 res 裡的layout main.xml 則會開啟GUI畫面"
左一 Layouts 為一層一層的Layout
左二 Views 為元件
下方 Properties 為屬性設定窗
右一 Outline 為元件列表
這是為何呢?請大大你可以幫我解疑嗎?
[回應]
yku Replay:
八月 6th, 2010 at 3:49 下午
你可以看這二張圖
看能不能幫助你^^
圖一
圖二
[回應]
請問在3,設計畫面中,已直接雙擊 res 裡的layout main.xml 但並未開啟GUI畫面,反而出現[2010-10-05 18:39:55 - AndroidTest] ERROR: Unable to open class file D:\eclipse\workspace\AndroidTest\gen\test\mob\R.java: No such file or directory. 但實際上檔案是存在的,該如何解決 ?我的Android是1.6, 謝謝 !!
[回應]
yku Replay:
十月 6th, 2010 at 12:59 下午
我建議你把程式重新建立一次看看...
你的R.java檔案可能有移動到
如果不行的話把專案寄來我看看?
[回應]
不好意思,翻了一下前面的Q&A,發現原來要切到 Layout這個worksheet就可以繼續了.謝謝 !!
[回應]
您好請問:
在create new Android string 裡 String 和 new .R .string 打完之後無法按ok
[回應]
yku Replay:
十二月 15th, 2010 at 1:12 下午
請問您有選擇XML resource to edit裡的內容嘛?
[回應]
ricky Replay:
十二月 15th, 2010 at 3:40 下午
@yku,
不好意思,之前因該是沒有選擇XML resource to edit裡的內容,在在可以了
[回應]
Hi, yku,
照你的方式輸入,但無下方之Properties出現,我由main.xml更改'Button01'與'Hello', 執行出現 Error Loading Preference(Dos視窗),手機視窗空白,Console 出現這些字,
[2011-01-10 09:29:39 - Android Test2] ------------------------------
[2011-01-10 09:29:39 - Android Test2] Android Launch!
[2011-01-10 09:29:39 - Android Test2] adb is running normally.
[2011-01-10 09:29:39 - Android Test2] Performing test.mob.L123 activity launch
[2011-01-10 09:29:39 - Android Test2] Automatic Target Mode: launching new emulator with compatible AVD 'Androlid'
[2011-01-10 09:29:39 - Android Test2] Launching a new emulator with Virtual Device 'Androlid'
[2011-01-10 09:29:44 - Android Test2] New emulator found: emulator-5554
[2011-01-10 09:29:44 - Android Test2] Waiting for HOME ('android.process.acore') to be launched...
請問如何解決,萬分感謝
[回應]
yku Replay:
一月 11th, 2011 at 9:57 上午
看你給我的訊息是沒有問題的!
請問可以給我畫面嘛?
[回應]
Hi, yku,
目前測試因無下方之property選單,由main.xml更改'Button01'與'Hello',如下
執行後無Error,一直出現"ANDROID"手機螢幕,未出現'Button01'與'Hello',等了20分鐘,請問如何解決,萬分感謝
[回應]
yku Replay:
一月 12th, 2011 at 9:24 上午
或著你可以用mail把你改過的程式碼給我看一下嘛?
謝謝
[回應]
非常謝謝您,剛剛測試已經解決了,對不起昨日附上xml程式碼, 但被擋掉了(回答框),若有問題再請教您
[回應]
Dear YKU :
目前我有一個問題,我已裝JDK AND Eclipse ,但是當eclipse開啟時,它會跳出SDK Platform Tools component is missing!
Please use the SDK Manager to install it.
請問是哪邊錯呢 ?
非常感謝!!
[回應]
yku Replay:
三月 10th, 2011 at 10:04 上午
你有了其它問題,這問題應該解決了吧?
[回應]
我用eclipse執行程式的時候,
每次碰到emulator螢幕旁邊的按鈕時,
常常會出現ㄧ個小視窗裡面寫著,
{emulator發生錯誤,必須關閉}的字,然後叫我要{不回報}或{回報此問題},
我想請你能不能幫我解決這個問題?
[回應]
yku Replay:
五月 28th, 2011 at 11:13 下午
可以給我下方console裡的錯誤訊息嘛?
[回應]
Jammy Replay:
五月 29th, 2011 at 9:24 上午
@yku, 下面console的訊息是正常執行的訊息,
沒任何錯誤訊息,只是當我用滑鼠碰到上面按鈕時,
它就說有發生錯誤必須關閉的訊息,
我如果沒有用滑鼠碰到按鈕,它就正常執行了
[回應]
yku Replay:
五月 30th, 2011 at 1:40 下午
這樣子很難查出是什麼問題
那你可以查看看控制台->系統管理工具->事件檢視簿
看有沒有異常的狀況
或著您何時有空我使用Teamviewer幫您看看
[回應]
Jammy Replay:
六月 5th, 2011 at 6:23 下午
@yku, 我去查過了,
但好像沒有找出什麼問題ㄟ
[回應]
yku Replay:
六月 7th, 2011 at 3:46 下午
您何時有空!我連線幫你看一下好了?使用TeamViewer