My favorites | Sign in
Project Home Downloads Wiki Issues Source
Search
for
DiveIntoAndroid  
深入淺出 Android -- Google 手持設備應用程式設計入門
tw
Updated Oct 29, 2011 by gasolin

授權

歡迎到 http://code.google.com/p/androidbmi/wiki/IntroAndroid 閱讀本書。 也歡迎使用留言功能提供建議。

本書採用創用CC:「姓名標示─非商業性─禁止改作」授權條款

本書的文字、圖片皆不歡迎轉載,也不可使用於商業用途。 但歡迎您將本書網址 http://code.google.com/p/androidbmi/wiki/IntroAndroid 分享到各網站。

作者

  • gasolin,項目發起人,也是本書的主筆。你可以寫信至 gasolin+android -at- gmail.com 聯絡作者。

作者的作品有 aTrackDog 軟體更新通知程式。在 Android Market 上架三天,下載數即破2萬。

致謝

  • Crota,在項目初期提供建議等許多協助。

簡介

「深入淺出 Android 手持設備應用程式設計」將以開發實例,講解 Android 應用程式開發,協助讀者了解 Android 手持設備的應用程式設計。

回響

歡迎任何建設性的建議、批評、或者讚美。作者的電子郵件信箱是 gasolin+android -at- gmail.com。

想在簡單易學和提供完整詳盡的資訊之間取得平衡,一直是種永恆的掙扎。 期望讀者您能提供一些反饋,讓作者能更好地掌握主題深入的程度。

贊助

如果您希望以實際行動支持這個專案,可以依您的意願以發表回應、線上捐款,或購買實體書籍等方式贊助本專案

目錄

視頻/影音教學

入門

  1. 初探 Android
  2. 安裝 Android 開發工具
  3. 管理SDK
  4. 開啟現有專案
  5. 操作 Android 模擬器(Emulator)
  6. 建立一個 Android 程式 (BMI0)

基礎

  1. 描述使用者介面
  2. 設計使用者介面 (BMI01)
  3. 存取識別符號
  4. 解讀程式流程 (BMI02)
  5. 完成 BMI 程式

中階

  1. 重構程式 (BMI03)
  2. 加入對話框(Dialog)
  3. 查看線上內容 (Uri)
  4. 加入選單(Menu) (BMI4)
  5. 定義 Android 清單
  6. 加入新 Activity (BMI5)
  7. 傳送資料到新 Activity(BMI6)
  8. 記錄與偵錯 (Log)
  9. 活動的生命週期
  10. 儲存資訊(Preference)(BMI7)
  11. 發佈到 Android 市集(Market)
  12. 開發不息

附錄

資源

  1. Android 相關資源 (相關資源)
  2. 後續章節
  3. 取得原始碼

範例

  1. gBMI:輸入身高體重(公制),計算出BMI值

開始導覽

從頭開始閱讀 >


當前版本

2.3, 相容 Android 4.0

主要更新記錄

Comment by lming2...@gmail.com, Sep 21, 2008

HI , IT'S GREAT!

Comment by bdchina2...@gmail.com, Sep 25, 2008

Good article!

Comment by diordna....@gmail.com, Oct 2, 2008

期待更新,每天一看

Comment by xinke....@gmail.com, Oct 8, 2008

非常感谢

期待更新

Comment by xjpengch...@gmail.com, Oct 16, 2008

好作者!好文章! 期待您的更新 更期待您的书

Comment by morningc...@gmail.com, Oct 18, 2008

好厲害。謝謝

Comment by ChuiH...@gmail.com, Feb 12, 2009

开始学习~

Comment by MorrisCh...@gmail.com, Mar 3, 2009

太甘溫了

Comment by chaogu...@gmail.com, May 2, 2009

版主,能不能打包個.chm文件來啊,這樣很不好看啊。

Comment by project member gasolin, May 2, 2009

chaogu2.0: 這樣不符合授權喔

Comment by project member gasolin, May 2, 2009

常常在改版,一包成 .chm 就過期啦,希望大家在這裡看, 看到的才會是最新版的

Comment by project member gasolin, May 13, 2009

lendy.lin: 因為 Android 1.5 改版前面安裝的部份改動太大了,大家都沒想到。 因為出版週期的關係沒辦法馬上印出支援 1.5 版的書。 但這邊的線上文件已經相容 1.5r1 了,您可以對照書籍來看。 書中的範例都可以在 1.5 上跑。

Comment by Pablo0...@gmail.com, Jun 19, 2009

好用心。我愛死你了。很期待…我也開始寫第一支程式啦。

Comment by r5011...@gmail.com, Jun 20, 2009

作者您好~ 想請問之前所買的實體書上的範例都可以在1.5版本上執行嗎? 程式碼需不需要更改呢? 因為怕1.1版和1.5版有些class的用法不同 煩請您回答一下~ 感謝~!

Comment by project member gasolin, Jun 20, 2009

可以, 也可以直接到 取得原始碼 去抓可以直接在 1.5 下開的.

Comment by r5011...@gmail.com, Jun 20, 2009

您好 ~再請問一下 我在1.5版本下執行gps方面的程式 但是在import com.google.android.map 方面的class時,都會出現 "The import com.google.android.map cannot be resolved"

不知道是否有哪些地方未更新到呢?

Comment by project member gasolin, Jun 20, 2009

1.5 SDK 中要用到 Google Map 相關函式,Build Target 得選擇 「Google API」。

Comment by r5011...@gmail.com, Jun 21, 2009

謝謝您的回答~ 之前的問題都順利解決了 不過當我在1.5開啟之前在1.0下寫好的map相關程式後 發現google map無法顯示(只出現格線)不知道是否需要重新申請key呢?

還有~ 當我更新到1.5後, C:\Documents and Settings\<user>\Local Settings\Application Data\Android\debug.keystore 這個檔案會自動更新嗎?

Comment by project member gasolin, Jun 21, 2009

一樣只要是要測 Google Map 相關程式, Build Target 都得選擇 「Google API」。

Comment by tsai.sta...@gmail.com, Jun 21, 2009

你好,有買你的書來閱讀, 有一個問題想請問一下, 書中的28-3程式碼, 按照你的方式寫,設定note_array接著再丟到adapter裡面, 產生的這個list如28-6的圖示, 但點選時,卻一定要選字,而不能選"row"... 也就是如果我要點"gasolin",就一定要點在字上才會觸發ItemonClick?.. 但apidemo竟然不會..= = 請問你會這樣嗎...謝謝

Comment by project member gasolin, Jun 21, 2009

tsai.stanly 那是因為使用的版面配置設定不同, ApiDemos? 也有 source code 呀, 之間的差異就當做是回家作業囉 :)

Comment by tsai.sta...@gmail.com, Jun 21, 2009

謝謝你的回覆,不過我看了src/com/example/android/apis/view/list1.java此檔以及其他的檔,都並沒有setContentView(R.layout.main);類似這種與法的layout設定,所以不知你是怎麼去看他用哪一種版面配置的??謝謝

Comment by project member gasolin, Jun 22, 2009

我記得有寫:若沒有自行設定 xml 時, ListActivity? 會直接用預設的 Layout. 預設的 Layout 要去 android source 裡找囉

Comment by a5480...@gmail.com, Jul 20, 2009

請問 7/31出版的 Google!Android 手機應用程式設計入門 第二版 (附DVD) 跟 之前出版的Google!Android手機應用程式設計入門 有什麼差別嗎??

Comment by project member gasolin, Jul 20, 2009

a5480277, 主要是相容新版 Android 開發工具操作、修正學習流程中的 bug、並對一些不夠清楚的地方做補強。此外也另外新增了三章包含訊息欄(Notification)等內容。如果已經有買前一版的話不需要再買第二版。但第二版更適合推薦給想入門 Android 的新手。

Comment by project member gasolin, Jul 20, 2009

第二版針對 1.1 遷移到 1.5 著墨不少,但並未提到 AppWidget?,因為我個人覺得那不屬於入門的程度。

Comment by GHanguo, Jul 23, 2009

好文章,每天都会来学习

Comment by a5480...@gmail.com, Jul 25, 2009

請問 我想要定時更新我的畫面 , 像是設定幾分鐘後會將所有的TextView重新setText一次, 該從哪一方面下手呢?

另外想問一下android有沒有類似vb的timer這類型原件呢? 有找到AnalogClock?元件,它會隨時間改變而更新,但是不知怎麼應用...

Comment by tsai.sta...@gmail.com, Jul 27, 2009

您好, 你在http://www.javaworld.com.tw/jute/post/view?bid=26&id=254493 曾說此問題去看sdk 1.1 關於media player的 source code, 請問是指sample code裡面的嗎, 但sample code談到media player並沒有使用media controller, 如果不是指sample code裡面的,請問你說的是哪個資料夾下的呢? 非常謝謝!!

Comment by sparky...@msa.hinet.net, Sep 7, 2009

請教是否認識能幫我公司寫androidg 無線(WI-HI)控制PLC專業人員.

Comment by yuanli...@gmail.com, Sep 26, 2009

先了解下,多谢作者!

Comment by weizh...@gmail.com, Dec 13, 2009

好东西,作者辛苦了

Comment by sunqh...@gmail.com, Dec 24, 2009

使用eclipse创建android工程时,build target只能选一个,android 某个版本或是 Google APIs,如果选android那我的应用程序里如果要用Google Map怎么办?如果选Google APIs那是否还支持android平台?

android是否是Google APIs的子集?

Comment by project member gasolin, Dec 24, 2009

build target -> 對應 SDK 版本; Google APIs -> 某個 SDK 版本附加的 Add-on

Comment by sunqh...@gmail.com, Dec 25, 2009

我在eclipse上查到了,在build target处选择Google APIs,就是android+Google APIs。 谢谢gasolin!

另外今天又遇到个问题,我在一个activity中使用了finish(),希望完全退出程序,回到手机菜单界面。但是执行后这个activity是销毁了,但是马上又重新被创建了出来。是不是跟模拟器有关?想要制作一个“退出游戏”的功能怎么实现呢?

Comment by project member gasolin, Dec 31, 2009

新年了,謝謝大家過去一年來支持本書。希望過完年後可以有空把電子書版整理一遍,並開始寫些新的東西 :)

Comment by project member gasolin, Dec 31, 2009

本書之外的問題請到各論壇搜索、查看和詢問,恕我時間有限,不會針對您個人遇到的問題做回答

Comment by Titus.Li...@gmail.com, Jan 4, 2010

非常感谢作者:) 请加油啊!

Comment by apolo1033@gmail.com, Mar 12, 2010

想請問一下,使用svn下載一個source 不過他原本沒gen,所以要先選擇Android的版本 之後才會出現gen資料夾,不過隨意修改某個xml檔之後儲存 gen內的R檔還是無法生成,不知道是否有這方面的解決方法

Comment by junguos...@gmail.com, Mar 24, 2010

Thanks !!It's wonderful..

Comment by tianjing...@gmail.com, Mar 30, 2010

android开发入门指南,很好的教程,特来感谢

Comment by kiddch...@gmail.com, Apr 6, 2010

Thank you very much!

Comment by huangbq...@gmail.com, Apr 19, 2010

android开发入门指南,确实是很好的教程!

Comment by dream.ni...@gmail.com, Jun 2, 2010

hi,gasolin你好,在google上看了你的这本书,感觉非常受益。非常不错。 不过建议完善内容,例如,在按下计算按钮后,对身高体重是不判断是否有值的,如果没有赋值,咱们的程序就崩溃啦。虽然可能是不值得一提的事,不过对于新手还是全面一些好,也有助于培养大家的编程习惯

Comment by project member gasolin, Jun 3, 2010

dream.nickyzhang, 線上版應該有提到吧?實體書裡已有增補這部份的程式碼,如果沒有的話程式碼範例中應該也有加入這部份的判斷

Comment by stanwu...@gmail.com, Sep 1, 2010

設計適合 7吋 以上的平板 Android 軟體

隨著年底 7吋(7") 以上的平板 Android 將傾巢而出, 最近在測試 7吋的平板機發現一些不錯的軟體都無法支援全螢幕的大尺寸, 其實有點可惜, 以下就如何設計支援全螢幕的大尺寸平板 Andorid 作一個簡單的介紹

首先您必須要有一台7吋(7") 以上的模擬器, 這樣方便您設計 Andorid 的軟體時候可以交互測試一下, 看看效果, 因此我們在使用 AVD Manager 建立一台新的虛擬機器的時候要稍微的設定一下

也希望大家在設計軟體的時候能夠順便考慮到不同的尺寸 ^^

資料來源 : http://superstanwu.blog.ithome.com.tw/post/775/79073

Comment by morning0...@gmail.com, Oct 10, 2010

有關使用ANDROID程式將檔案傳輸至網路伺服器的設計問題 1. 現階段最單純之檔案傳輸方式為:以既有藍芽傳輸程式接收檔案<之後以瀏覽器透過3G方式連接網路<再透過瀏覽器將檔案傳入網路伺服器的資料夾內? 2. 若想要攥寫一個程式:直接透過藍芽接收資料後<再透過網路直接且繼續將該檔案以3G傳輸至網路特定資料夾內<及可行性與複雜度為何? 3. 可否直接攥寫一程式將檔案透過3G直接傳輸至網路伺服器的資料夾內?其難度為何?是否只要呼叫ANDROID相關API即可?還是.... 可否麻煩您撥空解答問題

Comment by project member gasolin, Oct 10, 2010

morning0457, 去看一下提問的智慧

Comment by brad.ch...@gmail.com, Oct 11, 2010

赞一个,文笔不错,写得很清楚,适合入门。

Comment by jackytso...@gmail.com, Nov 21, 2010

gasolin您好! Android 2第39章 Google Map的運用,範例實作後模擬器Google Map只出現方格,我的PC機器是接在IP分享器後,但將程式移到以手機直接上網的NB上運作則正常,請問在PC或分享器上要如何設定才能避開這個問題.

Comment by ada.hn....@gmail.com, Nov 24, 2010

以下更新日期是否寫錯了?

主要更新記錄 2009/6/29 本教學相容於 Android SDK 2.2 2009/3/11 本教學相容於 Android SDK 2.1

Comment by project member gasolin, Nov 24, 2010

ada.hn.tan, Good catch, 已更新 :D

Comment by nameofwa...@gmail.com, Mar 29, 2011

剛好找到我的問題處理方式,非常感謝^^

Comment by ap41...@gmail.com, Jun 15, 2011

本來也想寫教學的,不過看到你的出版就知難而退了,實在是太棒了!!

只有佩服呀!!

Comment by dse123...@gmail.com, Sep 26, 2011

請問一開始建置的專案不是選擇Google API有辦法可以改過來嗎?

Comment by yanghui1986527, Oct 2, 2011

太棒了,感谢分享~

Comment by DeHangM...@gmail.com, Nov 4, 2011

太好了。谢谢了。

Comment by shu...@gmail.com, Jan 5, 2012

請問,我按照步驟做了這個bmi程式,在虛擬機器可以正常運作,但為何export成BMI.apk後,不能在在平板電腦上執行?

Comment by cui...@gmail.com, Feb 8 (6 days ago)

this project is amazing!


Sign in to add a comment
Powered by Google Project Hosting