<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2674256397927443761</id><updated>2011-04-21T11:03:19.432-07:00</updated><category term='Mobile SDK'/><category term='J2ME'/><category term='手機'/><category term='MapView'/><category term='Flash Lite'/><category term='log'/><category term='GPS'/><category term='Google map'/><category term='video'/><category term='Android project'/><category term='Debug'/><category term='web Browser'/><category term='Android News'/><category term='Android SDK'/><category term='MapActivity'/><category term='Android'/><category term='demo'/><category term='Android101'/><category term='Android APIs'/><category term='Geo-coding'/><category term='Content Providers'/><category term='google'/><category term='Android Comment'/><title type='text'>Android-ballboy</title><subtitle type='html'>All about mobile,Android,Flash Lite</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>23</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-3148201300605651373</id><published>2008-08-25T20:37:00.000-07:00</published><updated>2008-08-26T21:04:14.551-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android SDK'/><title type='text'>Android 0.9 SDK beta</title><content type='html'>Google released a beta SDK (Android 0.9 SDK beta) in 2008.08.16&lt;br /&gt;此版為較穩定的版本，已近於2008年第四季真正上市所使用的1.0版！&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/android/download_list.html" target="_blank"&gt;Download the Android SDK&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;若你使用Eclipse開發要安裝ADT&lt;br /&gt;*注意Eclipse要3.3版以上&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/android/intro/installing.html#installingplugin" target="_blank"&gt;Installing the Eclipse Plugin (ADT)&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-3148201300605651373?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/3148201300605651373/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=3148201300605651373' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3148201300605651373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3148201300605651373'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/08/android-09-sdk-beta.html' title='Android 0.9 SDK beta'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-746639539927265109</id><published>2008-06-09T00:59:00.000-07:00</published><updated>2008-06-09T01:01:18.279-07:00</updated><title type='text'>Google releases new version of Android SDK m5-rc15</title><content type='html'>&lt;a href="http://code.google.com/android/download_list.html" target="_blank"&gt;Download the SDK&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-746639539927265109?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/746639539927265109/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=746639539927265109' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/746639539927265109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/746639539927265109'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/06/google-releases-new-version-of-android.html' title='Google releases new version of Android SDK m5-rc15'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-2132666170177578354</id><published>2008-03-13T02:56:00.000-07:00</published><updated>2008-03-13T02:58:03.635-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='demo'/><title type='text'>Android DEMO</title><content type='html'>Google's Andy Rubin gives BBC News a tour of Android&lt;br/&gt;&lt;br /&gt;&lt;object type="application/x-shockwave-flash" data="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&amp;feedurl=http%3A%2F%2Fbbcnewstechnology%2Eblip%2Etv%2Frss&amp;file=http%3A%2F%2Fblip%2Etv%2Frss%2Fflash%2F704168&amp;showplayerpath=http%3A%2F%2Fblip%2Etv%2Fscripts%2Fflash%2Fshowplayer%2Eswf" width="400" height="255" allowfullscreen="true" id="showplayer"&gt;&lt;param name="movie" value="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&amp;feedurl=http%3A%2F%2Fbbcnewstechnology%2Eblip%2Etv%2Frss&amp;file=http%3A%2F%2Fblip%2Etv%2Frss%2Fflash%2F704168&amp;showplayerpath=http%3A%2F%2Fblip%2Etv%2Fscripts%2Fflash%2Fshowplayer%2Eswf" /&gt;&lt;param name="quality" value="best" /&gt;&lt;embed src="http://blip.tv/scripts/flash/showplayer.swf?enablejs=true&amp;feedurl=http%3A%2F%2Fbbcnewstechnology%2Eblip%2Etv%2Frss&amp;file=http%3A%2F%2Fblip%2Etv%2Frss%2Fflash%2F704168&amp;showplayerpath=http%3A%2F%2Fblip%2Etv%2Fscripts%2Fflash%2Fshowplayer%2Eswf" quality="best" width="400" height="255" name="showplayer" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-2132666170177578354?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/2132666170177578354/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=2132666170177578354' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/2132666170177578354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/2132666170177578354'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/03/android-demo.html' title='Android DEMO'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-5408141180767667551</id><published>2008-03-13T02:36:00.000-07:00</published><updated>2008-03-13T02:47:57.020-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Mobile SDK'/><title type='text'>Mobile SDK compare</title><content type='html'>&lt;table id="comparechart" width="90%" border="1" cellspacing="0"&gt;     &lt;tbody&gt;         &lt;tr&gt;             &lt;th class="mainth"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/th&gt;&lt;th class="mainth"&gt;&lt;span style="font-size:85%;"&gt;Apple iPhone SDK&lt;/span&gt;&lt;/th&gt;&lt;th class="mainth"&gt;&lt;span style="font-size:85%;"&gt;Toolchain&lt;/span&gt;&lt;/th&gt;&lt;th class="mainth"&gt;&lt;span style="font-size:85%;"&gt;Windows Mobile&lt;/span&gt;&lt;/th&gt;&lt;th class="mainth"&gt;&lt;span style="font-size:85%;"&gt;S60&lt;/span&gt;&lt;/th&gt;&lt;th class="mainth"&gt;&lt;span style="font-size:85%;"&gt;Android&lt;/span&gt;&lt;/th&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Cost&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Free&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Free&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Free; could be more depending on tools used&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Free; could be more depending on tools used&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Free&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Wide-scale app availability&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;June&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Now&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Now&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Now&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Depends on device availability&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Native development&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Languages suppoted for native development&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Objective-C&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Objective-C&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;C++, C#, VB.NET&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;C++&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Java&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Digital certificates&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Required for distribution&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Available, required for some phones&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Available, required for some phones&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Retail support&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Full; 30 percent Apple revenue share; free apps allowable&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Limited&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Limited&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;No, but Android Developer Challenge offers money and publicity&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Platform maturity&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Immature&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Immature&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Mature&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Mature&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Immature&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;First-party support&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Community support&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Just getting started!&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Excellent&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Excellent&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Excellent&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Excellent&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;App installation method&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Direct (App Store), iTunes&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Installer.app, custom&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Direct, ActiveSync&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Direct, PC Suite&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Unknown; installation on emulator is not reflective of production devices&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Emulator available&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Remote debugging&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Target device variety&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Poor&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Poor&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Excellent&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Good&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Poor (that will change, though)&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Touchscreen support&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Multi-touch&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Multi-touch&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Single touch&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Umm... soon?&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Single touch&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;App availability and variety&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Poor (that will change, though)&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Good&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Excellent&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Excellent&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Poor (that will change, though)&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Underlying architecture&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Cocoa Touch / Mac OS X&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Mac OS X&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Windows&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Symbian&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;Linux&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Flash availability&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;         &lt;tr&gt;             &lt;td width="16%"&gt;&lt;span style="font-size:85%;"&gt;Java availability&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;             &lt;td class="red" width="17%"&gt;&lt;span style="font-size:85%;"&gt;No&lt;/span&gt;&lt;/td&gt;             &lt;td width="17%"&gt;&lt;span style="font-size:85%;"&gt;In development&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;             &lt;td class="green" width="17%"&gt;&lt;span style="font-size:85%;"&gt;Yes&lt;/span&gt;&lt;/td&gt;         &lt;/tr&gt;     &lt;/tbody&gt; &lt;/table&gt;&lt;p class="posttags" style="clear: both;"&gt;From &lt;a href="http://www.engadgetmobile.com/2008/03/06/iphone-sdk-comparison-chart/" target="_blank"&gt;engadgetmobile&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-5408141180767667551?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/5408141180767667551/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=5408141180767667551' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/5408141180767667551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/5408141180767667551'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/03/mobile-sdk-comparation.html' title='Mobile SDK compare'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-9069075224925784100</id><published>2008-03-02T23:36:00.000-08:00</published><updated>2008-03-02T23:37:16.219-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android APIs'/><title type='text'>Android APIs</title><content type='html'>&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/MPukbH6D-lY"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/MPukbH6D-lY" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-9069075224925784100?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/9069075224925784100/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=9069075224925784100' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/9069075224925784100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/9069075224925784100'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/03/android-apis.html' title='Android APIs'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-2715571054722453303</id><published>2008-03-02T23:13:00.000-08:00</published><updated>2008-03-02T23:16:04.716-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Google map'/><category scheme='http://www.blogger.com/atom/ns#' term='web Browser'/><title type='text'>Browser and Map in Android Demo</title><content type='html'>Browser and Map application in Android Demo:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/9bdGc-QZicw"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/9bdGc-QZicw" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-2715571054722453303?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/2715571054722453303/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=2715571054722453303' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/2715571054722453303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/2715571054722453303'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/03/browser-and-map-in-android-demo.html' title='Browser and Map in Android Demo'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-2435086620853469445</id><published>2008-02-28T23:42:00.000-08:00</published><updated>2008-02-28T23:51:05.947-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Geo-coding'/><category scheme='http://www.blogger.com/atom/ns#' term='Android SDK'/><title type='text'>Google releases new version of Android SDK m5-rc14</title><content type='html'>&lt;a href="http://android-developers.blogspot.com/2008/02/android-sdk-m5-rc14-now-available.html"&gt;Android SDK m5-rc14 now available!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;1.  user interface - As I mentioned when we introduced the m3 version of the Android SDK, we're continuing to refine the UI that's available for Android. m5-rc14 replaces the previous placeholder with a new UI, but as before, work on it is still in-progress.&lt;br /&gt;&lt;br /&gt;2.  Layout animations - Developers can now create layout animations for their applications using the capabilities introduced in the android.view.animation package. Check out the LayoutAnimation*.java files in the APIDemos sample code for examples of how this works.&lt;br /&gt;&lt;br /&gt;3.  Geo-coding - android.location.Geocoder enables developers to forward and reverse geo-code (i.e. translate an address into a coordinate and vice-versa), and also search for businesses.&lt;br /&gt;&lt;br /&gt;4.  New media codecs - The MediaPlayer class has added support for the OGG Vorbis, MIDI, XMF, iMelody, RTTL/RTX, and OTA audio file formats.&lt;br /&gt;&lt;br /&gt;5.  Updated Eclipse plug-in - A new version of ADT is available and provides improvements to the Android developer experience. In particular, check out the new Android Manifest editor.&lt;br /&gt;&lt;br /&gt;1. 新的使用者介面&lt;br /&gt;2. 可建立Layout animations&lt;br /&gt;3. 地址查詢經緯支援&lt;br /&gt;4. 新的媒體編碼格式&lt;br /&gt;5. 新的Eclipse plug-in&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-2435086620853469445?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/2435086620853469445/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=2435086620853469445' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/2435086620853469445'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/2435086620853469445'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/google-releases-new-version-of-android.html' title='Google releases new version of Android SDK m5-rc14'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-6261108408215511376</id><published>2008-02-28T22:02:00.000-08:00</published><updated>2008-02-28T23:14:04.015-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MapActivity'/><category scheme='http://www.blogger.com/atom/ns#' term='GPS'/><title type='text'>MapActivity in Android 4 - GPS</title><content type='html'>You can use GPS in Android. Here is a demo for driving around Google by using GPS.&lt;br /&gt;&lt;br /&gt;MapActivity亦可使用GPS定位Google map，不過目前透過內部模擬在Google附近開車的GPS資料進行模擬。&lt;br /&gt;&lt;br /&gt;1. &lt;u&gt;mapdemo.java&lt;/u&gt;：再將&lt;a href="http://android-ballboy.blogspot.com/2008/02/mapactivity-in-android-3-city-menu.html"&gt;上一篇&lt;/a&gt;的程式碼主要加上籃色部份，透過LocationManager使用GPS定位，選單增加GPS項目，P為定位、G為到選單。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;&lt;pre&gt;&lt;br /&gt;package com.test.demo;&lt;br /&gt;&lt;br /&gt;import java.util.List;&lt;br /&gt;import com.google.android.maps.MapActivity;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.location.Location;&lt;br /&gt;import android.location.LocationManager;&lt;br /&gt;import android.location.LocationProvider;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;import android.view.KeyEvent;&lt;br /&gt;import android.widget.ArrayAdapter;&lt;br /&gt;import android.widget.Spinner;&lt;br /&gt;import com.google.android.maps.MapController;&lt;br /&gt;import com.google.android.maps.MapView;&lt;br /&gt;import com.google.android.maps.Point;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import android.location.Location;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import android.location.LocationManager;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import android.location.LocationProvider;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;public class mapdemo extends MapActivity{&lt;br /&gt;/** Called when the activity is first created. */&lt;br /&gt;public static final int change = 3000;&lt;br /&gt;private MapView mapView;&lt;br /&gt;private MapController mapConrtoller;&lt;br /&gt;private Spinner s1;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;private  LocationManager locMan;&lt;/span&gt;&lt;br /&gt;@Override&lt;br /&gt;public void onCreate(Bundle icicle) {&lt;br /&gt; super.onCreate(icicle);&lt;br /&gt; setContentView(R.layout.main);&lt;br /&gt;&lt;br /&gt; s1 = (Spinner) findViewById(R.id.spinner1);&lt;br /&gt; Spinner s1 = (Spinner) findViewById(R.id.spinner1);&lt;br /&gt; ArrayAdapter&lt;charsequence&gt; adapter = ArrayAdapter.createFromResource(&lt;br /&gt;         this, R.array.city, android.R.layout.simple_spinner_item);&lt;br /&gt; adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);&lt;br /&gt; s1.setAdapter(adapter);&lt;br /&gt;//It seems a bug for LocationManager,we can't get location in first time.&lt;br /&gt; &lt;span style="color: rgb(51, 102, 255);"&gt;getLocation();   &lt;/span&gt;&lt;br /&gt; mapView =(MapView) findViewById(R.id.my_map);&lt;br /&gt; mapConrtoller = mapView.getController();&lt;br /&gt; mapConrtoller.zoomTo(17);&lt;br /&gt; updateView();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    private void getLocation(){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     Location loc;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     LocationProvider locPro;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     List&lt;locationprovider&gt; proList;&lt;/locationprovider&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     locMan = (LocationManager)this.getSystemService(Activity.LOCATION_SERVICE);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     proList = locMan.getProviders();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     locPro = proList.get(0);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     loc = locMan.getCurrentLocation("gps");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     Double lat = 0.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     Double lon = 0.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     lat = (Double)loc.getLatitude()*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     lon = (Double)loc.getLongitude()*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;  Point point = new Point(lat.intValue(),lon.intValue());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;  if(lat.intValue()!=0 &amp;amp;&amp;amp; lon.intValue()!=0){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;       mapConrtoller.animateTo(point);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;  }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;public boolean onKeyDown(int keyCode, KeyEvent event) {&lt;br /&gt;&lt;br /&gt; if (keyCode == KeyEvent.KEYCODE_I) {&lt;br /&gt;  mapView.requestFocus();&lt;br /&gt;     // zoom in&lt;br /&gt;  mapView.getController().zoomTo(mapView.getZoomLevel() + 1);&lt;br /&gt;         return true;&lt;br /&gt;  } else if (keyCode == KeyEvent.KEYCODE_P) {&lt;br /&gt;          // position&lt;br /&gt;Double lat=0.0;&lt;br /&gt;Double lng=0.0;&lt;br /&gt;if(s1.getSelectedItemIndex()==0){&lt;br /&gt;    lat = 25.08421662*1E6;&lt;br /&gt;    lng = 121.5588632*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==1){&lt;br /&gt;    lat = 25.156109*1E6;&lt;br /&gt;    lng = 121.695457*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==2){&lt;br /&gt;    lat = 25.02723286*1E6;&lt;br /&gt;    lng = 121.4777282*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==3){&lt;br /&gt;    lat = 24.766944444*1E6;&lt;br /&gt;    lng = 121.758333333*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==4){&lt;br /&gt;    lat = 24.7952904064701*1E6;&lt;br /&gt;    lng = 121.005980402031*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==5){&lt;br /&gt;    lat = 25.01049145*1E6;&lt;br /&gt;    lng = 121.2988981*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==6){&lt;br /&gt;    lat = 24.6929396881103*1E6;&lt;br /&gt;    lng = 120.916988073054*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==7){&lt;br /&gt;    lat = 24.165632*1E6;&lt;br /&gt;    lng = 120.640234*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==8){&lt;br /&gt;    lat = 24.085467449249*1E6;&lt;br /&gt;    lng = 120.53489812506*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==9){&lt;br /&gt;    lat = 23.831933886322*1E6;&lt;br /&gt;    lng = 120.71674349869*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==10){&lt;br /&gt;    lat = 23.4670607206971*1E6;&lt;br /&gt;    lng = 120.424347942069*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==11){&lt;br /&gt;    lat = 23.68080782*1E6;&lt;br /&gt;    lng = 120.4857101*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==12){&lt;br /&gt;    lat = 23.015307619667*1E6;&lt;br /&gt;    lng = 120.19802892001*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==13){&lt;br /&gt;    lat = 22.6516357159836*1E6;&lt;br /&gt;    lng = 120.305947184541*1E6;&lt;br /&gt;} else if(s1.getSelectedItemIndex()==14){&lt;br /&gt;    lat = 22.568397*1E6;&lt;br /&gt;    lng = 120.539828*1E6;&lt;br /&gt;} else if(s1.getSelectedItemIndex()==15){&lt;br /&gt;    lat = 22.736944444*1E6;&lt;br /&gt;    lng = 121.122777778*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==16){&lt;br /&gt;    lat = 23.973333333*1E6;&lt;br /&gt;    lng = 121.588055556*1E6;&lt;br /&gt;}else if(s1.getSelectedItemIndex()==16){&lt;br /&gt;    lat = 23.973333333*1E6;&lt;br /&gt;    lng = 121.588055556*1E6;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;}else if(s1.getSelectedItemIndex()==17){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    getLocation();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;   }&lt;/span&gt;&lt;br /&gt;    Point point = new Point(lat.intValue(), lng.intValue());&lt;br /&gt;    mapConrtoller.centerMapTo(point, false);&lt;br /&gt;    mapView.requestFocus();&lt;br /&gt;        return true;&lt;br /&gt;}else if (keyCode == KeyEvent.KEYCODE_G) {&lt;br /&gt;          // zoom out&lt;br /&gt;   s1.requestFocus();&lt;br /&gt;        return true;&lt;br /&gt;}else if (keyCode == KeyEvent.KEYCODE_O) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;          // zoom out&lt;br /&gt;   mapView.getController().zoomTo(mapView.getZoomLevel() - 1);&lt;br /&gt;        return true;&lt;br /&gt; } else if (keyCode == KeyEvent.KEYCODE_S) {&lt;br /&gt;  mapView.requestFocus();&lt;br /&gt;       // Satellite,衛星地图&lt;br /&gt;     if(!mapView.isSatellite()){&lt;br /&gt;    mapView.toggleSatellite();&lt;br /&gt;     }&lt;br /&gt;     return true;&lt;br /&gt;  }   else if (keyCode == KeyEvent.KEYCODE_M) {&lt;br /&gt;   mapView.requestFocus();&lt;br /&gt;      // traffic，路况&lt;br /&gt;   if(mapView.isSatellite()){&lt;br /&gt;      mapView.toggleSatellite();&lt;br /&gt;   }&lt;br /&gt; return true;&lt;br /&gt;}   else if (keyCode == KeyEvent.KEYCODE_DPAD_UP) {&lt;br /&gt;&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lat=lat+change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;}   else if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lat=lat-change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;&lt;br /&gt;} else if (keyCode == KeyEvent.KEYCODE_DPAD_LEFT) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lng=lng-change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;} else if (keyCode == KeyEvent.KEYCODE_DPAD_RIGHT) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lng=lng+change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;}&lt;br /&gt;  return false;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private void updateView(){&lt;br /&gt;&lt;br /&gt;Double lat = 25.025708*1E6;&lt;br /&gt;Double lng = 121.526403*1E6;&lt;br /&gt;Point point = new Point(lat.intValue(), lng.intValue());&lt;br /&gt;mapConrtoller.centerMapTo(point, false);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;/charsequence&gt;&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;2. &lt;u&gt;arrays.xml&lt;/u&gt;：加上GPS項目。&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;resources&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;array name="city"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;台北市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;基隆市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;台北縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;宜蘭縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;新竹市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;桃園市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;苗栗縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;台中市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;彰化縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;南投縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;嘉義市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;雲林縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;臺南市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;高雄市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;屏東縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;臺東縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;花蓮縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;item&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;&amp;gt;&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;GPS&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;&amp;lt;&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;/item&lt;/span&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;    &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/array&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/resources&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BEnDVeb9SM0/R8ejgnJERcI/AAAAAAAAACY/zKWcwvcfdnw/s1600-h/android_mapdemo4.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_BEnDVeb9SM0/R8ejgnJERcI/AAAAAAAAACY/zKWcwvcfdnw/s400/android_mapdemo4.JPG" alt="" id="BLOGGER_PHOTO_ID_5172282477716456898" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-6261108408215511376?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/6261108408215511376/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=6261108408215511376' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/6261108408215511376'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/6261108408215511376'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/mapactivity-in-android-3-gps.html' title='MapActivity in Android 4 - GPS'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_BEnDVeb9SM0/R8ejgnJERcI/AAAAAAAAACY/zKWcwvcfdnw/s72-c/android_mapdemo4.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-3673776137590580521</id><published>2008-02-26T01:35:00.000-08:00</published><updated>2008-02-28T23:19:10.509-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MapActivity'/><category scheme='http://www.blogger.com/atom/ns#' term='Google map'/><title type='text'>MapActivity in Android 3 - city menu</title><content type='html'>We apply city menu in Taiwan for app. You can choose city to position the map. "P" for Position."G" for focusing in city menu.&lt;br /&gt;&lt;br /&gt;加入各縣市表單，你可以更進一步地定位Google map。&lt;br /&gt;&lt;br /&gt;1. &lt;u&gt;mapdemo.java&lt;/u&gt;：再將&lt;a href="http://android-ballboy.blogspot.com/2008/02/mapactivity-in-android_25.html"&gt;上一篇&lt;/a&gt;的程式碼主要加上籃色部份，其他部份亦有加上小部份修改，P為定位、G為到城市選單。&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;&lt;pre&gt;&lt;br /&gt;package com.test.demo;&lt;br /&gt;&lt;br /&gt;import com.google.android.maps.MapActivity;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;import android.view.KeyEvent;&lt;br /&gt;import android.widget.ArrayAdapter;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import android.widget.Spinner;&lt;/span&gt;&lt;br /&gt;import com.google.android.maps.MapController;&lt;br /&gt;import com.google.android.maps.MapView;&lt;br /&gt;import com.google.android.maps.Point;&lt;br /&gt;&lt;br /&gt;public class mapdemo extends MapActivity{&lt;br /&gt;/** Called when the activity is first created. */&lt;br /&gt;public static final int change = 3000;&lt;br /&gt;private MapView mapView;&lt;br /&gt;private MapController mapConrtoller;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; private Spinner s1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;@Override&lt;br /&gt;public void onCreate(Bundle icicle) {&lt;br /&gt;super.onCreate(icicle);&lt;br /&gt;setContentView(R.layout.main);&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        s1 = (Spinner) findViewById(R.id.spinner1);  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        Spinner s1 = (Spinner) findViewById(R.id.spinner1);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        ArrayAdapter&lt;charsequence&gt; adapter = ArrayAdapter.createFromResource(&lt;/charsequence&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                this, R.array.city, android.R.layout.simple_spinner_item);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        s1.setAdapter(adapter);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;mapView =(MapView) findViewById(R.id.my_map);&lt;br /&gt;mapConrtoller = mapView.getController();&lt;br /&gt;mapConrtoller.zoomTo(17);&lt;br /&gt;updateView();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public boolean onKeyDown(int keyCode, KeyEvent event) {&lt;br /&gt;&lt;br /&gt;if (keyCode == KeyEvent.KEYCODE_I) {&lt;br /&gt;  mapView.requestFocus();&lt;br /&gt;  // zoom in&lt;br /&gt;  mapView.getController().zoomTo(mapView.getZoomLevel() + 1);&lt;br /&gt;      return true;&lt;br /&gt;} &lt;span style="color: rgb(51, 102, 255);"&gt;else if (keyCode == KeyEvent.KEYCODE_P) {  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                // position &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;             Double lat=0.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            Double lng=0.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            if(s1.getSelectedItemIndex()==0){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 25.08421662*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.5588632*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==1){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 25.156109*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.695457*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==2){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 25.02723286*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.4777282*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==3){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 24.766944444*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.758333333*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==4){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 24.7952904064701*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.005980402031*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==5){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 25.01049145*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.2988981*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==6){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 24.6929396881103*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.916988073054*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==7){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 24.165632*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.640234*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==8){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 24.085467449249*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.53489812506*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==9){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 23.831933886322*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.71674349869*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==10){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 23.4670607206971*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.424347942069*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==11){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 23.68080782*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.4857101*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==12){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 23.015307619667*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.19802892001*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==13){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 22.6516357159836*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.305947184541*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            } else if(s1.getSelectedItemIndex()==14){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 22.568397*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 120.539828*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            } else if(s1.getSelectedItemIndex()==15){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 22.736944444*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.122777778*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }else if(s1.getSelectedItemIndex()==16){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lat = 23.973333333*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                lng = 121.588055556*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;             Point point = new Point(lat.intValue(), lng.intValue());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;             mapConrtoller.centerMapTo(point, false);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;             mapView.requestFocus();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;              return true;  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     }else if (keyCode == KeyEvent.KEYCODE_G) {  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                // zoom out &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;             s1.requestFocus();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;              return true;  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     }&lt;/span&gt;else if (keyCode == KeyEvent.KEYCODE_O) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;       // zoom out&lt;br /&gt;   mapView.getController().zoomTo(mapView.getZoomLevel() - 1);&lt;br /&gt;     return true;&lt;br /&gt;} else if (keyCode == KeyEvent.KEYCODE_S) {&lt;br /&gt;  mapView.requestFocus();&lt;br /&gt;    // Satellite,衛星地图&lt;br /&gt;  if(!mapView.isSatellite()){&lt;br /&gt;    mapView.toggleSatellite();&lt;br /&gt;  }&lt;br /&gt;  return true;&lt;br /&gt;}   else if (keyCode == KeyEvent.KEYCODE_M) {&lt;br /&gt;   mapView.requestFocus();&lt;br /&gt;   // traffic，路况&lt;br /&gt;   if(mapView.isSatellite()){&lt;br /&gt;      mapView.toggleSatellite();&lt;br /&gt;   }&lt;br /&gt;return true;&lt;br /&gt;}   else if (keyCode == KeyEvent.KEYCODE_DPAD_UP) {&lt;br /&gt;&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lat=lat+change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;}   else if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lat=lat-change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;&lt;br /&gt;} else if (keyCode == KeyEvent.KEYCODE_DPAD_LEFT) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lng=lng-change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;} else if (keyCode == KeyEvent.KEYCODE_DPAD_RIGHT) {&lt;br /&gt;mapView.requestFocus();&lt;br /&gt;Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;br /&gt;Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;br /&gt;lng=lng+change;&lt;br /&gt;Point point = new Point(lat.intValue(),lng.intValue());&lt;br /&gt;mapConrtoller.animateTo(point);&lt;br /&gt;return true;&lt;br /&gt;}&lt;br /&gt;return false;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private void updateView(){&lt;br /&gt;Double lat = 25.025708*1E6;&lt;br /&gt;Double lng = 121.526403*1E6;&lt;br /&gt;Point point = new Point(lat.intValue(), lng.intValue());&lt;br /&gt;mapConrtoller.centerMapTo(point, false);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;}&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;2. &lt;u&gt;arrays.xml&lt;/u&gt;：在目錄res下的values目錄下建立一arrays.xml，是要存放城市表單內容。&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;resources&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;array name="city"&gt;&lt;br /&gt;  &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;台北市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;基隆市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;台北縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;宜蘭縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;新竹市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;桃園市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;苗栗縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;台中市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;彰化縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;南投縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;嘉義市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;雲林縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;臺南市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;高雄市&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;屏東縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;臺東縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;花蓮縣&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/item&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;    &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/array&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/resources&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;3. &lt;u&gt;main.xml&lt;/u&gt;：加入選單&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;&lt;pre&gt;&lt;br /&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"&lt;br /&gt;  android:orientation="vertical"&lt;br /&gt;  android:layout_width="fill_parent"&lt;br /&gt;  android:layout_height="fill_parent"&lt;br /&gt;  &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;        &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;view id="@+id/my_map" class="com.google.android.maps.MapView"&lt;br /&gt;      android:layout_width="fill_parent"&lt;br /&gt;      android:layout_height="fill_parent"&lt;br /&gt;      android:layout_weight="1" /&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;     &lt;br /&gt;      &lt;span style="color: rgb(51, 102, 255);"&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;Spinner id="@+id/spinner1"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:layout_width="wrap_content"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:layout_height="wrap_content"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:drawSelectorOnTop="true"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    /&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;/LinearLayout&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BEnDVeb9SM0/R8Ph92tfiNI/AAAAAAAAACQ/gk11-JHwADA/s1600-h/android_mapdemo3.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_BEnDVeb9SM0/R8Ph92tfiNI/AAAAAAAAACQ/gk11-JHwADA/s400/android_mapdemo3.JPG" alt="" id="BLOGGER_PHOTO_ID_5171225249926056146" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-3673776137590580521?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/3673776137590580521/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=3673776137590580521' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3673776137590580521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3673776137590580521'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/mapactivity-in-android-3-city-menu.html' title='MapActivity in Android 3 - city menu'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_BEnDVeb9SM0/R8Ph92tfiNI/AAAAAAAAACQ/gk11-JHwADA/s72-c/android_mapdemo3.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-8835514411769396787</id><published>2008-02-25T22:29:00.000-08:00</published><updated>2008-02-28T23:22:04.490-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MapActivity'/><category scheme='http://www.blogger.com/atom/ns#' term='MapView'/><title type='text'>MapActivity in Android 2</title><content type='html'>You can control google map further. 你可以更進一步地使用Google map。&lt;br /&gt;&lt;br /&gt;1. &lt;u&gt;mapdemo.java&lt;/u&gt;：再將&lt;a href="http://android-ballboy.blogspot.com/2008/02/mapactivity-in-android.html"&gt;上一篇&lt;/a&gt;的程式碼加上籃色部份，可用手機按鍵控制地圖，O為拉遠、I為拉近、S為衛星地圖、上下左右鍵為移動。&lt;br /&gt;&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;&lt;pre&gt;&lt;br /&gt;package com.test.demo;&lt;br /&gt;&lt;br /&gt;import com.google.android.maps.MapActivity;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import android.view.KeyEvent;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import com.google.android.maps.MapController;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import com.google.android.maps.MapView;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import com.google.android.maps.Point;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;public class mapdemo extends MapActivity{&lt;br /&gt;/** Called when the activity is first created. */&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    public static final int change = 3000;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    private MapView mapView;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    private MapController mapConrtoller;&lt;/span&gt;&lt;br /&gt;@Override&lt;br /&gt;public void onCreate(Bundle icicle) {&lt;br /&gt;super.onCreate(icicle);&lt;br /&gt;setContentView(R.layout.main);&lt;br /&gt;&lt;br /&gt;//get id from main.xml&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;   mapView =(MapView) findViewById(R.id.my_map);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        mapConrtoller = mapView.getController();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        mapConrtoller.zoomTo(17);&lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt;        updateView();&lt;/span&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;public boolean onKeyDown(int keyCode, KeyEvent event) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        if (keyCode == KeyEvent.KEYCODE_I) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            // zoom in&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            mapView.getController().zoomTo(mapView.getZoomLevel() + 1); &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                return true; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;         } else if (keyCode == KeyEvent.KEYCODE_O) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                 // zoom out&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;             mapView.getController().zoomTo(mapView.getZoomLevel() - 1); &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;               return true; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        } else if (keyCode == KeyEvent.KEYCODE_S) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;              // 衛星地图&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            if(!mapView.isSatellite()){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;              mapView.toggleSatellite(); &lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt;            }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            return true; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;         } else if (keyCode == KeyEvent.KEYCODE_DPAD_UP) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;          Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;          Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;          lat=lat+change;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;          Point point = new Point(lat.intValue(),lng.intValue());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;          mapConrtoller.animateTo(point); &lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt;    return true; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    }   else if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      lat=lat-change;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Point point = new Point(lat.intValue(),lng.intValue());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      mapConrtoller.animateTo(point); &lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt; return true; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; } else if (keyCode == KeyEvent.KEYCODE_DPAD_LEFT) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      lng=lng-change;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Point point = new Point(lat.intValue(),lng.intValue());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      mapConrtoller.animateTo(point); &lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt; return true; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; } else if (keyCode == KeyEvent.KEYCODE_DPAD_RIGHT) { &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Double lat = mapView.getMapCenter().getLatitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Double lng = mapView.getMapCenter().getLongitudeE6()/1.0;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      lng=lng+change;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      Point point = new Point(lat.intValue(),lng.intValue());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;      mapConrtoller.animateTo(point); &lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt; return true; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;         return false; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     }  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; private void updateView(){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;  Double lat = 25.025708*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;  Double lng = 121.526403*1E6;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;  Point point = new Point(lat.intValue(), lng.intValue());&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;  mapConrtoller.centerMapTo(point, false);&lt;/span&gt; &lt;span style="color: rgb(51, 102, 255);"&gt; }&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;}&lt;/pre&gt;&lt;/span&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BEnDVeb9SM0/R8O5JGtfiMI/AAAAAAAAACI/kaoM7T04Soc/s1600-h/android_mapdemo2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_BEnDVeb9SM0/R8O5JGtfiMI/AAAAAAAAACI/kaoM7T04Soc/s400/android_mapdemo2.JPG" alt="" id="BLOGGER_PHOTO_ID_5171180363222845634" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-8835514411769396787?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/8835514411769396787/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=8835514411769396787' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8835514411769396787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8835514411769396787'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/mapactivity-in-android_25.html' title='MapActivity in Android 2'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_BEnDVeb9SM0/R8O5JGtfiMI/AAAAAAAAACI/kaoM7T04Soc/s72-c/android_mapdemo2.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-8421247966748044297</id><published>2008-02-21T23:38:00.000-08:00</published><updated>2008-02-22T01:10:16.943-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MapActivity'/><category scheme='http://www.blogger.com/atom/ns#' term='Google map'/><title type='text'>MapActivity in Android</title><content type='html'>你可以透過com.google.android.maps.MapActivity輕鬆使用Google map。&lt;br /&gt;&lt;br /&gt;1. &lt;u&gt;mapdemo.java&lt;/u&gt;：將Acitivity改為MapAcitivity如籃色部份，MapAcitivity是Google map使用的class。&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;package com.test.demo;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import com.google.android.maps.MapActivity;&lt;/span&gt;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;&lt;br /&gt;public class mapdemo extends &lt;span style="color: rgb(51, 102, 255);"&gt;MapActivity&lt;/span&gt;{&lt;br /&gt;/** Called when the activity is first created. */&lt;br /&gt;@Override&lt;br /&gt;public void onCreate(Bundle icicle) {&lt;br /&gt;super.onCreate(icicle);&lt;br /&gt;setContentView(R.layout.main);&lt;br /&gt;}&lt;br /&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;2. &lt;u&gt;main.xml&lt;/u&gt;：將TextView的xml部份換成籃色部份，請注意MapView的部份都是如此定義標籤。&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;br /&gt;&amp;lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"&lt;br /&gt;android:orientation="vertical"&lt;br /&gt;android:layout_width="fill_parent"&lt;br /&gt;android:layout_height="fill_parent"&lt;br /&gt;&amp;gt;&lt;br /&gt;  &lt;span style="color: rgb(51, 102, 255);"&gt;&amp;lt;view id="@+id/my_map" class="com.google.android.maps.MapView"  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:layout_width="fill_parent"  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:layout_height="fill_parent"  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:layout_weight="1" /&amp;gt; &lt;/span&gt;&lt;br /&gt;&amp;lt;/LinearLayout&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BEnDVeb9SM0/R76RXWtfiLI/AAAAAAAAACA/8j7Dcvd9NRg/s1600-h/android_mapdemo.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_BEnDVeb9SM0/R76RXWtfiLI/AAAAAAAAACA/8j7Dcvd9NRg/s400/android_mapdemo.JPG" alt="" id="BLOGGER_PHOTO_ID_5169729252687317170" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-8421247966748044297?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/8421247966748044297/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=8421247966748044297' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8421247966748044297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8421247966748044297'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/mapactivity-in-android.html' title='MapActivity in Android'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_BEnDVeb9SM0/R76RXWtfiLI/AAAAAAAAACA/8j7Dcvd9NRg/s72-c/android_mapdemo.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-3555560152992991441</id><published>2008-02-20T23:31:00.000-08:00</published><updated>2008-06-09T01:42:51.642-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='log'/><category scheme='http://www.blogger.com/atom/ns#' term='Debug'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>Debug in Android</title><content type='html'>You can debug in Android by applying android.util.Log.&lt;br /&gt;&lt;br /&gt;開發程式時，Debug的訊息是很有幫助的！&lt;br /&gt;在Android中，你可以透過 android.util.Log 來Debug！&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;package com.test;&lt;br /&gt;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;import android.util.Log;&lt;/span&gt;&lt;br /&gt;public class hello extends Activity {&lt;br /&gt;/** Called when the activity is first created. */&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;private static final String TAG = "DEBUG";&lt;/span&gt;&lt;br /&gt;@Override&lt;br /&gt;public void onCreate(Bundle icicle) {&lt;br /&gt;super.onCreate(icicle);&lt;br /&gt;setContentView(R.layout.main);&lt;br /&gt;&lt;br /&gt;   for(int i=0;i&lt;5;i++){&lt;br /&gt;  Log.v(&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;TAG&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;, "i:"+i);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;How to see log? LogCat&lt;br /&gt;如何看Debug Message? 使用LogCat&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Window&lt;/span&gt; &gt;&gt; &lt;span style="font-weight: bold;"&gt;Show View&lt;/span&gt; &gt;&gt; &lt;span style="font-weight: bold;"&gt;Others&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BEnDVeb9SM0/R70vHWtfiII/AAAAAAAAABo/qUdRk76MCuE/s1600-h/android_debug1.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_BEnDVeb9SM0/R70vHWtfiII/AAAAAAAAABo/qUdRk76MCuE/s400/android_debug1.JPG" alt="" id="BLOGGER_PHOTO_ID_5169339750693177474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;選擇&lt;span style="font-weight: bold;"&gt;LogCat&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BEnDVeb9SM0/R70vHWtfiJI/AAAAAAAAABw/kGG7_hX3vhI/s1600-h/android_debug2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_BEnDVeb9SM0/R70vHWtfiJI/AAAAAAAAABw/kGG7_hX3vhI/s400/android_debug2.JPG" alt="" id="BLOGGER_PHOTO_ID_5169339750693177490" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/a&gt;訊息出現在LogCat視窗，i=0......&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BEnDVeb9SM0/R70vHmtfiKI/AAAAAAAAAB4/_3bL0dBkhN4/s1600-h/android_debug3.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_BEnDVeb9SM0/R70vHmtfiKI/AAAAAAAAAB4/_3bL0dBkhN4/s400/android_debug3.JPG" alt="" id="BLOGGER_PHOTO_ID_5169339754988144802" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can click the green icon + to filter log by tag you define in code.And then it's easier to see log.&lt;br /&gt;這麼多Log要怎麼看？你可以點綠+的部分，將剛程式中你所定義的&lt;br /&gt;private static final String TAG = "DEBUG"來加到Filter，如此一來便可方便地只看到自己定義的Log。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-3555560152992991441?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/3555560152992991441/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=3555560152992991441' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3555560152992991441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3555560152992991441'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/debug-in-android.html' title='Debug in Android'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_BEnDVeb9SM0/R70vHWtfiII/AAAAAAAAABo/qUdRk76MCuE/s72-c/android_debug1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-3264981115102067807</id><published>2008-02-13T00:15:00.000-08:00</published><updated>2008-04-11T02:51:39.870-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Content Providers'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>How to Android? Step3: Get contacts data from android.provider</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BEnDVeb9SM0/R7K2iWtfh-I/AAAAAAAAAAY/svHWeWEMNR0/s1600-h/demo.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_BEnDVeb9SM0/R7K2iWtfh-I/AAAAAAAAAAY/svHWeWEMNR0/s320/demo.JPG" alt="" id="BLOGGER_PHOTO_ID_5166392423875577826" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;如何透過Google的android.provider來取得手機通訊錄資料?&lt;br /&gt;&lt;br /&gt;1. &lt;u&gt;AndroidManifest.xml&lt;/u&gt; : 在此xml檔案加入下列籃色那個安全性設定，不然會一直發生安全性錯誤！&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;br /&gt;&amp;lt;manifest android="http://schemas.android.com/apk/res/android"&lt;br /&gt;package="com.google.test"&amp;gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;&amp;lt;uses-permission android:name="android.permission.READ_CONTACTS" /&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;application icon="@drawable/icon"&gt;&lt;br /&gt;&amp;lt;activity class=".hello" label="@string/app_name"&gt;&lt;br /&gt;&amp;lt;intent-filter&gt;&lt;br /&gt;&amp;lt;action value="android.intent.action.MAIN"&gt;&lt;br /&gt;&amp;lt;category value="android.intent.category.LAUNCHER"&gt;&lt;br /&gt;&amp;lt;/category&gt;&lt;br /&gt;&amp;lt;/action&gt;&lt;br /&gt;&amp;lt;/intent-filter&gt;&lt;br /&gt;&amp;lt;/activity&gt;&lt;br /&gt;&amp;lt;/application&gt;&amp;lt;/manifest&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;2. &lt;u&gt;hello.java&lt;/u&gt; : 在Activity java檔中加入下列籃色部份程式碼！&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;package com.google.test;&lt;br /&gt;&lt;br /&gt;import android.app.Activity;&lt;br /&gt;import android.database.Cursor;&lt;br /&gt;import com.google.test.R;&lt;br /&gt;import android.os.Bundle;&lt;br /&gt;import android.widget.TextView;&lt;br /&gt;&lt;br /&gt;public class hello extends Activity {&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;   private TextView tv;&lt;/span&gt;&lt;br /&gt;@Override&lt;br /&gt;public void onCreate(Bundle icicle) {&lt;br /&gt;super.onCreate(icicle);&lt;br /&gt;setContentView(R.layout.main);&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        tv =(TextView) findViewById(R.id.test);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;//      An array specifying which columns to return.&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     String[] projection = new String[] {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;         android.provider.BaseColumns._ID,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;         android.provider.Contacts.PeopleColumns.NAME,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;         android.provider.Contacts.PhonesColumns.NUMBER&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     };&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;//      Best way to retrieve a query; returns a managed query.&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     Cursor managedCursor = managedQuery( android.provider.Contacts.Phones.CONTENT_URI,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                             projection, //Which columns to return.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                             null,       // WHERE clause--we won't specify.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;                             android.provider.Contacts.PeopleColumns.NAME + " ASC"); // Order-by clause.&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;     getColumnData(managedCursor);&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    &lt;/span&gt;}&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    private void getColumnData(Cursor cur){&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        String name;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        String phoneNumber;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        int nameColumn = cur.getColumnIndex(android.provider.Contacts.PeopleColumns.NAME);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        int phoneColumn = cur.getColumnIndex(android.provider.Contacts.PhonesColumns.NUMBER);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        String imagePath;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        tv.setText("");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        while (cur.next()) {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;name = cur.getString(nameColumn);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            phoneNumber = cur.getString(phoneColumn);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;            tv.append(name+" : "+phoneNumber+"\n");&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;    }&lt;/span&gt;&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;3. &lt;u&gt;main.xml&lt;/u&gt; : 在layout資料夾下的main.xml檔案加入下列籃色部份，來顯示抓到的資料！&lt;br /&gt;&lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;&amp;lt;?xml version="1.0" encoding="utf-8"?&amp;gt;&lt;br /&gt;&amp;lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"&lt;br /&gt;android:orientation="vertical"&lt;br /&gt;android:layout_width="fill_parent"&lt;br /&gt;android:layout_height="fill_parent"&amp;gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt; &amp;lt;TextView id="@+id/test"  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:layout_width="wrap_content"  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        android:layout_height="wrap_content"  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;        /&amp;gt; &lt;/span&gt;&lt;br /&gt;&amp;lt;/LinearLayout&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-3264981115102067807?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/3264981115102067807/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=3264981115102067807' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3264981115102067807'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/3264981115102067807'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/how-to-android-step3-get-contacts-data.html' title='How to Android? Step3: Get contacts data from android.provider'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_BEnDVeb9SM0/R7K2iWtfh-I/AAAAAAAAAAY/svHWeWEMNR0/s72-c/demo.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-1925668773475191171</id><published>2008-02-12T01:26:00.000-08:00</published><updated>2008-08-25T20:46:01.836-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android project'/><category scheme='http://www.blogger.com/atom/ns#' term='Android101'/><title type='text'>How to Android?Step2:Set up Hello Android</title><content type='html'>建立"hello"的大綱 &lt;span id="pagecontent"&gt; &lt;ol&gt;&lt;li&gt;經由File &gt; New &gt; Project 目錄建立一個"Android專案" &lt;/li&gt;&lt;li&gt;在新專案視窗填入相關明細 &lt;/li&gt;&lt;li&gt;編輯自動產生的空殼程式，顯示輸出 &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;  &lt;/p&gt; &lt;p&gt;就是這麼簡單，下面說明每一個步驟 &lt;/p&gt; &lt;p&gt;1.建立新的Android專案&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BEnDVeb9SM0/R7UOvWtfiDI/AAAAAAAAABA/6INumds7RYA/s1600-h/android_project_setup.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_BEnDVeb9SM0/R7UOvWtfiDI/AAAAAAAAABA/6INumds7RYA/s400/android_project_setup.JPG" alt="" id="BLOGGER_PHOTO_ID_5167052354190542898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p&gt;選好Android Project後按Next按紐 再填入專案明細&lt;br /&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;/span&gt;&lt;span&gt;&lt;span id="pagecontent"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7UPCGtfiEI/AAAAAAAAABI/BYzSRTIK0jk/s1600-h/android_project_setup2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7UPCGtfiEI/AAAAAAAAABI/BYzSRTIK0jk/s400/android_project_setup2.JPG" alt="" id="BLOGGER_PHOTO_ID_5167052676313090114" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;span id="pagecontent"&gt;&lt;p&gt;3.編輯自動產生的空殼程式&lt;br /&gt;外掛執行後，有支產生的程式叫hello.java看起來像這樣 &lt;/p&gt; &lt;table border="1"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&lt;pre class="wiki"&gt;&lt;span style="font-size:85%;"&gt;public class HelloAndroid extends Activity&lt;br /&gt;{&lt;br /&gt;/** Called when the activity is first created. */&lt;br /&gt;@Override&lt;br /&gt;public void onCreate(Bundle icicle)&lt;br /&gt;{&lt;br /&gt;super.onCreate(icicle);&lt;br /&gt;setContentView(R.layout.main);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;h4 id="section-_E5_9F_B7_E8_A1_8C_E7_A8_8B_E5_BC_8F_E7_A2_BC+Android_21+_E6_82_A8_E5_A5_BD"&gt;&lt;b&gt;執行程式碼： hello&lt;/b&gt;&lt;/h4&gt; &lt;p&gt;Eclipse外掛很容易就可以執行你的程式，開始是從目錄選取Run&gt;Open Run Dialog，會看到 &lt;/p&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7USrGtfiFI/AAAAAAAAABQ/C5FTYAWk8Ak/s1600-h/android_project_setup3.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7USrGtfiFI/AAAAAAAAABQ/C5FTYAWk8Ak/s400/android_project_setup3.JPG" alt="" id="BLOGGER_PHOTO_ID_5167056679222610002" border="0" /&gt;&lt;/a&gt;&lt;span id="pagecontent"&gt;&lt;p&gt;下一步選取"Android Application"，按左上角的圖示(一張紙上面有個+號的那個)，或是直接在double click "Android Application" ，會載入一個名為"New_configuration" 的新設定 &lt;/p&gt;  &lt;p&gt;然後按Browse按紐選擇您的專案，外掛會掃瞄專案內的每一個Activity的子類別加到 Activity:標籤下的下拉方塊，因為"Android!您好"只有一個Activity，所以預設就是它了，再來按"Apply"套用，範例如下： &lt;/p&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7US5GtfiGI/AAAAAAAAABY/JTjhCEP5M_E/s1600-h/android_project_setup4.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7US5GtfiGI/AAAAAAAAABY/JTjhCEP5M_E/s400/android_project_setup4.JPG" alt="" id="BLOGGER_PHOTO_ID_5167056919740778594" border="0" /&gt;&lt;/a&gt;&lt;span id="pagecontent"&gt;&lt;p&gt;就是這樣 - 您完成了，按Run按紐，Android模擬器啟動後，您的程式就會出現，看起來就像這樣 &lt;/p&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BEnDVeb9SM0/R7UTLWtfiHI/AAAAAAAAABg/j0S7IrIYAoc/s1600-h/android_project_setup5.JPG"&gt;&lt;img style="cursor: pointer;" src="http://4.bp.blogspot.com/_BEnDVeb9SM0/R7UTLWtfiHI/AAAAAAAAABg/j0S7IrIYAoc/s400/android_project_setup5.JPG" alt="" id="BLOGGER_PHOTO_ID_5167057233273391218" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-1925668773475191171?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/1925668773475191171/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=1925668773475191171' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/1925668773475191171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/1925668773475191171'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/how-to-androidstep2set-up-hello-android.html' title='How to Android?Step2:Set up Hello Android'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_BEnDVeb9SM0/R7UOvWtfiDI/AAAAAAAAABA/6INumds7RYA/s72-c/android_project_setup.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-7369429501996362423</id><published>2008-02-11T23:01:00.000-08:00</published><updated>2008-08-25T20:45:15.312-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Android101'/><title type='text'>How to Android? Step1:Tools and SDK</title><content type='html'>We can use the &lt;a href="http://www.eclipse.org/downloads/" target="_blank"&gt;Eclipse IDE&lt;/a&gt; as our environment for developing Android applications, and install a custom plugin called Android Development Tools (ADT), which adds integrated support for Android projects and tools. The ADT plugin includes a variety of powerful extensions that make creating, running, and debugging Android applications faster and easier.&lt;br /&gt;&lt;p&gt;&lt;br /&gt;To download and install the ADT plugin, set up an Eclipse remote update site  as described in the steps below. &lt;/p&gt;  &lt;ol&gt;&lt;li&gt; Start Eclipse, then select &lt;strong&gt;Help&lt;/strong&gt; &gt; &lt;strong&gt;Software Updates&lt;/strong&gt; &gt; &lt;strong&gt;Find             and Install...&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; In the dialog that appears, select &lt;strong&gt;Search for new features to install&lt;/strong&gt; and press &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; Press &lt;strong&gt;New Remote Site&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; In the resulting dialog box, enter a name for the remote site (e.g. Android Plugin) and enter this as its URL:         &lt;pre style="color: rgb(51, 102, 255);" class="prettyprint"&gt;https://dl-ssl.google.com/android/eclipse/&lt;/pre&gt;         Press &lt;strong&gt;OK&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; You should now see the new site added to the search list (and checked).         Press &lt;strong&gt;Finish&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; In the subsequent Search Results dialog box, select the checkbox for &lt;strong&gt;Android Plugin&lt;/strong&gt; &gt; &lt;strong&gt;Eclipse Integration&lt;/strong&gt; &gt; &lt;strong&gt;Android Development             Tools &lt;/strong&gt; and press &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; Read the license agreement and then select &lt;strong&gt;Accept terms of the license agreement&lt;/strong&gt;, if appropriate. Press &lt;strong&gt;Next&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; Press &lt;strong&gt;Finish&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt; The ADT plugin is not signed; you can accept the installation anyway         by pressing &lt;strong&gt;Install All&lt;/strong&gt;. &lt;/li&gt;&lt;li&gt;Restart Eclipse. &lt;/li&gt;&lt;li&gt;After restart, &lt;strong&gt;update your Eclipse preferences&lt;/strong&gt; to point to the SDK directory:&lt;/li&gt;&lt;ol type="a"&gt;&lt;li&gt;Select &lt;strong&gt;Window&lt;/strong&gt; &gt; &lt;strong&gt;Preferences...&lt;/strong&gt; to open the Preferences                 panel. (Mac OS X: &lt;strong&gt;Eclipse&lt;/strong&gt; &gt; &lt;strong&gt;Preferences&lt;/strong&gt;) &lt;/li&gt;&lt;li&gt;Select &lt;strong&gt;Android&lt;/strong&gt; from the left panel. &lt;/li&gt;&lt;li&gt;For the SDK Location in the main panel, press &lt;strong&gt;Browse...&lt;/strong&gt; and locate the SDK directory. &lt;/li&gt;&lt;li&gt;Press &lt;strong&gt;Apply&lt;/strong&gt;, then &lt;strong&gt;OK&lt;/strong&gt;.&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;Last &lt;span&gt;step, &lt;/span&gt;Let's download &lt;a href="http://code.google.com/android/download.html" target="_blank"&gt;Android SDK&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;所謂工欲善其事必先利其器，而Android主要是已Java-based進行開發，所以在此建議你使用Eclipse IDE來開發Android。你可以在下方連結進行下載：&lt;br /&gt;&lt;a href="http://www.eclipse.org/downloads/" target="_blank"&gt;Eclipse Downloads Home&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;當你安裝Eclipse後，然後再安&lt;span id="pagecontent"&gt;裝Android Development Tools (ADT) 的外掛，ADT提供了Android專案與工具的整體支援。&lt;br /&gt;&lt;/span&gt;&lt;span id="pagecontent"&gt;&lt;ol&gt;&lt;li&gt;啟動Eclipse，選擇&lt;b&gt;Help &gt; Software Updates &gt; Find and Install....&lt;br /&gt;&lt;/b&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BEnDVeb9SM0/R7UDb2tfiAI/AAAAAAAAAAo/B7m31JkEOM4/s1600-h/android_development_tools.JPG"&gt;&lt;img style="cursor: pointer;" src="http://2.bp.blogspot.com/_BEnDVeb9SM0/R7UDb2tfiAI/AAAAAAAAAAo/B7m31JkEOM4/s400/android_development_tools.JPG" alt="" id="BLOGGER_PHOTO_ID_5167039924555188226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt;對話視窗出現後，選擇&lt;b&gt;Search for new features to instal&lt;/b&gt;l後按&lt;b&gt;Next&lt;/b&gt;. &lt;/li&gt;&lt;li&gt;按&lt;b&gt;New Remote Site&lt;/b&gt; .&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7UDcGtfiBI/AAAAAAAAAAw/LjRw_zVRS84/s1600-h/android_development_tools2.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7UDcGtfiBI/AAAAAAAAAAw/LjRw_zVRS84/s400/android_development_tools2.JPG" alt="" id="BLOGGER_PHOTO_ID_5167039928850155538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;在最後的對話視窗的remote site鍵入名稱(如Android 外掛)與以下URL&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;         https://dl-ssl।google।com/android/eclipse/  &lt;/span&gt;&lt;b&gt; &lt;/b&gt;&lt;br /&gt;後按&lt;b&gt;OK&lt;/b&gt; &lt;/li&gt;&lt;li&gt;然後您會看到新站台出現在搜尋清單上(且被選取)，按&lt;b&gt;Finish&lt;/b&gt;.  &lt;/li&gt;&lt;li&gt;在接下來的搜尋結果對話視窗核取然&lt;b&gt;Android Plugin &gt; Eclipse Integration &gt; Android Development Tools&lt;/b&gt; 後按&lt;b&gt;Next&lt;/b&gt;. &lt;/li&gt;&lt;li&gt;閱讀許可條款, 如果同意的話選取&lt;b&gt;Accept terms of the license agreement&lt;/b&gt;，按&lt;b&gt;Next&lt;/b&gt;  &lt;/li&gt;&lt;li&gt;按&lt;b&gt;finish&lt;/b&gt;. &lt;/li&gt;&lt;li&gt;ADT外掛未經簽署，您可以按&lt;b&gt;Install All&lt;/b&gt;. 同意安裝 &lt;/li&gt;&lt;li&gt;重新啟動Eclipse &lt;/li&gt;&lt;li&gt;重新啟動後，&lt;b&gt;更新您的Eclipse的preferences&lt;/b&gt; 指定SDK的目錄路徑&lt;br /&gt;A.選擇&lt;b&gt;Window &gt; Preferences... &lt;/b&gt;開啟Preferences panel. (Mac OS X: &lt;b&gt;Eclipse &gt; Preferences&lt;/b&gt;)&lt;br /&gt;B.選擇左邊版面的Android&lt;br /&gt;C.在主版面上的SDK Location ，按&lt;b&gt;Browse...&lt;/b&gt; ，指定SDK的目錄路徑&lt;br /&gt;D.按&lt;b&gt;apply&lt;/b&gt;後再按&lt;b&gt;OK &lt;br /&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7UDcGtfiCI/AAAAAAAAAA4/SpFqFWR2xpA/s1600-h/android_development_tools3.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7UDcGtfiCI/AAAAAAAAAA4/SpFqFWR2xpA/s400/android_development_tools3.JPG" alt="" id="BLOGGER_PHOTO_ID_5167039928850155554" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;最後再安裝&lt;a href="http://code.google.com/android/download.html" target="_blank"&gt;Android SDK&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-7369429501996362423?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/7369429501996362423/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=7369429501996362423' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/7369429501996362423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/7369429501996362423'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/how-to-android-step1tools-and-sdk.html' title='How to Android? Step1:Tools and SDK'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_BEnDVeb9SM0/R7UDb2tfiAI/AAAAAAAAAAo/B7m31JkEOM4/s72-c/android_development_tools.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-8157036273054082879</id><published>2008-02-08T06:23:00.000-08:00</published><updated>2008-02-14T18:03:11.180-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>Android structure</title><content type='html'>The following diagram shows the major components of the Android operating system.&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7Tx2Wtfh_I/AAAAAAAAAAg/w1QbAN3vs5c/s1600-h/android_structure.JPG"&gt;&lt;img style="cursor: pointer;" src="http://3.bp.blogspot.com/_BEnDVeb9SM0/R7Tx2Wtfh_I/AAAAAAAAAAg/w1QbAN3vs5c/s400/android_structure.JPG" alt="Android structure" id="BLOGGER_PHOTO_ID_5167020588612421618" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-8157036273054082879?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/8157036273054082879/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=8157036273054082879' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8157036273054082879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8157036273054082879'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/android-structure.html' title='Android structure'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_BEnDVeb9SM0/R7Tx2Wtfh_I/AAAAAAAAAAg/w1QbAN3vs5c/s72-c/android_structure.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-5542278380341676422</id><published>2008-02-07T06:14:00.000-08:00</published><updated>2008-02-12T19:57:21.492-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='手機'/><category scheme='http://www.blogger.com/atom/ns#' term='Flash Lite'/><title type='text'>Flash Lite</title><content type='html'>&lt;strong&gt;Flash Lite History - Flash Lite的歷史&lt;/strong&gt;&lt;br /&gt;&lt;img src="http://www.bin.idv.tw/main/flashlite1.jpg" align="left" /&gt;In 2003, Macromedia released Flash Lite1.0, a mobile flash player based on Flash4. It has basic functions and Internet-connection function. NTT DoCoMo and i-mode in Japan are the first service provider for Flash Lite.&lt;br /&gt;&lt;br /&gt;In 2006, Macromedia released Flash Lite2.0, great progress in new version. It's based  on Flash6 and supported chinese.&lt;br /&gt;&lt;br /&gt;In 2007, Adobe(Macromedia merged by Adobe) released Flash Lite3.0. It's based  on Flash8 and supported FLV streaming video and dynamic loading XML. It's a powerful version.&lt;br /&gt;&lt;br /&gt;Macromedia在2003年推出&lt;span style="color:blue;"&gt;Flash Lite1.0&lt;/span&gt;，以Flash4指令碼引擎為基礎的全新Flash行動版本，也就是手機版的Flash，早期提供了基本動畫與網路連接功能。最先採用Flash Lite的行動電話服務業者是日本的NTT DoCoMo與NTT的i-mode服務。             &lt;br /&gt;           &lt;br /&gt;在2006年Macromedia推出&lt;span style="color:blue;"&gt;Flash Lite2.0&lt;/span&gt;，新版本的功能有大幅提升，以Flash6指令碼引擎為基礎，並支援中文字體。&lt;br /&gt;           &lt;br /&gt;在2007年Adobe(Macromedia被併購)推出&lt;a href="http://www.adobe.com/tw/products/flashlite/features/" target="_blank"&gt;&lt;span style="color:blue;"&gt;Flash Lite3.0&lt;/span&gt;&lt;/a&gt;，以Flash8指令碼引擎為基礎，支援FLV視訊功能，支援動態載入XML資料，功能十分強大。&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Flash Lite Application - Flash Lite的應用&lt;/strong&gt;&lt;br /&gt;We can use Flash Lite to develop mobile application, such as tube guide, traffic query, rss reader, game, UI etc.&lt;br /&gt;&lt;br /&gt;Flash Lite可用來開發手機的應用程式，如導覽地鐵路線圖的查詢應用程式、即時路況查詢、Rss閱讀器等。當然一般經常使用的遊戲、桌面主題或甚至是手機使用介面UI。&lt;br /&gt;          &lt;br /&gt;Example &lt;span style="color:blue;"&gt;應用程式：&lt;/span&gt;&lt;a href="http://www.uptoyoo.com/flash2U.html" target="_blank"&gt;flash2U&lt;/a&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;Game &amp;amp; Screens：&lt;/span&gt;&lt;a href="http://www.smashingcontent.com/index.php" target="_blank"&gt;Smashing Ideas&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Future - Flash Lite的未來發展&lt;/strong&gt;&lt;br /&gt;It is getting mature for Flash Lite, but comparing with J2ME or BREW, It's not popular.&lt;br /&gt;&lt;br /&gt;Its strength is based on popularity in the Internet and many developers for Flash.            Besides, data compression and user-frieandly are another advantage.&lt;br /&gt;&lt;br /&gt;Its weakness is many limitations of mobile, and too many version of Flash Lite.&lt;br /&gt;&lt;br /&gt;It's not popular for Flash Lite now. I think its version might take a little long time to be in unanimity.&lt;br /&gt;&lt;br /&gt;The key is ISP must support  Flash Lite service, whatever softwave or hardware.&lt;br /&gt;&lt;br /&gt;FlashLite已由早期發展的平台，漸漸到成熟的平台，不過跟J2ME或BREW等相對成熟的技術比，普及率恐怕還是相差許多。              &lt;br /&gt;&lt;br /&gt;它所具有的優勢是基於Flash在網際網路上的普及率與現有的開發人員，另外就是FlashLite透過良好的設計跟壓縮最佳化，可以有效降低資料傳輸量，也就代表可能可以節省不少費用，同時提供良好的使用者介面。                &lt;br /&gt;           &lt;br /&gt;但是目前所具有的劣勢是，在手機或embedded system這兩塊市場先天或後天的限制太多，目前在市面上的版本就有1.0與2.0之系列，而這也讓開發人員難以適從。              &lt;br /&gt;           &lt;br /&gt;目前FlashLite手機並不算普及，因此要所有手機都支援FlashLite且版本較為一致時，恐怕還需要一段不短的時間。&lt;br /&gt;           &lt;br /&gt;而關鍵也就是行動網路服務供應商必須支援，無論是在金錢和硬體上投資或在行銷上推動Flash內容。                &lt;br /&gt;             &lt;a href="http://www.macromedia.com/mobile/supported_devices/handsets.html" target="_blank"&gt;&lt;span style="color:blue;"&gt;目前Flash Lite手機&lt;/span&gt;&lt;/a&gt;      &lt;br /&gt;&lt;a href="http://www.adobe.com/cfusion/entitlement/index.cfm?e=flashcdk&amp;amp;loc=zh_tw" target="_blank"&gt;&lt;span style="color:blue;"&gt;下載 Macromedia Flash Lite 1.1 CDK&lt;/span&gt;&lt;/a&gt;      &lt;br /&gt;&lt;a href="http://www.adobe.com/cfusion/entitlement/index.cfm?e=flashlite2cdk&amp;amp;loc=zh_tw" target="_blank"&gt;&lt;span style="color:blue;"&gt;下載 Macromedia Flash Lite 2 CDK&lt;/span&gt;&lt;/a&gt;      &lt;br /&gt;&lt;a href="http://labs.adobe.com/technologies/flashlite3/" target="_blank"&gt;&lt;span style="color:blue;"&gt;Adobe Flash Lite 3 Developer Edition&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-5542278380341676422?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/5542278380341676422/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=5542278380341676422' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/5542278380341676422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/5542278380341676422'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/flash-lite.html' title='Flash Lite'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-6521594030643449641</id><published>2008-02-07T06:02:00.000-08:00</published><updated>2008-02-12T01:21:13.157-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='J2ME'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>Google Android  vs Sun J2ME</title><content type='html'>&lt;a href="http://www.news.com/8301-13580_3-9817048-39.html?tag=bl" target="_blank"&gt;Sun's worried that Google Android could fracture Java&lt;/a&gt;                                                                              &lt;br /&gt;&lt;br /&gt;&lt;a href="http://wireless.itworld.com/4269/071116googlesun/page_1.html" target="_blank"&gt;Google and Sun may butt heads over Android&lt;/a&gt;&lt;a href="http://big5.dochu.org/a-Java_WebDevelop-3-5409-11999741242.html" target="_blank"&gt;&lt;br /&gt;&lt;br /&gt;Google發布Android,Sun將何去何從?&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://java.ccidnet.com/art/12013/20071228/1325101_1.html" target="_blank"&gt;Android動了Java的奶酪？&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-6521594030643449641?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/6521594030643449641/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=6521594030643449641' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/6521594030643449641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/6521594030643449641'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/google-android-vs-sun-j2me.html' title='Google Android  vs Sun J2ME'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-4800478049345945283</id><published>2008-02-04T22:35:00.000-08:00</published><updated>2008-02-12T01:41:21.735-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android Comment'/><title type='text'>Android Comment</title><content type='html'>&lt;a href="http://unqualified-reservations.blogspot.com/2007/11/five-problems-with-google-android.html" target="_blank"&gt;Unqualified Reservations: Five problems with Google Android&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.businessweek.com/technology/content/aug2005/tc20050817_0949_tc024.htm" target="_blank"&gt;&lt;br /&gt;Google Buys Android for Its Mobile Arsenal&lt;/a&gt;&lt;a href="http://mmdays.wordpress.com/2007/11/06/google_android/" target="_blank"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blog.washingtonpost.com/fasterforward/2007/11/analyzing_googles_android_1.html" target="_blank"&gt;Analyzing Google's "Android" - Faster Forward&lt;/a&gt;&lt;br /&gt;&lt;a href="http://mmdays.wordpress.com/2007/11/06/google_android/" target="_blank"&gt;&lt;br /&gt;行動通訊市場即將改變生態&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://chinese.engadget.com/2007/12/21/android-dsk-frustrating-developers-due-to-bugs-lack-of-document/" target="_blank"&gt;&lt;span id="pt1068564"&gt;Android SDK不怎麼親民啊...&lt;/span&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-4800478049345945283?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/4800478049345945283/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=4800478049345945283' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/4800478049345945283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/4800478049345945283'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/android-comment.html' title='Android Comment'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-6179726127071680976</id><published>2008-02-04T22:04:00.000-08:00</published><updated>2008-02-12T00:43:46.938-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>Android Demo</title><content type='html'>Sergey Brin and Steve Horowitz discuss the availability of the SDK, that it will be open source in the future, and demo some applications.&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/_avwGFsv60U&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/_avwGFsv60U&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-6179726127071680976?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/6179726127071680976/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=6179726127071680976' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/6179726127071680976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/6179726127071680976'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/android-demo.html' title='Android Demo'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-8996541070649274715</id><published>2008-02-04T21:53:00.000-08:00</published><updated>2008-02-12T00:53:30.171-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android News'/><title type='text'>Android News</title><content type='html'>&lt;a href="http://www.news.com/8301-13580_3-9815165-39.html?tag=bl" target="_blank"&gt;Google releases Android programming tools&lt;/a&gt;                                                                                 &lt;span class="resultDate"&gt;&lt;/span&gt;&lt;a href="http://www.news.com/Google-sends-Android-to-conquer-mobile-world/2100-1038_3-6217113.html?tag=item" target="_blank"&gt;&lt;br /&gt;&lt;br /&gt;Google sends Android to conquer mobile world&lt;/a&gt;                                                                             &lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.news.com/8301-13580_3-9817048-39.html?tag=bl" target="_blank"&gt;Sun's worried that Google Android could fracture Java&lt;/a&gt;                                                                                 &lt;span class="resultDate"&gt;&lt;/span&gt;&lt;a href="http://www.zdnet.com.tw/news/comm/0,2000085675,20125717,00.htm" target="_blank"&gt;&lt;br /&gt;&lt;br /&gt;Google公布手機軟體：「比Gphone更有雄心」&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.beephone.com.tw/shownews.php?id=3131" class="l" target="_blank"&gt;世界首部搭載Google &lt;span style="color: rgb(204, 0, 51);"&gt;Android&lt;/span&gt;原型機&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.zdnet.com.tw/news/comm/0,2000085675,20125729,00.htm" target="_blank"&gt;&lt;span style="color: rgb(204, 0, 51);"&gt;Android&lt;/span&gt;為Google品牌手機鋪路&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://chinese.engadget.com/2008/02/04/android-sdk-to-get-significant-updates-10m-challenge-delayed/" target="_blank"&gt;&lt;span id="pt1105782"&gt;Android SDK將大翻新，比賽延期！&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://chinese.engadget.com/2007/11/06/googles-android-platform-and-the-open-handset-alliance-a-quick/" target="_blank"&gt;Google Android平台Open Handset Alliance小整理&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-8996541070649274715?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/8996541070649274715/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=8996541070649274715' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8996541070649274715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8996541070649274715'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/android-news.html' title='Android News'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-7799216152002115463</id><published>2008-02-04T21:40:00.000-08:00</published><updated>2008-02-12T00:25:31.350-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android SDK'/><title type='text'>Where is Android ?</title><content type='html'>Android Website    &lt;a href="http://code.google.com/android/" target="_blank"&gt;http://code.google.com/android/&lt;/a&gt;&lt;br /&gt;Android SDK &lt;a href="http://code.google.com/android/download.html" target="_blank"&gt;http://code.google.com/android/download.html&lt;/a&gt;&lt;br /&gt;Android blog &lt;a href="http://android-developers.blogspot.com/" target="_blank"&gt;http://android-developers.blogspot.com/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-7799216152002115463?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/7799216152002115463/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=7799216152002115463' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/7799216152002115463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/7799216152002115463'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/where-is-android.html' title='Where is Android ?'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2674256397927443761.post-8921055633940800315</id><published>2008-02-04T20:05:00.001-08:00</published><updated>2008-02-12T00:24:25.972-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><category scheme='http://www.blogger.com/atom/ns#' term='手機'/><title type='text'>What is Android ?</title><content type='html'>&lt;center&gt;&lt;div style="text-align: left;"&gt;Android is a software stack for mobile devices that includes an operating system, middleware and key applications. This early look at the Android SDK provides the tools and APIs necessary to begin developing applications on the Android platform using the Java programming language.&lt;br /&gt;&lt;br /&gt;Android是一個包含作業系統、中介程式與應用程式的行動裝置軟體平台，初期的Android SDK提供必要的API(應用程式開發介面)與工具以使用Java語言開發在Android平台上開發應用軟體。&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;img src="http://i.n.com.com/i/ne/p/2007/AndroidSDK_550x421.jpg" /&gt;&lt;/center&gt; &lt;p&gt;The picture shows The Tools(Eclipse) to develop Android project. Because there is no Android mobile now,so developers must use simulator of Android.&lt;br /&gt;&lt;br /&gt;Google的Android手機軟體開發工具，上圖顯示在Eclipse程式工具計畫中所看到的編程情況，目前由於無實體的Android手機，因此開發人員必須透過模擬器來模擬操作。 &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2674256397927443761-8921055633940800315?l=android-ballboy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://android-ballboy.blogspot.com/feeds/8921055633940800315/comments/default' title='張貼意見'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2674256397927443761&amp;postID=8921055633940800315' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8921055633940800315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2674256397927443761/posts/default/8921055633940800315'/><link rel='alternate' type='text/html' href='http://android-ballboy.blogspot.com/2008/02/what-is-android.html' title='What is Android ?'/><author><name>aaballboy</name><uri>http://www.blogger.com/profile/10470452782370431525</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='24' height='32' src='http://bp2.blogger.com/_BEnDVeb9SM0/R6f_BrjjNWI/AAAAAAAAAAM/txkMXglUYZU/S220/Wylizywacz.gif'/></author><thr:total>0</thr:total></entry></feed>
