<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wikidot="http://www.wikidot.com/rss-namespace">

	<channel>
		<title>ga:rss</title>
		<link>http://ccckmit.wikidot.com</link>
		<description>陳鍾誠的首頁 -- 金門大學 資訊工程系</description>
				<copyright></copyright>
		<lastBuildDate>Mon, 13 Apr 2026 23:39:59 +0000</lastBuildDate>
		
					<item>
				<guid>http://ccckmit.wikidot.com/ga:streetview</guid>
				<title>Streetview</title>
				<link>http://ccckmit.wikidot.com/ga:streetview</link>
				<description>

&lt;ol&gt;
&lt;li&gt;about android google api-streetview
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://stackoverflow.com/questions/3447723/about-android-google-api-streetview&quot;&gt;http://stackoverflow.com/questions/3447723/about-android-google-api-streetview&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;使用意圖(Intent)啟動 Android 內建谷歌地圖的街景(StreetView)
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://androidbiancheng.blogspot.tw/2011/06/intent-android-streetview.html&quot;&gt;http://androidbiancheng.blogspot.tw/2011/06/intent-android-streetview.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;How to tell if a Streetview exists before launching Streetview intent
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://stackoverflow.com/questions/3865607/how-to-tell-if-a-streetview-exists-before-launching-streetview-intent&quot;&gt;http://stackoverflow.com/questions/3865607/how-to-tell-if-a-streetview-exists-before-launching-streetview-intent&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;API : &lt;a href=&quot;http://android-developers.blogspot.tw/2009/01/can-i-use-this-intent.html&quot;&gt;http://android-developers.blogspot.tw/2009/01/can-i-use-this-intent.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;blockquote&gt;
&lt;p&gt;Use PackageManager and queryIntentActivities() with your Intent. If you get back a list of 0 matching activities, you know nothing on the device will handle your request.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Mon, 25 Mar 2013 03:38:18 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <ol> <li>about android google api-streetview <ul> <li><a href="http://stackoverflow.com/questions/3447723/about-android-google-api-streetview">http://stackoverflow.com/questions/3447723/about-android-google-api-streetview</a></li> </ul> </li> <li>使用意圖(Intent)啟動 Android 內建谷歌地圖的街景(StreetView) <ul> <li><a href="http://androidbiancheng.blogspot.tw/2011/06/intent-android-streetview.html">http://androidbiancheng.blogspot.tw/2011/06/intent-android-streetview.html</a></li> </ul> </li> <li>How to tell if a Streetview exists before launching Streetview intent <ul> <li><a href="http://stackoverflow.com/questions/3865607/how-to-tell-if-a-streetview-exists-before-launching-streetview-intent">http://stackoverflow.com/questions/3865607/how-to-tell-if-a-streetview-exists-before-launching-streetview-intent</a></li> <li>API : <a href="http://android-developers.blogspot.tw/2009/01/can-i-use-this-intent.html">http://android-developers.blogspot.tw/2009/01/can-i-use-this-intent.html</a></li> </ul> </li> </ol> <blockquote> <p>Use PackageManager and queryIntentActivities() with your Intent. If you get back a list of 0 matching activities, you know nothing on the device will handle your request.</p> </blockquote> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:graphics</guid>
				<title>Android 中的繪圖與動畫 (Graphics)</title>
				<link>http://ccckmit.wikidot.com/ga:graphics</link>
				<description>

&lt;h1&gt;&lt;span&gt;2D 繪圖 (Canvas)&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:painter&quot;&gt;簡單的繪圖功能&lt;/a&gt; &amp;#8212; 示範如何用 View 的繪圖功能。&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:drawboard&quot;&gt;手寫繪圖板&lt;/a&gt; &amp;#8212; 示範如何處理 onTouchEvent() 事件。&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:canvasdemo&quot;&gt;CanvasDemo&lt;/a&gt; &amp;#8212; 學員 F 的程式。&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;投影片教材：&lt;a href=&quot;http://ccckmit.wdfiles.com/local--files/ga:graphics/Android2D.ppt&quot;&gt;Android2D.ppt&lt;/a&gt; &amp;#8212; 關於 Android 2D 繪圖的簡介與實作&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;&lt;span&gt;3D 繪圖 (OpenGL/ES)&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:3d&quot;&gt;3D 繪圖簡介&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:opengles&quot;&gt;OpenGL/ES&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:opengl1&quot;&gt;第一個 OpenGL 程式&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:openglcube&quot;&gt;繪出立方體並旋轉&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:openglmodel&quot;&gt;載入 3D 模型&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;投影片教材：&lt;a href=&quot;http://ccckmit.wdfiles.com/local--files/ga:graphics/Android3D.ppt&quot;&gt;Android3D.ppt&lt;/a&gt; &amp;#8212; 關於 Android 3D 繪圖的簡介與實作&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;&lt;span&gt;3D 繪圖 (根據 NeHe 教材編撰)&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:gl1&quot;&gt;第 1 課&lt;/a&gt; &amp;#8212; 畫出三角形與立方體。&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl2&quot;&gt;第 2 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl3&quot;&gt;第 3 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl4&quot;&gt;第 4 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl5&quot;&gt;第 5 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl6&quot;&gt;第 6 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl7&quot;&gt;第 7 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl8&quot;&gt;第 8 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl9&quot;&gt;第 9 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl10&quot;&gt;第 10 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl11&quot;&gt;第 11 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;newpage&quot; href=&quot;http://ccckmit.wikidot.com/ga:gl12&quot;&gt;第 12 課&lt;/a&gt; &amp;#8212;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;說明：3D 繪圖 NeHe 教材程式修改自 Savas Ziplies 的 nehe-android-ports&lt;br /&gt;
來源：&lt;a href=&quot;http://insanitydesign.com/wp/projects/nehe-android-ports/&quot;&gt;http://insanitydesign.com/wp/projects/nehe-android-ports/&lt;/a&gt;&lt;/p&gt;
&lt;h1&gt;&lt;span&gt;參考文獻&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;NeHe Android Ports &amp;#8212; &lt;a href=&quot;http://insanitydesign.com/wp/projects/nehe-android-ports/&quot;&gt;http://insanitydesign.com/wp/projects/nehe-android-ports/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android Developer:Graphics &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/topics/graphics/index.html&quot;&gt;http://developer.android.com/guide/topics/graphics/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android Developer:2D Graphics &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/topics/graphics/2d-graphics.html&quot;&gt;http://developer.android.com/guide/topics/graphics/2d-graphics.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android Developer:3D with OpenGL &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/topics/graphics/opengl.html&quot;&gt;http://developer.android.com/guide/topics/graphics/opengl.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Max の3D Studio (Android 教學) &amp;#8212; &lt;a href=&quot;http://www.google.com.tw/search?as_q=Android&amp;amp;hl=zh-TW&amp;amp;biw=1024&amp;amp;bih=610&amp;amp;num=10&amp;amp;btnG=Google+%E6%90%9C%E5%B0%8B&amp;amp;as_epq=&amp;amp;as_oq=&amp;amp;as_eq=&amp;amp;lr=&amp;amp;cr=&amp;amp;as_ft=i&amp;amp;as_filetype=&amp;amp;as_qdr=all&amp;amp;as_occt=title&amp;amp;as_dt=i&amp;amp;as_sitesearch=ig-max.blogspot.com&amp;amp;as_rights=&amp;amp;safe=images&quot;&gt;http://www.google.com.tw/search?as_q=Android&amp;amp;hl=zh-TW&amp;amp;biw=1024&amp;amp;bih=610&amp;amp;num=10&amp;amp;btnG=Google+%E6%90%9C%E5%B0%8B&amp;amp;as_epq=&amp;amp;as_oq=&amp;amp;as_eq=&amp;amp;lr=&amp;amp;cr=&amp;amp;as_ft=i&amp;amp;as_filetype=&amp;amp;as_qdr=all&amp;amp;as_occt=title&amp;amp;as_dt=i&amp;amp;as_sitesearch=ig-max.blogspot.com&amp;amp;as_rights=&amp;amp;safe=images&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android OpenGL ES 2.0 Progress &amp;#8212; &lt;a href=&quot;http://awalkingcity.com/blog/2010/02/26/android-opengl-es-2-0-progress/&quot;&gt;http://awalkingcity.com/blog/2010/02/26/android-opengl-es-2-0-progress/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;3d Model Load applications for Android &amp;#8212; &lt;a href=&quot;http://www.androidzoom.com/android_applications/3d%20model%20load&quot;&gt;http://www.androidzoom.com/android_applications/3d%20model%20load&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;幫圖片加上影像特效 (IV) - 3D 投射效果 &amp;#8212; &lt;a href=&quot;http://ysl-paradise.blogspot.com/2010/03/iv-3d.html&quot;&gt;http://ysl-paradise.blogspot.com/2010/03/iv-3d.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;+ 參考文獻&lt;/li&gt;
&lt;li&gt;Max の 3D Studio, 2010年11月11日星期四【教學】Android OpenGL ES Primitive_Cube &amp;#8212; &lt;a href=&quot;http://ig-max.blogspot.com/2010/11/android-opengl-es-primitivecube.html&quot;&gt;http://ig-max.blogspot.com/2010/11/android-opengl-es-primitivecube.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Colored 3D Cube &amp;#8212; &lt;a href=&quot;http://www.anddev.org/colored_3d_cube-t4.html&quot;&gt;http://www.anddev.org/colored_3d_cube-t4.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://nehe-android.googlecode.com/svn-history/r64/trunk/OpenGLdemos/src/ro/brite/android/nehe18/&quot;&gt;http://nehe-android.googlecode.com/svn-history/r64/trunk/OpenGLdemos/src/ro/brite/android/nehe18/&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 20 Oct 2010 00:53:43 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <h1><span>2D 繪圖 (Canvas)</span></h1> <ol> <li><a href="http://ccckmit.wikidot.com/ga:painter">簡單的繪圖功能</a> &#8212; 示範如何用 View 的繪圖功能。</li> <li><a href="http://ccckmit.wikidot.com/ga:drawboard">手寫繪圖板</a> &#8212; 示範如何處理 onTouchEvent() 事件。</li> <li><a href="http://ccckmit.wikidot.com/ga:canvasdemo">CanvasDemo</a> &#8212; 學員 F 的程式。</li> </ol> <ul> <li>投影片教材：<a href="http://ccckmit.wdfiles.com/local--files/ga:graphics/Android2D.ppt">Android2D.ppt</a> &#8212; 關於 Android 2D 繪圖的簡介與實作</li> </ul> <h1><span>3D 繪圖 (OpenGL/ES)</span></h1> <ol> <li><a href="http://ccckmit.wikidot.com/ga:3d">3D 繪圖簡介</a></li> <li><a href="http://ccckmit.wikidot.com/ga:opengles">OpenGL/ES</a></li> <li><a href="http://ccckmit.wikidot.com/ga:opengl1">第一個 OpenGL 程式</a></li> <li><a href="http://ccckmit.wikidot.com/ga:openglcube">繪出立方體並旋轉</a></li> <li><a href="http://ccckmit.wikidot.com/ga:openglmodel">載入 3D 模型</a></li> </ol> <ul> <li>投影片教材：<a href="http://ccckmit.wdfiles.com/local--files/ga:graphics/Android3D.ppt">Android3D.ppt</a> &#8212; 關於 Android 3D 繪圖的簡介與實作</li> </ul> <h1><span>3D 繪圖 (根據 NeHe 教材編撰)</span></h1> <ol> <li><a href="http://ccckmit.wikidot.com/ga:gl1">第 1 課</a> &#8212; 畫出三角形與立方體。</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl2">第 2 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl3">第 3 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl4">第 4 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl5">第 5 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl6">第 6 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl7">第 7 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl8">第 8 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl9">第 9 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl10">第 10 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl11">第 11 課</a> &#8212;</li> <li><a class="newpage" href="http://ccckmit.wikidot.com/ga:gl12">第 12 課</a> &#8212;</li> </ol> <p>說明：3D 繪圖 NeHe 教材程式修改自 Savas Ziplies 的 nehe-android-ports<br /> 來源：<a href="http://insanitydesign.com/wp/projects/nehe-android-ports/">http://insanitydesign.com/wp/projects/nehe-android-ports/</a></p> <h1><span>參考文獻</span></h1> <ol> <li>NeHe Android Ports &#8212; <a href="http://insanitydesign.com/wp/projects/nehe-android-ports/">http://insanitydesign.com/wp/projects/nehe-android-ports/</a></li> <li>Android Developer:Graphics &#8212; <a href="http://developer.android.com/guide/topics/graphics/index.html">http://developer.android.com/guide/topics/graphics/index.html</a></li> <li>Android Developer:2D Graphics &#8212; <a href="http://developer.android.com/guide/topics/graphics/2d-graphics.html">http://developer.android.com/guide/topics/graphics/2d-graphics.html</a></li> <li>Android Developer:3D with OpenGL &#8212; <a href="http://developer.android.com/guide/topics/graphics/opengl.html">http://developer.android.com/guide/topics/graphics/opengl.html</a></li> <li>Max の3D Studio (Android 教學) &#8212; <a href="http://www.google.com.tw/search?as_q=Android&amp;hl=zh-TW&amp;biw=1024&amp;bih=610&amp;num=10&amp;btnG=Google+%E6%90%9C%E5%B0%8B&amp;as_epq=&amp;as_oq=&amp;as_eq=&amp;lr=&amp;cr=&amp;as_ft=i&amp;as_filetype=&amp;as_qdr=all&amp;as_occt=title&amp;as_dt=i&amp;as_sitesearch=ig-max.blogspot.com&amp;as_rights=&amp;safe=images">http://www.google.com.tw/search?as_q=Android&amp;hl=zh-TW&amp;biw=1024&amp;bih=610&amp;num=10&amp;btnG=Google+%E6%90%9C%E5%B0%8B&amp;as_epq=&amp;as_oq=&amp;as_eq=&amp;lr=&amp;cr=&amp;as_ft=i&amp;as_filetype=&amp;as_qdr=all&amp;as_occt=title&amp;as_dt=i&amp;as_sitesearch=ig-max.blogspot.com&amp;as_rights=&amp;safe=images</a></li> <li>Android OpenGL ES 2.0 Progress &#8212; <a href="http://awalkingcity.com/blog/2010/02/26/android-opengl-es-2-0-progress/">http://awalkingcity.com/blog/2010/02/26/android-opengl-es-2-0-progress/</a></li> <li>3d Model Load applications for Android &#8212; <a href="http://www.androidzoom.com/android_applications/3d%20model%20load">http://www.androidzoom.com/android_applications/3d%20model%20load</a></li> <li>幫圖片加上影像特效 (IV) - 3D 投射效果 &#8212; <a href="http://ysl-paradise.blogspot.com/2010/03/iv-3d.html">http://ysl-paradise.blogspot.com/2010/03/iv-3d.html</a></li> <li>+ 參考文獻</li> <li>Max の 3D Studio, 2010年11月11日星期四【教學】Android OpenGL ES Primitive_Cube &#8212; <a href="http://ig-max.blogspot.com/2010/11/android-opengl-es-primitivecube.html">http://ig-max.blogspot.com/2010/11/android-opengl-es-primitivecube.html</a></li> <li>Colored 3D Cube &#8212; <a href="http://www.anddev.org/colored_3d_cube-t4.html">http://www.anddev.org/colored_3d_cube-t4.html</a></li> <li><a href="http://nehe-android.googlecode.com/svn-history/r64/trunk/OpenGLdemos/src/ro/brite/android/nehe18/">http://nehe-android.googlecode.com/svn-history/r64/trunk/OpenGLdemos/src/ro/brite/android/nehe18/</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:canvasdemo</guid>
				<title>CanvasDemo -- 學員 F 的程式</title>
				<link>http://ccckmit.wikidot.com/ga:canvasdemo</link>
				<description>

&lt;h1&gt;&lt;span&gt;學員 F 的程式&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Sat, 04 Dec 2010 02:36:43 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <h1><span>學員 F 的程式</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">package</span><span class="hl-code"> </span><span class="hl-identifier">ccc</span><span class="hl-code">.</span><span class="hl-identifier">canvasDemo</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">app</span><span class="hl-code">.</span><span class="hl-identifier">Activity</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">graphics</span><span class="hl-code">.</span><span class="hl-identifier">Canvas</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">graphics</span><span class="hl-code">.</span><span class="hl-identifier">Paint</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">graphics</span><span class="hl-code">.</span><span class="hl-identifier">Rect</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">graphics</span><span class="hl-code">.</span><span class="hl-identifier">drawable</span><span class="hl-code">.</span><span class="hl-identifier">Drawable</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">os</span><span class="hl-code">.</span><span class="hl-identifier">Bundle</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">SurfaceHolder</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">SurfaceView</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">View</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">widget</span><span class="hl-code">.</span><span class="hl-identifier">Button</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">canvasDemo</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Activity</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">SurfaceView</span><span class="hl-code"> </span><span class="hl-identifier">SurfaceView01</span><span class="hl-code">; </span><span class="hl-identifier">SurfaceHolder</span><span class="hl-code"> </span><span class="hl-identifier">surfaceHolder</span><span class="hl-code">; </span><span class="hl-identifier">Drawable</span><span class="hl-code"> </span><span class="hl-identifier">img</span><span class="hl-code">; @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">Bundle</span><span class="hl-code"> </span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">setContentView</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">layout</span><span class="hl-code">.</span><span class="hl-identifier">main</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">img</span><span class="hl-code">=</span><span class="hl-identifier">getResources</span><span class="hl-brackets">()</span><span class="hl-code">.</span><span class="hl-identifier">getDrawable</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">drawable</span><span class="hl-code">.</span><span class="hl-identifier">android</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">button01</span><span class="hl-code">=</span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">Button01</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">button01</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">View</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">arg0</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">draw</span><span class="hl-brackets">(</span><span class="hl-identifier">drawAction</span><span class="hl-code">.</span><span class="hl-identifier">drawAndroid</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">button02</span><span class="hl-code">=</span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">Button02</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">button02</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">View</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">arg0</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">draw</span><span class="hl-brackets">(</span><span class="hl-identifier">drawAction</span><span class="hl-code">.</span><span class="hl-identifier">clear</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">button03</span><span class="hl-code">=</span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">Button03</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">button03</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">View</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">arg0</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">finish</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">SurfaceView01</span><span class="hl-code">=</span><span class="hl-brackets">(</span><span class="hl-identifier">SurfaceView</span><span class="hl-brackets">)</span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">SurfaceView01</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">surfaceHolder</span><span class="hl-code">=</span><span class="hl-identifier">SurfaceView01</span><span class="hl-code">.</span><span class="hl-identifier">getHolder</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">surfaceHolder</span><span class="hl-code">.</span><span class="hl-identifier">addCallback</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">SurfaceHolder</span><span class="hl-code">.</span><span class="hl-identifier">Callback</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">surfaceDestroyed</span><span class="hl-brackets">(</span><span class="hl-identifier">SurfaceHolder</span><span class="hl-code"> </span><span class="hl-identifier">arg0</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">surfaceCreated</span><span class="hl-brackets">(</span><span class="hl-identifier">SurfaceHolder</span><span class="hl-code"> </span><span class="hl-identifier">arg0</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">draw</span><span class="hl-brackets">(</span><span class="hl-identifier">drawAction</span><span class="hl-code">.</span><span class="hl-identifier">create</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">surfaceChanged</span><span class="hl-brackets">(</span><span class="hl-identifier">SurfaceHolder</span><span class="hl-code"> </span><span class="hl-identifier">arg0</span><span class="hl-code">, </span><span class="hl-types">int</span><span class="hl-code"> </span><span class="hl-identifier">arg1</span><span class="hl-code">, </span><span class="hl-types">int</span><span class="hl-code"> </span><span class="hl-identifier">arg2</span><span class="hl-code">, </span><span class="hl-types">int</span><span class="hl-code"> </span><span class="hl-identifier">arg3</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">protected</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onResume</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onResume</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-identifier">enum</span><span class="hl-code"> </span><span class="hl-identifier">drawAction</span><span class="hl-brackets">{</span><span class="hl-identifier">create</span><span class="hl-code">,</span><span class="hl-identifier">drawAndroid</span><span class="hl-code">,</span><span class="hl-identifier">clear</span><span class="hl-code">,</span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">draw</span><span class="hl-brackets">(</span><span class="hl-identifier">drawAction</span><span class="hl-code"> </span><span class="hl-identifier">action</span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-identifier">Canvas</span><span class="hl-code"> </span><span class="hl-identifier">canvas</span><span class="hl-code"> = </span><span class="hl-reserved">null</span><span class="hl-code">; </span><span class="hl-reserved">try</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">canvas</span><span class="hl-code"> = </span><span class="hl-identifier">surfaceHolder</span><span class="hl-code">.</span><span class="hl-identifier">lockCanvas</span><span class="hl-brackets">(</span><span class="hl-reserved">null</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-reserved">synchronized</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-identifier">surfaceHolder</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">switch</span><span class="hl-brackets">(</span><span class="hl-identifier">action</span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-reserved">case</span><span class="hl-code"> </span><span class="hl-identifier">create</span><span class="hl-code">: </span><span class="hl-identifier">start</span><span class="hl-brackets">(</span><span class="hl-identifier">canvas</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-reserved">break</span><span class="hl-code">; </span><span class="hl-reserved">case</span><span class="hl-code"> </span><span class="hl-identifier">drawAndroid</span><span class="hl-code">: </span><span class="hl-identifier">drawAndroid</span><span class="hl-brackets">(</span><span class="hl-identifier">canvas</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-reserved">break</span><span class="hl-code">; </span><span class="hl-reserved">case</span><span class="hl-code"> </span><span class="hl-identifier">clear</span><span class="hl-code">: </span><span class="hl-identifier">clear</span><span class="hl-brackets">(</span><span class="hl-identifier">canvas</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-reserved">break</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">finally</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">if</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-identifier">canvas</span><span class="hl-code"> != </span><span class="hl-reserved">null</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">surfaceHolder</span><span class="hl-code">.</span><span class="hl-identifier">unlockCanvasAndPost</span><span class="hl-brackets">(</span><span class="hl-identifier">canvas</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">drawAndroid</span><span class="hl-brackets">(</span><span class="hl-identifier">Canvas</span><span class="hl-code"> </span><span class="hl-identifier">canvas</span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-identifier">Paint</span><span class="hl-code"> </span><span class="hl-identifier">p</span><span class="hl-code">=</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Paint</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">p</span><span class="hl-code">.</span><span class="hl-identifier">setARGB</span><span class="hl-brackets">(</span><span class="hl-number">150</span><span class="hl-code">,</span><span class="hl-number">88</span><span class="hl-code">,</span><span class="hl-number">88</span><span class="hl-code">,</span><span class="hl-number">88</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawLine</span><span class="hl-brackets">(</span><span class="hl-number">0</span><span class="hl-code">, </span><span class="hl-number">0</span><span class="hl-code">, </span><span class="hl-number">128</span><span class="hl-code">, </span><span class="hl-number">128</span><span class="hl-code">, </span><span class="hl-identifier">p</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">save</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">img</span><span class="hl-code">.</span><span class="hl-identifier">setBounds</span><span class="hl-brackets">(</span><span class="hl-number">64</span><span class="hl-code">, </span><span class="hl-number">64</span><span class="hl-code">, </span><span class="hl-number">128</span><span class="hl-code">, </span><span class="hl-number">128</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-types">float</span><span class="hl-code"> </span><span class="hl-identifier">angle</span><span class="hl-code">=</span><span class="hl-number">90</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">rotate</span><span class="hl-brackets">(</span><span class="hl-identifier">angle</span><span class="hl-code">, </span><span class="hl-identifier">img</span><span class="hl-code">.</span><span class="hl-identifier">getBounds</span><span class="hl-brackets">()</span><span class="hl-code">.</span><span class="hl-identifier">centerX</span><span class="hl-brackets">()</span><span class="hl-code">, </span><span class="hl-identifier">img</span><span class="hl-code">.</span><span class="hl-identifier">getBounds</span><span class="hl-brackets">()</span><span class="hl-code">.</span><span class="hl-identifier">centerY</span><span class="hl-brackets">())</span><span class="hl-code">; </span><span class="hl-identifier">img</span><span class="hl-code">.</span><span class="hl-identifier">draw</span><span class="hl-brackets">(</span><span class="hl-identifier">canvas</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">restore</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">start</span><span class="hl-brackets">(</span><span class="hl-identifier">Canvas</span><span class="hl-code"> </span><span class="hl-identifier">canvas</span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-identifier">img</span><span class="hl-code">.</span><span class="hl-identifier">setBounds</span><span class="hl-brackets">(</span><span class="hl-number">0</span><span class="hl-code">, </span><span class="hl-number">0</span><span class="hl-code">, </span><span class="hl-number">128</span><span class="hl-code">, </span><span class="hl-number">128</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">img</span><span class="hl-code">.</span><span class="hl-identifier">draw</span><span class="hl-brackets">(</span><span class="hl-identifier">canvas</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">clear</span><span class="hl-brackets">(</span><span class="hl-identifier">Canvas</span><span class="hl-code"> </span><span class="hl-identifier">canvas</span><span class="hl-brackets">){</span><span class="hl-code"> </span><span class="hl-identifier">Paint</span><span class="hl-code"> </span><span class="hl-identifier">p</span><span class="hl-code">=</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Paint</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">p</span><span class="hl-code">.</span><span class="hl-identifier">setARGB</span><span class="hl-brackets">(</span><span class="hl-number">255</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Rect</span><span class="hl-code"> </span><span class="hl-identifier">rect</span><span class="hl-code">=</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Rect</span><span class="hl-brackets">(</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-number">0</span><span class="hl-code">,</span><span class="hl-identifier">SurfaceView01</span><span class="hl-code">.</span><span class="hl-identifier">getWidth</span><span class="hl-brackets">()</span><span class="hl-code">,</span><span class="hl-identifier">SurfaceView01</span><span class="hl-code">.</span><span class="hl-identifier">getHeight</span><span class="hl-brackets">())</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawRect</span><span class="hl-brackets">(</span><span class="hl-identifier">rect</span><span class="hl-code">, </span><span class="hl-identifier">p</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span></pre></div> </div> <h1><span>參考文獻</span></h1> <ol> <li>利用Handler来更新android的UI &#8212; <a href="http://rayleung.javaeye.com/blog/411860">http://rayleung.javaeye.com/blog/411860</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:serviceexample</guid>
				<title>Android 中的服務 (Service) 範例</title>
				<link>http://ccckmit.wikidot.com/ga:serviceexample</link>
				<description>

&lt;p&gt;專案下載：&lt;a href=&quot;http://dl.dropbox.com/u/13828995/wikidotBig/ccckmit/files/ga_serviceexample/MediaService1.zip&quot;&gt;MediaService1.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 01 Dec 2010 07:29:33 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>專案下載：<a href="http://dl.dropbox.com/u/13828995/wikidotBig/ccckmit/files/ga_serviceexample/MediaService1.zip">MediaService1.zip</a></p> <h1><span>執行畫面</span></h1> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:serviceexample/MediaService1Run.png"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:serviceexample/MediaService1Run.png/medium.jpg" alt="MediaService1Run.png" class="image" /></a></div> <h1><span>程式：MediaController.java</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">package</span><span class="hl-code"> </span><span class="hl-identifier">ccc</span><span class="hl-code">.</span><span class="hl-identifier">android</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">app</span><span class="hl-code">.</span><span class="hl-identifier">Activity</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">content</span><span class="hl-code">.</span><span class="hl-identifier">Intent</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">os</span><span class="hl-code">.</span><span class="hl-identifier">Bundle</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">util</span><span class="hl-code">.</span><span class="hl-identifier">Log</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">View</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">View</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">widget</span><span class="hl-code">.</span><span class="hl-identifier">Button</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">MediaController</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Activity</span><span class="hl-code"> </span><span class="hl-reserved">implements</span><span class="hl-code"> </span><span class="hl-identifier">OnClickListener</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">private</span><span class="hl-code"> </span><span class="hl-types">static</span><span class="hl-code"> </span><span class="hl-types">final</span><span class="hl-code"> </span><span class="hl-identifier">String</span><span class="hl-code"> </span><span class="hl-identifier">TAG</span><span class="hl-code"> = </span><span class="hl-quotes">&quot;</span><span class="hl-string">MediaControl</span><span class="hl-quotes">&quot;</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonStart</span><span class="hl-code">, </span><span class="hl-identifier">buttonStop</span><span class="hl-code">; </span><span class="hl-comment">/** Called when the activity is first created. */</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">Bundle</span><span class="hl-code"> </span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">setContentView</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">layout</span><span class="hl-code">.</span><span class="hl-identifier">main</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">buttonStart</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">Play</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">buttonStop</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">Stop</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">buttonStart</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">buttonStop</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">src</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">switch</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-identifier">src</span><span class="hl-code">.</span><span class="hl-identifier">getId</span><span class="hl-brackets">())</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">case</span><span class="hl-code"> </span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">Play</span><span class="hl-code">: </span><span class="hl-identifier">Log</span><span class="hl-code">.</span><span class="hl-identifier">d</span><span class="hl-brackets">(</span><span class="hl-identifier">TAG</span><span class="hl-code">, </span><span class="hl-quotes">&quot;</span><span class="hl-string">onClick: starting srvice</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startService</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">MusicService</span><span class="hl-code">.</span><span class="hl-reserved">class</span><span class="hl-brackets">))</span><span class="hl-code">; </span><span class="hl-comment">// startService(new Intent(&quot;ccc.android.MUSIC&quot;));</span><span class="hl-code"> </span><span class="hl-reserved">break</span><span class="hl-code">; </span><span class="hl-reserved">case</span><span class="hl-code"> </span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">Stop</span><span class="hl-code">: </span><span class="hl-identifier">Log</span><span class="hl-code">.</span><span class="hl-identifier">d</span><span class="hl-brackets">(</span><span class="hl-identifier">TAG</span><span class="hl-code">, </span><span class="hl-quotes">&quot;</span><span class="hl-string">onClick: stopping srvice</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">stopService</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">MusicService</span><span class="hl-code">.</span><span class="hl-reserved">class</span><span class="hl-brackets">))</span><span class="hl-code">; </span><span class="hl-comment">// stopService(new Intent(&quot;ccc.android.MUSIC&quot;)); </span><span class="hl-code"> </span><span class="hl-reserved">break</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span></pre></div> </div> <h1><span>程式：MusicService.java</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">package</span><span class="hl-code"> </span><span class="hl-identifier">ccc</span><span class="hl-code">.</span><span class="hl-identifier">android</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">app</span><span class="hl-code">.</span><span class="hl-identifier">Service</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">content</span><span class="hl-code">.</span><span class="hl-identifier">Intent</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">media</span><span class="hl-code">.</span><span class="hl-identifier">MediaPlayer</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">os</span><span class="hl-code">.</span><span class="hl-identifier">IBinder</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">MusicService</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Service</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">private</span><span class="hl-code"> </span><span class="hl-types">static</span><span class="hl-code"> </span><span class="hl-types">final</span><span class="hl-code"> </span><span class="hl-identifier">String</span><span class="hl-code"> </span><span class="hl-identifier">TAG</span><span class="hl-code"> = </span><span class="hl-quotes">&quot;</span><span class="hl-string">MusicService</span><span class="hl-quotes">&quot;</span><span class="hl-code">; </span><span class="hl-identifier">MediaPlayer</span><span class="hl-code"> </span><span class="hl-identifier">player</span><span class="hl-code">; @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-identifier">IBinder</span><span class="hl-code"> </span><span class="hl-identifier">onBind</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">arg0</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-comment">// TODO Auto-generated method stub</span><span class="hl-code"> </span><span class="hl-reserved">return</span><span class="hl-code"> </span><span class="hl-reserved">null</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">player</span><span class="hl-code"> = </span><span class="hl-identifier">MediaPlayer</span><span class="hl-code">.</span><span class="hl-identifier">create</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">raw</span><span class="hl-code">.</span><span class="hl-identifier">test</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">player</span><span class="hl-code">.</span><span class="hl-identifier">setLooping</span><span class="hl-brackets">(</span><span class="hl-reserved">false</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-comment">// Set looping</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onStart</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">intent</span><span class="hl-code">, </span><span class="hl-types">int</span><span class="hl-code"> </span><span class="hl-identifier">startId</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onStart</span><span class="hl-brackets">(</span><span class="hl-identifier">intent</span><span class="hl-code">, </span><span class="hl-identifier">startId</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">player</span><span class="hl-code">.</span><span class="hl-identifier">start</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onDestroy</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onDestroy</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">player</span><span class="hl-code">.</span><span class="hl-identifier">stop</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span></pre></div> </div> <h1><span>檔案：res/layout/main.xml</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">LinearLayout</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:orientation</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/Play</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">開始播放</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/Stop</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">停止播放</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">TextView</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@string/hello</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">LinearLayout</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>檔案：res/AndroidManifest.xml</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">manifest</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">package</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">ccc.android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:versionCode</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:versionName</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">application</span><span class="hl-code"> </span><span class="hl-var">android:icon</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@drawable/icon</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:label</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@string/app_name</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">activity</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">.MediaController</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:label</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@string/app_name</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:debuggable</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">true</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">intent-filter</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">action</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">android.intent.action.MAIN</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">category</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">android.intent.category.LAUNCHER</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">intent-filter</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">activity</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">service</span><span class="hl-code"> </span><span class="hl-var">android:enabled</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">true</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">.MusicService</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">intent-filter</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">action</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">ccc.android.MUSIC</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">category</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">android.intent.category.default</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">intent-filter</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">service</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">application</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">uses-sdk</span><span class="hl-code"> </span><span class="hl-var">android:minSdkVersion</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">4</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">manifest</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>參考文獻</span></h1> <ol> <li>ServicesDemo - Using Android Services &#8212; <a href="http://marakana.com/forums/android/examples/60.html">http://marakana.com/forums/android/examples/60.html</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:ref</guid>
				<title>Android 參考文獻</title>
				<link>http://ccckmit.wikidot.com/ga:ref</link>
				<description>

&lt;ol&gt;
&lt;li&gt;App Inventor for Android
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.appinventorbeta.com/about/&quot;&gt;http://www.appinventorbeta.com/about/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Android 教學 | 孫傳雄談科技 (有整本的教學手冊)
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://blog.chinatimes.com/tomsun/archive/2010/11/09/560824.html&quot;&gt;http://blog.chinatimes.com/tomsun/archive/2010/11/09/560824.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Android 手機安裝、解除安裝APK 教學 &amp;#8212; &lt;a href=&quot;http://www.and-machine.com/viewthread.php?tid=74&quot;&gt;http://www.and-machine.com/viewthread.php?tid=74&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;昭佑.天翔: Android Emulator 變更顯示語系 &amp;#8212; &lt;a href=&quot;http://tomkuo139.blogspot.com/2009/07/android-emulator_5723.html&quot;&gt;http://tomkuo139.blogspot.com/2009/07/android-emulator_5723.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;昭佑.天翔: Android Emulator 透過 Proxy Server 上網 &amp;#8212; &lt;a href=&quot;http://tomkuo139.blogspot.com/2010/05/android-emulator-proxy-server.html&quot;&gt;http://tomkuo139.blogspot.com/2010/05/android-emulator-proxy-server.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;ZDNet新聞專區：(評) 微軟告摩托羅拉 不會影響Google、Android或Linux, Paula Rooney, 2010/10/05&amp;#160;09:41:01 &amp;#8212; &lt;a href=&quot;http://www.zdnet.com.tw/news/comm/0,2000085675,20147783,00.htm&quot;&gt;http://www.zdnet.com.tw/news/comm/0,2000085675,20147783,00.htm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;[開發] 在開始撰寫Android Application 之前 &amp;#8212; &lt;a href=&quot;http://android.cool3c.com/article/3886&quot;&gt;http://android.cool3c.com/article/3886&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;ysl 的程式天堂 - Android 應用開發‧研究‧與諮詢 &amp;#8212; &lt;a href=&quot;http://ysl-paradise.blogspot.com/&quot;&gt;http://ysl-paradise.blogspot.com/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android 程式開發相關連結 &amp;#8212; &lt;a href=&quot;http://ysl-paradise.blogspot.com/2008/06/android.html&quot;&gt;http://ysl-paradise.blogspot.com/2008/06/android.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android 使用者論壇網站 &amp;#8212; &lt;a href=&quot;http://ysl-paradise.blogspot.com/2008/11/androud.html&quot;&gt;http://ysl-paradise.blogspot.com/2008/11/androud.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android Shareware, Freeware 網站 &amp;#8212; Android Shareware, Freeware 網站&lt;/li&gt;
&lt;li&gt;Stackoverflow:Android &amp;#8212; &lt;a href=&quot;http://stackoverflow.com/questions/tagged/android&quot;&gt;http://stackoverflow.com/questions/tagged/android&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 06 Oct 2010 02:34:34 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <ol> <li>App Inventor for Android <ul> <li><a href="http://www.appinventorbeta.com/about/">http://www.appinventorbeta.com/about/</a></li> </ul> </li> <li>Android 教學 | 孫傳雄談科技 (有整本的教學手冊) <ul> <li><a href="http://blog.chinatimes.com/tomsun/archive/2010/11/09/560824.html">http://blog.chinatimes.com/tomsun/archive/2010/11/09/560824.html</a></li> </ul> </li> <li>Android 手機安裝、解除安裝APK 教學 &#8212; <a href="http://www.and-machine.com/viewthread.php?tid=74">http://www.and-machine.com/viewthread.php?tid=74</a></li> <li>昭佑.天翔: Android Emulator 變更顯示語系 &#8212; <a href="http://tomkuo139.blogspot.com/2009/07/android-emulator_5723.html">http://tomkuo139.blogspot.com/2009/07/android-emulator_5723.html</a></li> <li>昭佑.天翔: Android Emulator 透過 Proxy Server 上網 &#8212; <a href="http://tomkuo139.blogspot.com/2010/05/android-emulator-proxy-server.html">http://tomkuo139.blogspot.com/2010/05/android-emulator-proxy-server.html</a></li> <li>ZDNet新聞專區：(評) 微軟告摩托羅拉 不會影響Google、Android或Linux, Paula Rooney, 2010/10/05&#160;09:41:01 &#8212; <a href="http://www.zdnet.com.tw/news/comm/0,2000085675,20147783,00.htm">http://www.zdnet.com.tw/news/comm/0,2000085675,20147783,00.htm</a></li> <li>[開發] 在開始撰寫Android Application 之前 &#8212; <a href="http://android.cool3c.com/article/3886">http://android.cool3c.com/article/3886</a></li> <li>ysl 的程式天堂 - Android 應用開發‧研究‧與諮詢 &#8212; <a href="http://ysl-paradise.blogspot.com/">http://ysl-paradise.blogspot.com/</a></li> <li>Android 程式開發相關連結 &#8212; <a href="http://ysl-paradise.blogspot.com/2008/06/android.html">http://ysl-paradise.blogspot.com/2008/06/android.html</a></li> <li>Android 使用者論壇網站 &#8212; <a href="http://ysl-paradise.blogspot.com/2008/11/androud.html">http://ysl-paradise.blogspot.com/2008/11/androud.html</a></li> <li>Android Shareware, Freeware 網站 &#8212; Android Shareware, Freeware 網站</li> <li>Stackoverflow:Android &#8212; <a href="http://stackoverflow.com/questions/tagged/android">http://stackoverflow.com/questions/tagged/android</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:file</guid>
				<title>Android 中的檔案管理</title>
				<link>http://ccckmit.wikidot.com/ga:file</link>
				<description>

&lt;p&gt;專案下載：&lt;a href=&quot;http://ccckmit.wdfiles.com/local--files/ga:file/FileManager.zip&quot;&gt;FileManager.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Thu, 22 Dec 2011 00:28:05 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>專案下載：<a href="http://ccckmit.wdfiles.com/local--files/ga:file/FileManager.zip">FileManager.zip</a></p> <h1><span>執行畫面</span></h1> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:file/AndroidFileManagerRun.jpg"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:file/AndroidFileManagerRun.jpg/medium.jpg" alt="AndroidFileManagerRun.jpg" class="image" /></a></div> <h1><span>程式：FileManagerActivity.java</span></h1> <div class="code"> <pre><code>package ccc.android; import java.io.File; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.app.ListActivity; import android.content.Context; import android.os.Bundle; import android.view.View; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; public class FileManagerActivity extends ListActivity { List&lt;String&gt; fileNames = new ArrayList&lt;String&gt;(); List&lt;String&gt; filePaths = null; TextView errorText; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); errorText = (TextView) findViewById(R.id.errorMsg); showDir(&quot;/&quot;); } private void showDir(String pPath) { fileNames = new ArrayList&lt;String&gt;(); filePaths = new ArrayList&lt;String&gt;(); File dir = new File(pPath); String parent = dir.getParent(); if (parent != null) { fileNames.add(&quot;上層：&quot;+parent); filePaths.add(parent); } else { fileNames.add(&quot;上層：無&quot;); filePaths.add(pPath); } fileNames.add(&quot;目前：&quot;+pPath); filePaths.add(pPath); File[] files = dir.listFiles(); for (int i=0; i&lt;files.length; i++) { File file = files[i]; fileNames.add(file.getName()); filePaths.add(file.getPath()); } ArrayAdapter&lt;String&gt; fileAdapter = new ArrayAdapter&lt;String&gt;(this, R.layout.filerowlayout, fileNames); setListAdapter(fileAdapter); } @Override protected void onListItemClick(ListView l, View v, int position, long id) { errorText.setText(&quot;錯誤：無！&quot;); String choosePath = filePaths.get(position); File file = new File(choosePath); if (file.canRead()) { if (file.isDirectory()) { showDir(choosePath); } else { errorText.setText(&quot;錯誤：&quot;+choosePath+&quot;是檔案，不能點進去！&quot;); } } else { errorText.setText(&quot;錯誤：權限不足，不能點進去！&quot;); } } }</code></pre></div> <h1><span>Layout 檔案：main.xml</span></h1> <p>請注意：ListView 的 id=&quot;@android:id/list&quot; 是固定的，不能改，否則 ListViewActivity 會找不到而發生當掉的情況。</p> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">LinearLayout</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:orientation</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">TextView</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code"> = </span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/errorMsg</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">20px</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">錯誤：無！</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">ListView</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@android:id/list</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">match_parent</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">ListView</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">LinearLayout</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>Layout 檔案：filerowlayout.xml</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">TextView</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code"> = </span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/textViewFileRow</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">20px</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">TextView</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>參考文獻</span></h1> <ol> <li>2009年6月2日星期二, ListView跟ListActivity小考究 <ul> <li><a href="http://hatsukiakio.blogspot.com/2009/06/lustviewlistactivity.html">http://hatsukiakio.blogspot.com/2009/06/lustviewlistactivity.html</a></li> </ul> </li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:device</guid>
				<title>Android 中的裝置管理</title>
				<link>http://ccckmit.wikidot.com/ga:device</link>
				<description>

&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:file&quot;&gt;檔案管理&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Thu, 22 Dec 2011 00:26:51 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <ol> <li><a href="http://ccckmit.wikidot.com/ga:file">檔案管理</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:tools</guid>
				<title>Android 手機的開發環境</title>
				<link>http://ccckmit.wikidot.com/ga:tools</link>
				<description>

&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:environment&quot;&gt;開發環境&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:use&quot;&gt;手機使用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:emulator&quot;&gt;模擬器使用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:phoneinstall&quot;&gt;將程式上傳到手機上&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:uninstall&quot;&gt;移除已安裝的軟體&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;&lt;span&gt;參考文獻&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;Android Developer:Tools Overview &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/index.html&quot;&gt;http://developer.android.com/guide/developing/tools/index.html&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;AAPT (Android Asset Packaging Tool) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/aapt.html&quot;&gt;http://developer.android.com/guide/developing/tools/aapt.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;ADB (Android Debug Bridge) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/adb.html&quot;&gt;http://developer.android.com/guide/developing/tools/adb.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.android.com/guide/developing/tools/othertools.html#android&quot;&gt;http://developer.android.com/guide/developing/tools/othertools.html#android&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;AIDL (Android Interface Definition Language) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/aidl.html&quot;&gt;http://developer.android.com/guide/developing/tools/aidl.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;AVD (Android Virtual Devices) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/avd.html&quot;&gt;http://developer.android.com/guide/developing/tools/avd.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;bmgr (Backup Manager) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/bmgr.html&quot;&gt;http://developer.android.com/guide/developing/tools/bmgr.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;ddms (Dalvik Debug Monitor) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/ddms.html&quot;&gt;http://developer.android.com/guide/developing/tools/ddms.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;dx (將 .class 轉為 .dex) : &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/othertools.html#dx&quot;&gt;http://developer.android.com/guide/developing/tools/othertools.html#dx&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Draw 9-patch &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/draw9patch.html&quot;&gt;http://developer.android.com/guide/developing/tools/draw9patch.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Emulator &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/emulator.html&quot;&gt;http://developer.android.com/guide/developing/tools/emulator.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;hierarchy-viewer &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/hierarchy-viewer.html&quot;&gt;http://developer.android.com/guide/developing/tools/hierarchy-viewer.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;layoutopt (optimize the layouts) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/layoutopt.html&quot;&gt;http://developer.android.com/guide/developing/tools/layoutopt.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;mksdcard (建立記憶卡) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/othertools.html#mksdcard&quot;&gt;http://developer.android.com/guide/developing/tools/othertools.html#mksdcard&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Monkey (測試事件產生器) &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/monkey.html&quot;&gt;http://developer.android.com/guide/developing/tools/monkey.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;SQLite3 資料庫 &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/adb.html#sqlite&quot;&gt;http://developer.android.com/guide/developing/tools/adb.html#sqlite&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;TraceView &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/traceview.html&quot;&gt;http://developer.android.com/guide/developing/tools/traceview.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;zipalign &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/developing/tools/zipalign.html&quot;&gt;http://developer.android.com/guide/developing/tools/zipalign.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 13 Oct 2010 07:30:09 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <ol> <li><a href="http://ccckmit.wikidot.com/ga:environment">開發環境</a></li> <li><a href="http://ccckmit.wikidot.com/ga:use">手機使用</a></li> <li><a href="http://ccckmit.wikidot.com/ga:emulator">模擬器使用</a></li> <li><a href="http://ccckmit.wikidot.com/ga:phoneinstall">將程式上傳到手機上</a></li> <li><a href="http://ccckmit.wikidot.com/ga:uninstall">移除已安裝的軟體</a></li> </ol> <h1><span>參考文獻</span></h1> <ol> <li>Android Developer:Tools Overview &#8212; <a href="http://developer.android.com/guide/developing/tools/index.html">http://developer.android.com/guide/developing/tools/index.html</a> <ul> <li>AAPT (Android Asset Packaging Tool) &#8212; <a href="http://developer.android.com/guide/developing/tools/aapt.html">http://developer.android.com/guide/developing/tools/aapt.html</a></li> <li>ADB (Android Debug Bridge) &#8212; <a href="http://developer.android.com/guide/developing/tools/adb.html">http://developer.android.com/guide/developing/tools/adb.html</a></li> <li><a href="http://developer.android.com/guide/developing/tools/othertools.html#android">http://developer.android.com/guide/developing/tools/othertools.html#android</a></li> <li>AIDL (Android Interface Definition Language) &#8212; <a href="http://developer.android.com/guide/developing/tools/aidl.html">http://developer.android.com/guide/developing/tools/aidl.html</a></li> <li>AVD (Android Virtual Devices) &#8212; <a href="http://developer.android.com/guide/developing/tools/avd.html">http://developer.android.com/guide/developing/tools/avd.html</a></li> <li>bmgr (Backup Manager) &#8212; <a href="http://developer.android.com/guide/developing/tools/bmgr.html">http://developer.android.com/guide/developing/tools/bmgr.html</a></li> <li>ddms (Dalvik Debug Monitor) &#8212; <a href="http://developer.android.com/guide/developing/tools/ddms.html">http://developer.android.com/guide/developing/tools/ddms.html</a></li> <li>dx (將 .class 轉為 .dex) : &#8212; <a href="http://developer.android.com/guide/developing/tools/othertools.html#dx">http://developer.android.com/guide/developing/tools/othertools.html#dx</a></li> <li>Draw 9-patch &#8212; <a href="http://developer.android.com/guide/developing/tools/draw9patch.html">http://developer.android.com/guide/developing/tools/draw9patch.html</a></li> <li>Emulator &#8212; <a href="http://developer.android.com/guide/developing/tools/emulator.html">http://developer.android.com/guide/developing/tools/emulator.html</a></li> <li>hierarchy-viewer &#8212; <a href="http://developer.android.com/guide/developing/tools/hierarchy-viewer.html">http://developer.android.com/guide/developing/tools/hierarchy-viewer.html</a></li> <li>layoutopt (optimize the layouts) &#8212; <a href="http://developer.android.com/guide/developing/tools/layoutopt.html">http://developer.android.com/guide/developing/tools/layoutopt.html</a></li> <li>mksdcard (建立記憶卡) &#8212; <a href="http://developer.android.com/guide/developing/tools/othertools.html#mksdcard">http://developer.android.com/guide/developing/tools/othertools.html#mksdcard</a></li> <li>Monkey (測試事件產生器) &#8212; <a href="http://developer.android.com/guide/developing/tools/monkey.html">http://developer.android.com/guide/developing/tools/monkey.html</a></li> <li>SQLite3 資料庫 &#8212; <a href="http://developer.android.com/guide/developing/tools/adb.html#sqlite">http://developer.android.com/guide/developing/tools/adb.html#sqlite</a></li> <li>TraceView &#8212; <a href="http://developer.android.com/guide/developing/tools/traceview.html">http://developer.android.com/guide/developing/tools/traceview.html</a></li> <li>zipalign &#8212; <a href="http://developer.android.com/guide/developing/tools/zipalign.html">http://developer.android.com/guide/developing/tools/zipalign.html</a></li> </ul> </li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:phoneinstall</guid>
				<title>Android 程式設計 -- 將程式上傳到手機上</title>
				<link>http://ccckmit.wikidot.com/ga:phoneinstall</link>
				<description>

&lt;p&gt;專案下載：&lt;a href=&quot;http://ccckmit.wdfiles.com/local--files/ga:phoneinstall/DeviceTest.zip&quot;&gt;DeviceTest.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Mon, 25 Oct 2010 06:56:16 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>專案下載：<a href="http://ccckmit.wdfiles.com/local--files/ga:phoneinstall/DeviceTest.zip">DeviceTest.zip</a></p> <p>1. 在 Eclipse 專案的 AndroidManifest.xml 當中加入 android:debuggable=&quot;true&quot; 這個欄位。</p> <div class="code"> <pre><code>&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt; &lt;manifest xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; package=&quot;ccc.test&quot; android:versionCode=&quot;1&quot; android:versionName=&quot;1.0&quot;&gt; &lt;application android:icon=&quot;@drawable/icon&quot; android:label=&quot;@string/app_name&quot;&gt; &lt;activity android:name=&quot;.DeviceTest&quot; android:label=&quot;@string/app_name&quot; android:debuggable=&quot;true&quot;&gt; &lt;intent-filter&gt; &lt;action android:name=&quot;android.intent.action.MAIN&quot; /&gt; &lt;category android:name=&quot;android.intent.category.LAUNCHER&quot; /&gt; &lt;/intent-filter&gt; &lt;/activity&gt; &lt;/application&gt; &lt;uses-sdk android:minSdkVersion=&quot;3&quot; /&gt; &lt;/manifest&gt;</code></pre></div> <p>2. 將手機家畫面 (Home) 的 Menu-&gt; Setting -&gt; Applications &gt; Development 中的 USB debugging 打勾。如果手機是中文介面，請選 「Menu-&gt;設定-&gt;應用程式-&gt;開發」然後將 USB 除錯中的選項打勾。</p> <p>3. 確定您已安裝 Android 的 USB Driver for windows，方法是在 Eclipse 中點選機器人圖示 (Android SDK and AVD Manager)，然後檢視 Installed Package，看看 Usb Driver Package 是否已經在其中了。</p> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:phoneinstall/UsbDriverPackage.png"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:phoneinstall/UsbDriverPackage.png/medium.jpg" alt="UsbDriverPackage.png" class="image" /></a></div> <ul> <li>若有問題請參考 &#8212; <a href="http://developer.android.com/sdk/win-usb.html">http://developer.android.com/sdk/win-usb.html</a></li> </ul> <p>4. 在 Eclipse 當中選擇 Run As/Android Application 時，會出現可選擇的畫面，讓您選擇是否要在真實手機上執行。</p> <div class="image-container aligncenter"><img src="http://ccckmit.wdfiles.com/local--files/ga:phoneinstall/DeviceRun1.png" alt="DeviceRun1.png" class="image" /></div> <h1><span>問題與解決</span></h1> <p>問題一：如果您的手機是 HTC 的手機，必須先在電腦上安裝 HTC sync 這個軟體，然後在 USB 連線時點選 HTC sync 選項，這樣才能讓 Eclipse 偵測到這個手機。</p> <p>問題二：您可以使用 adb device 這個指令，偵測看看目前連線得到的裝置有哪些，以下是筆者的執行結果。其中第一次執行時手機沒有連上，因此只有 emulator-5554，但是第二次執行時已經連上了，因此就有了 HT05LLG00411 這個裝置，該裝置就是筆者的 HTC tattoo 手機。</p> <div class="code"> <pre><code>C:\Documents and Settings\ccc&gt;adb devices List of devices attached emulator-5554 device C:\Documents and Settings\ccc&gt;adb devices List of devices attached emulator-5554 device HT05LLG00411 device</code></pre></div> <ol> <li>請注意</li> </ol> <h1><span>參考文獻</span></h1> <ol> <li><a href="http://developer.android.com/guide/developing/device.html">http://developer.android.com/guide/developing/device.html</a></li> <li>USB Driver for Windows &#8212; <a href="http://developer.android.com/sdk/win-usb.html">http://developer.android.com/sdk/win-usb.html</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:sensor</guid>
				<title>Android 中的移動感知功能</title>
				<link>http://ccckmit.wikidot.com/ga:sensor</link>
				<description>

&lt;p&gt;專案下載：&lt;a href=&quot;http://ccckmit.wdfiles.com/local--files/ga:sensor/Sensor1.zip&quot;&gt;Sensor1.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Sat, 04 Dec 2010 03:23:39 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>專案下載：<a href="http://ccckmit.wdfiles.com/local--files/ga:sensor/Sensor1.zip">Sensor1.zip</a></p> <h1><span>執行結果</span></h1> <p>本範例必須在手機上執行，每 0.5 秒會顯示一次 (TYPE_ACCELEROMETER) ax, ay, ax 與 (TYPE_ORIENTATION) ox, oy, oz。在模擬器上由於沒有移動感知器，因此會顯示下列圖形。</p> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:sensor/Sensor1Run.png"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:sensor/Sensor1Run.png/medium.jpg" alt="Sensor1Run.png" class="image" /></a></div> <p>其中的 ox, oy, oz 的意義如下</p> <blockquote> <p>the values have to be recalculated to become a correct 3d position: values[0]: Azimuth, angle between the magnetic north direction and the Y axis, around the Z axis (0 to 359). 0=North, 90=East, 180=South, 270=West</p> </blockquote> <p>values[1]: Pitch, rotation around X axis (-180 to 180), with positive values when the z-axis moves toward the y-axis.<br /> values[2]: Roll, rotation around Y axis (-90 to 90), with positive values when the x-axis moves away from the z-axis</p> <h1><span>程式範例：Sensor1.java</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">package</span><span class="hl-code"> </span><span class="hl-identifier">ccc</span><span class="hl-code">.</span><span class="hl-identifier">android</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">java</span><span class="hl-code">.</span><span class="hl-identifier">util</span><span class="hl-code">.</span><span class="hl-identifier">Date</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">app</span><span class="hl-code">.</span><span class="hl-identifier">Activity</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">content</span><span class="hl-code">.</span><span class="hl-identifier">Context</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">graphics</span><span class="hl-code">.</span><span class="hl-identifier">Canvas</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">graphics</span><span class="hl-code">.</span><span class="hl-identifier">Color</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">graphics</span><span class="hl-code">.</span><span class="hl-identifier">Paint</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">hardware</span><span class="hl-code">.</span><span class="hl-identifier">Sensor</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">hardware</span><span class="hl-code">.</span><span class="hl-identifier">SensorEvent</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">hardware</span><span class="hl-code">.</span><span class="hl-identifier">SensorEventListener</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">hardware</span><span class="hl-code">.</span><span class="hl-identifier">SensorManager</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">os</span><span class="hl-code">.</span><span class="hl-identifier">Bundle</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">View</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">Sensor1</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Activity</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">SensorObj</span><span class="hl-code"> </span><span class="hl-identifier">mSensor</span><span class="hl-code"> = </span><span class="hl-reserved">null</span><span class="hl-code">; </span><span class="hl-identifier">Panel</span><span class="hl-code"> </span><span class="hl-identifier">mPanel</span><span class="hl-code"> = </span><span class="hl-reserved">null</span><span class="hl-code">; @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">Bundle</span><span class="hl-code"> </span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">mSensor</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">SensorObj</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-types">long</span><span class="hl-code"> </span><span class="hl-identifier">time</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Date</span><span class="hl-brackets">()</span><span class="hl-code">.</span><span class="hl-identifier">getTime</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onSensorChanged</span><span class="hl-brackets">(</span><span class="hl-identifier">SensorEvent</span><span class="hl-code"> </span><span class="hl-identifier">event</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-types">long</span><span class="hl-code"> </span><span class="hl-identifier">now</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Date</span><span class="hl-brackets">()</span><span class="hl-code">.</span><span class="hl-identifier">getTime</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-reserved">if</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-identifier">now</span><span class="hl-code"> - </span><span class="hl-identifier">time</span><span class="hl-code"> &gt; </span><span class="hl-number">500</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-reserved">synchronized</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">setData</span><span class="hl-brackets">(</span><span class="hl-identifier">event</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">mPanel</span><span class="hl-code">.</span><span class="hl-identifier">invalidate</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">time</span><span class="hl-code"> = </span><span class="hl-identifier">now</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code">; </span><span class="hl-identifier">mPanel</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Panel</span><span class="hl-brackets">(</span><span class="hl-identifier">Sensor1</span><span class="hl-code">.</span><span class="hl-reserved">this</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">setContentView</span><span class="hl-brackets">(</span><span class="hl-identifier">mPanel</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">protected</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onResume</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onResume</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">mSensor</span><span class="hl-code">.</span><span class="hl-identifier">register</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">protected</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onStop</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onStop</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">mSensor</span><span class="hl-code">.</span><span class="hl-identifier">unregister</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">Panel</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-identifier">Panel</span><span class="hl-brackets">(</span><span class="hl-identifier">Context</span><span class="hl-code"> </span><span class="hl-identifier">context</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-brackets">(</span><span class="hl-identifier">context</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onDraw</span><span class="hl-brackets">(</span><span class="hl-identifier">Canvas</span><span class="hl-code"> </span><span class="hl-identifier">canvas</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Paint</span><span class="hl-code"> </span><span class="hl-identifier">paint</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Paint</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">paint</span><span class="hl-code">.</span><span class="hl-identifier">setColor</span><span class="hl-brackets">(</span><span class="hl-identifier">Color</span><span class="hl-code">.</span><span class="hl-identifier">WHITE</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">SensorObj</span><span class="hl-code"> </span><span class="hl-identifier">s</span><span class="hl-code"> = </span><span class="hl-identifier">Sensor1</span><span class="hl-code">.</span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">mSensor</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawText</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">ax:</span><span class="hl-quotes">&quot;</span><span class="hl-code">+</span><span class="hl-identifier">s</span><span class="hl-code">.</span><span class="hl-identifier">ax</span><span class="hl-code">, </span><span class="hl-number">1</span><span class="hl-code">, </span><span class="hl-number">20</span><span class="hl-code">, </span><span class="hl-identifier">paint</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawText</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">ay:</span><span class="hl-quotes">&quot;</span><span class="hl-code">+</span><span class="hl-identifier">s</span><span class="hl-code">.</span><span class="hl-identifier">ay</span><span class="hl-code">, </span><span class="hl-number">1</span><span class="hl-code">, </span><span class="hl-number">40</span><span class="hl-code">, </span><span class="hl-identifier">paint</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawText</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">az:</span><span class="hl-quotes">&quot;</span><span class="hl-code">+</span><span class="hl-identifier">s</span><span class="hl-code">.</span><span class="hl-identifier">az</span><span class="hl-code">, </span><span class="hl-number">1</span><span class="hl-code">, </span><span class="hl-number">60</span><span class="hl-code">, </span><span class="hl-identifier">paint</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawText</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">ox:</span><span class="hl-quotes">&quot;</span><span class="hl-code">+</span><span class="hl-identifier">s</span><span class="hl-code">.</span><span class="hl-identifier">ox</span><span class="hl-code">, </span><span class="hl-number">1</span><span class="hl-code">, </span><span class="hl-number">80</span><span class="hl-code">, </span><span class="hl-identifier">paint</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawText</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">oy:</span><span class="hl-quotes">&quot;</span><span class="hl-code">+</span><span class="hl-identifier">s</span><span class="hl-code">.</span><span class="hl-identifier">oy</span><span class="hl-code">, </span><span class="hl-number">1</span><span class="hl-code">, </span><span class="hl-number">100</span><span class="hl-code">, </span><span class="hl-identifier">paint</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">canvas</span><span class="hl-code">.</span><span class="hl-identifier">drawText</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">oz:</span><span class="hl-quotes">&quot;</span><span class="hl-code">+</span><span class="hl-identifier">s</span><span class="hl-code">.</span><span class="hl-identifier">oz</span><span class="hl-code">, </span><span class="hl-number">1</span><span class="hl-code">, </span><span class="hl-number">120</span><span class="hl-code">, </span><span class="hl-identifier">paint</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">SensorObj</span><span class="hl-code"> </span><span class="hl-reserved">implements</span><span class="hl-code"> </span><span class="hl-identifier">SensorEventListener</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">SensorManager</span><span class="hl-code"> </span><span class="hl-identifier">sensorManager</span><span class="hl-code"> = </span><span class="hl-reserved">null</span><span class="hl-code">; </span><span class="hl-types">float</span><span class="hl-code"> </span><span class="hl-identifier">ax</span><span class="hl-code">, </span><span class="hl-identifier">ay</span><span class="hl-code">, </span><span class="hl-identifier">az</span><span class="hl-code">; </span><span class="hl-types">float</span><span class="hl-code"> </span><span class="hl-identifier">ox</span><span class="hl-code">, </span><span class="hl-identifier">oy</span><span class="hl-code">, </span><span class="hl-identifier">oz</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-identifier">SensorObj</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">sensorManager</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">SensorManager</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">getSystemService</span><span class="hl-brackets">(</span><span class="hl-identifier">SENSOR_SERVICE</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">setData</span><span class="hl-brackets">(</span><span class="hl-identifier">SensorEvent</span><span class="hl-code"> </span><span class="hl-identifier">event</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">switch</span><span class="hl-code"> </span><span class="hl-brackets">(</span><span class="hl-identifier">event</span><span class="hl-code">.</span><span class="hl-identifier">sensor</span><span class="hl-code">.</span><span class="hl-identifier">getType</span><span class="hl-brackets">())</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">case</span><span class="hl-code"> </span><span class="hl-identifier">Sensor</span><span class="hl-code">.</span><span class="hl-identifier">TYPE_ACCELEROMETER</span><span class="hl-code">: </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">ax</span><span class="hl-code"> = </span><span class="hl-identifier">event</span><span class="hl-code">.</span><span class="hl-identifier">values</span><span class="hl-brackets">[</span><span class="hl-number">0</span><span class="hl-brackets">]</span><span class="hl-code">; </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">ay</span><span class="hl-code"> = </span><span class="hl-identifier">event</span><span class="hl-code">.</span><span class="hl-identifier">values</span><span class="hl-brackets">[</span><span class="hl-number">1</span><span class="hl-brackets">]</span><span class="hl-code">; </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">az</span><span class="hl-code"> = </span><span class="hl-identifier">event</span><span class="hl-code">.</span><span class="hl-identifier">values</span><span class="hl-brackets">[</span><span class="hl-number">2</span><span class="hl-brackets">]</span><span class="hl-code">; </span><span class="hl-reserved">break</span><span class="hl-code">; </span><span class="hl-reserved">case</span><span class="hl-code"> </span><span class="hl-identifier">Sensor</span><span class="hl-code">.</span><span class="hl-identifier">TYPE_ORIENTATION</span><span class="hl-code">: </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">ox</span><span class="hl-code"> = </span><span class="hl-identifier">event</span><span class="hl-code">.</span><span class="hl-identifier">values</span><span class="hl-brackets">[</span><span class="hl-number">0</span><span class="hl-brackets">]</span><span class="hl-code">; </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">oy</span><span class="hl-code"> = </span><span class="hl-identifier">event</span><span class="hl-code">.</span><span class="hl-identifier">values</span><span class="hl-brackets">[</span><span class="hl-number">1</span><span class="hl-brackets">]</span><span class="hl-code">; </span><span class="hl-reserved">this</span><span class="hl-code">.</span><span class="hl-identifier">oz</span><span class="hl-code"> = </span><span class="hl-identifier">event</span><span class="hl-code">.</span><span class="hl-identifier">values</span><span class="hl-brackets">[</span><span class="hl-number">2</span><span class="hl-brackets">]</span><span class="hl-code">; </span><span class="hl-reserved">break</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">register</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">registerListener</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">getDefaultSensor</span><span class="hl-brackets">(</span><span class="hl-identifier">Sensor</span><span class="hl-code">.</span><span class="hl-identifier">TYPE_ACCELEROMETER</span><span class="hl-brackets">)</span><span class="hl-code">, </span><span class="hl-identifier">SensorManager</span><span class="hl-code">.</span><span class="hl-identifier">SENSOR_DELAY_GAME</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">registerListener</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">getDefaultSensor</span><span class="hl-brackets">(</span><span class="hl-identifier">Sensor</span><span class="hl-code">.</span><span class="hl-identifier">TYPE_ORIENTATION</span><span class="hl-brackets">)</span><span class="hl-code">, </span><span class="hl-identifier">SensorManager</span><span class="hl-code">.</span><span class="hl-identifier">SENSOR_DELAY_GAME</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">unregister</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">unregisterListener</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">getDefaultSensor</span><span class="hl-brackets">(</span><span class="hl-identifier">Sensor</span><span class="hl-code">.</span><span class="hl-identifier">TYPE_ACCELEROMETER</span><span class="hl-brackets">))</span><span class="hl-code">; </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">unregisterListener</span><span class="hl-brackets">(</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">sensorManager</span><span class="hl-code">.</span><span class="hl-identifier">getDefaultSensor</span><span class="hl-brackets">(</span><span class="hl-identifier">Sensor</span><span class="hl-code">.</span><span class="hl-identifier">TYPE_ORIENTATION</span><span class="hl-brackets">))</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onSensorChanged</span><span class="hl-brackets">(</span><span class="hl-identifier">SensorEvent</span><span class="hl-code"> </span><span class="hl-identifier">event</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{}</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onAccuracyChanged</span><span class="hl-brackets">(</span><span class="hl-identifier">Sensor</span><span class="hl-code"> </span><span class="hl-identifier">sensor</span><span class="hl-code">, </span><span class="hl-types">int</span><span class="hl-code"> </span><span class="hl-identifier">accuracy</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{}</span><span class="hl-code"> </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span></pre></div> </div> <h1><span>參考文獻</span></h1> <ol> <li>Using an Android phone's sensors, Fri, 04/30/2010 - 06:23 | by tamas <ul> <li><a href="http://www.helloandroid.com/tutorials/using-android-phones-sensors">http://www.helloandroid.com/tutorials/using-android-phones-sensors</a></li> </ul> </li> <li>Need to calculate rotation-vector from Sensor.TYPE_ORIENTATION data <ul> <li><a href="http://stackoverflow.com/questions/2858255/need-to-calculate-rotation-vector-from-sensor-type-orientation-data">http://stackoverflow.com/questions/2858255/need-to-calculate-rotation-vector-from-sensor-type-orientation-data</a></li> </ul> </li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:screencapture</guid>
				<title>如何對 Android 手機進行螢幕截圖</title>
				<link>http://ccckmit.wikidot.com/ga:screencapture</link>
				<description>

&lt;p&gt;要對 Android 手機進行螢幕截圖必須使用 DDMS 工具，DDMS 的路徑通常在 Android SDK 的 tools 資料夾底下，舉例而言，以下是筆者現在使用的電腦的 DDMS 路徑。&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Thu, 15 Dec 2011 04:06:05 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>要對 Android 手機進行螢幕截圖必須使用 DDMS 工具，DDMS 的路徑通常在 Android SDK 的 tools 資料夾底下，舉例而言，以下是筆者現在使用的電腦的 DDMS 路徑。</p> <blockquote> <p>C:\eclipse\android-sdk\tools</p> </blockquote> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:use</guid>
				<title>Android 手機與開發工具的使用方法</title>
				<link>http://ccckmit.wikidot.com/ga:use</link>
				<description>

&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:screencapture&quot;&gt;如何對 Android 手機進行螢幕截圖&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Thu, 15 Dec 2011 04:03:20 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <ol> <li><a href="http://ccckmit.wikidot.com/ga:screencapture">如何對 Android 手機進行螢幕截圖</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:video</guid>
				<title>Android 的教學錄影</title>
				<link>http://ccckmit.wikidot.com/ga:video</link>
				<description>

&lt;h1&gt;&lt;span&gt;陳鍾誠的課堂錄影&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=VuE2FV8NFUw&quot;&gt;Android 環境測試，並建立 HelloWorld 程式&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=CmgYyjNKRnE&quot;&gt;解析 HelloAndroid 專案的結構&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=hdOPEzr7_FI&quot;&gt;Android 的介面設計：UiTest&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=hA33rgv9sHQ&quot;&gt;Android 的按鈕與對話框示範程式&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=qg_llMnL7U0&quot;&gt;如何用 Eclipse 開啟從網路上下載的專案&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=upP9nqs7qqU&quot;&gt;Android 程式設計：啟動另一個 Activity&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=Ko6C-F5sy2w&quot;&gt;Android 程式設計：啟動另一個 Activity 順便傳參數&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://youtu.be/7iG_t3p20a4&quot;&gt;如何將 Android 程式傳到手機執行 (1/2)&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://youtu.be/WARJFl-VJCM&quot;&gt;如何將 Android 程式傳到手機執行 (2/2)&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 12 Oct 2011 03:17:52 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <h1><span>陳鍾誠的課堂錄影</span></h1> <ol> <li><a href="http://www.youtube.com/watch?v=VuE2FV8NFUw">Android 環境測試，並建立 HelloWorld 程式</a></li> <li><a href="http://www.youtube.com/watch?v=CmgYyjNKRnE">解析 HelloAndroid 專案的結構</a></li> <li><a href="http://www.youtube.com/watch?v=hdOPEzr7_FI">Android 的介面設計：UiTest</a></li> <li><a href="http://www.youtube.com/watch?v=hA33rgv9sHQ">Android 的按鈕與對話框示範程式</a></li> <li><a href="http://www.youtube.com/watch?v=qg_llMnL7U0">如何用 Eclipse 開啟從網路上下載的專案</a></li> <li><a href="http://www.youtube.com/watch?v=upP9nqs7qqU">Android 程式設計：啟動另一個 Activity</a></li> <li><a href="http://www.youtube.com/watch?v=Ko6C-F5sy2w">Android 程式設計：啟動另一個 Activity 順便傳參數</a></li> <li><a href="http://youtu.be/7iG_t3p20a4">如何將 Android 程式傳到手機執行 (1/2)</a></li> <li><a href="http://youtu.be/WARJFl-VJCM">如何將 Android 程式傳到手機執行 (2/2)</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123598" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:mapviewtest</guid>
				<title>Google Map 的 MapView 物件測試</title>
				<link>http://ccckmit.wikidot.com/ga:mapviewtest</link>
				<description>

&lt;p&gt;要使用 MapView 物件，必須申請一組 Google Map API 帳號，這種申請必須先經過 Java 的金鑰機制，使用 keytool 工具產生金鑰，以下是筆者的產生過程。&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123598&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Thu, 15 Dec 2011 01:58:55 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>要使用 MapView 物件，必須申請一組 Google Map API 帳號，這種申請必須先經過 Java 的金鑰機制，使用 keytool 工具產生金鑰，以下是筆者的產生過程。</p> <div class="code"> <pre><code>C:\Program Files\Java\jdk1.7.0\bin&gt;keytool -list -alias androiddebugkey -keystor e &quot;C:\Documents and Settings\Administrator\.android\debug.keystore&quot; -storepass a ndroid -keypass android androiddebugkey, 2011/2/21, PrivateKeyEntry, 憑證指紋 (SHA1): B3:29:C8:73:75:F1:99:1A:D7:FB:5A:E0:E4:9E:2C:48:C2:D9:4C:C4</code></pre></div> <p>接著我上去 <a href="http://code.google.com/intl/zh-TW/android/maps-api-signup.html">http://code.google.com/intl/zh-TW/android/maps-api-signup.html</a> 準備開始申請金鑰時，發現該組金鑰已被申請過了，因此產生了錯誤畫面，以下是我申請失敗的過程。</p> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:mapviewtest/GoogleMapApiSignup.jpg"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:mapviewtest/GoogleMapApiSignup.jpg/medium.jpg" alt="GoogleMapApiSignup.jpg" class="image" /></a></div> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:mapviewtest/GoogleMapApiSignupFail.jpg"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:mapviewtest/GoogleMapApiSignupFail.jpg/medium.jpg" alt="GoogleMapApiSignupFail.jpg" class="image" /></a></div> <p>這個原因是我使用學校的電腦開發，但是那台電腦的 Administrator 已經有人用來申請過金鑰了，所以當我重複申請金鑰時，就會產生失敗的結果。</p> <h1><span>參考文獻</span></h1> <ol> <li>ola的家:2010年12月15日星期三/Android筆記_如何申請Google Map API Key(模擬器用) <ul> <li><a href="http://wangshifuola.blogspot.com/2010/12/androidgoogle-map-api-key.html">http://wangshifuola.blogspot.com/2010/12/androidgoogle-map-api-key.html</a></li> </ul> </li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123599" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:gps</guid>
				<title>Android 中的衛星定位與地圖功能 (GPS)</title>
				<link>http://ccckmit.wikidot.com/ga:gps</link>
				<description>

&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:mapviewtest&quot;&gt;Google Map 的 MapView 物件測試&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://gogkmit.wikidot.com&quot;&gt;Android 衛星遊戲製作&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;專題學生：方智誼、劉柏賢、吳瑋鴻、孫振宸、鄭効源&lt;/li&gt;
&lt;li&gt;指導教授：陳鍾誠&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;&lt;span&gt;參考文獻&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;Using Google Maps in Android, POSTED BY WEIMENGLEE &amp;#8212; &lt;a href=&quot;http://mobiforge.com/developing/story/using-google-maps-android&quot;&gt;http://mobiforge.com/developing/story/using-google-maps-android&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android Developer:Location and Maps &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/topics/location/index.html&quot;&gt;http://developer.android.com/guide/topics/location/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Android Developer:Obtaining User Location &amp;#8212; &lt;a href=&quot;http://developer.android.com/guide/topics/location/obtaining-user-location.html&quot;&gt;http://developer.android.com/guide/topics/location/obtaining-user-location.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;讓小精靈冒險！ Android 新遊戲《PacMap》 &amp;#8212; &lt;a href=&quot;http://news.chinatimes.com/tech/171710/172011010800534.html&quot;&gt;http://news.chinatimes.com/tech/171710/172011010800534.html&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123599&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 20 Oct 2010 00:58:53 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <ol> <li><a href="http://ccckmit.wikidot.com/ga:mapviewtest">Google Map 的 MapView 物件測試</a></li> <li><a href="http://gogkmit.wikidot.com">Android 衛星遊戲製作</a> <ul> <li>專題學生：方智誼、劉柏賢、吳瑋鴻、孫振宸、鄭効源</li> <li>指導教授：陳鍾誠</li> </ul> </li> </ol> <h1><span>參考文獻</span></h1> <ol> <li>Using Google Maps in Android, POSTED BY WEIMENGLEE &#8212; <a href="http://mobiforge.com/developing/story/using-google-maps-android">http://mobiforge.com/developing/story/using-google-maps-android</a></li> <li>Android Developer:Location and Maps &#8212; <a href="http://developer.android.com/guide/topics/location/index.html">http://developer.android.com/guide/topics/location/index.html</a></li> <li>Android Developer:Obtaining User Location &#8212; <a href="http://developer.android.com/guide/topics/location/obtaining-user-location.html">http://developer.android.com/guide/topics/location/obtaining-user-location.html</a></li> <li>讓小精靈冒險！ Android 新遊戲《PacMap》 &#8212; <a href="http://news.chinatimes.com/tech/171710/172011010800534.html">http://news.chinatimes.com/tech/171710/172011010800534.html</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123599" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:qa</guid>
				<title>Android 的問題與回答</title>
				<link>http://ccckmit.wikidot.com/ga:qa</link>
				<description>

&lt;h1&gt;&lt;span&gt;問題：在執行時出現&lt;/span&gt;&lt;/h1&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123599&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 24 Nov 2010 01:01:23 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <h1><span>問題：在執行時出現</span></h1> <blockquote> <p>[2011-09-14&#160;12:32:58 - HelloTest22] Re-installation failed due to different application signatures.<br /> [2011-09-14&#160;12:32:58 - HelloTest22] You must perform a full uninstall of the application. WARNING: This will remove the application data!<br /> [2011-09-14&#160;12:32:58 - HelloTest22] Please execute 'adb uninstall ccc.test' in a shell.<br /> [2011-09-14&#160;12:32:58 - HelloTest22] Launch canceled!</p> </blockquote> <ul> <li>回答：</li> </ul> <p>參考：<br /> <a href="http://android.cool3c.com/article/6913">http://android.cool3c.com/article/6913</a><br /> <a href="http://stackoverflow.com/questions/2887436/re-installation-failed-due-to-different-application-signatures">http://stackoverflow.com/questions/2887436/re-installation-failed-due-to-different-application-signatures</a></p> <p>如果真的要加入新版的程式，必須先移除舊版的，以下是筆者的一個執行範例。</p> <p>2011-09-15&#160;08:17:49 - IntentTest] <span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><br /> [2011-09-15&#160;08:17:49 - IntentTest] Android Launch!<br /> [2011-09-15&#160;08:17:49 - IntentTest] adb is running normally.<br /> [2011-09-15&#160;08:17:49 - IntentTest] Performing ccc.test.IntentTest activity launch<br /> [2011-09-15&#160;08:17:49 - IntentTest] Automatic Target Mode: using existing emulator 'emulator-5554' running compatible AVD 'AVD1.6'<br /> [2011-09-15&#160;08:17:49 - IntentTest] Uploading IntentTest.apk onto device 'emulator-5554'<br /> [2011-09-15&#160;08:17:49 - IntentTest] Installing IntentTest.apk&#8230;<br /> [2011-09-15&#160;08:17:50 - IntentTest] Re-installation failed due to different application signatures.<br /> [2011-09-15&#160;08:17:50 - IntentTest] You must perform a full uninstall of the application. WARNING: This will remove the application data!<br /> [2011-09-15&#160;08:17:50 - IntentTest] Please execute 'adb uninstall ccc.test' in a shell.<br /> [2011-09-15&#160;08:17:50 - IntentTest] Launch canceled!<br /> [2011-09-15&#160;08:22:42 - IntentTest] <span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span><span style="text-decoration: line-through;">-</span></p> <p>此時我在命令列使用下列指令：<br /> C:\Documents and Settings\ccc&gt;adb uninstall ccc.test<br /> Success</p> <p>[2011-09-15&#160;08:22:42 - IntentTest] Android Launch!<br /> [2011-09-15&#160;08:22:42 - IntentTest] adb is running normally.<br /> [2011-09-15&#160;08:22:42 - IntentTest] Performing ccc.test.IntentTest activity launch<br /> [2011-09-15&#160;08:22:42 - IntentTest] Automatic Target Mode: using existing emulator 'emulator-5554' running compatible AVD 'AVD1.6'<br /> [2011-09-15&#160;08:22:42 - IntentTest] Uploading IntentTest.apk onto device 'emulator-5554'<br /> [2011-09-15&#160;08:22:42 - IntentTest] Installing IntentTest.apk&#8230;<br /> [2011-09-15&#160;08:22:44 - IntentTest] Success!<br /> [2011-09-15&#160;08:22:44 - IntentTest] Starting activity ccc.test.IntentTest on device emulator-5554<br /> [2011-09-15&#160;08:22:45 - IntentTest] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=ccc.test/.IntentTest }</p> <h1><span>問題：在執行時出現</span></h1> <p>* Error generating final archive: Debug Certificate expired on 2011/9/9 上午 11:10 Hello22 Unknown Android Packaging Problem</p> <ul> <li>回答：砍掉 C:\Documents and Settings\ccc\.android 當中的 debug.keystore ，讓 Eclipse 自己在產生一份新的就可以了。</li> </ul> <p>參考：[筆記]Android Debug certificate expired</p> <ul> <li><a href="http://blog.aztaru.com/2010/10/29/%E7%AD%86%E8%A8%98android-debug-certificate-expired/">http://blog.aztaru.com/2010/10/29/%E7%AD%86%E8%A8%98android-debug-certificate-expired/</a></li> </ul> <p><a href="http://stackoverflow.com/questions/2194808/debug-certificate-expired-error-in-eclipse-android-plugins">http://stackoverflow.com/questions/2194808/debug-certificate-expired-error-in-eclipse-android-plugins</a></p> <h1><span>問題：在啟動 Android Virtual Device (AVD) 的時候，碰到下列錯誤訊息，應該如何解決：</span></h1> <p>invalid command-line parameter: Files\Android\android-sdk\tools/emulator-arm.exe.<br /> Hint: use '@foo' to launch a virtual device named 'foo'.<br /> please use -help for more information</p> <ul> <li>回答：Android R12 版有 Bug，安裝時不能處理路徑中有空格的情況，如果您用 Windows 的預設安裝，會安裝在 C:\Programme Files(x86)\Android\android-sdk，這個有空格，因此無法運作，您必須將 Eclipse 當中的 Window/Preference 將 SDK Location 改為 &#8212; C:\PROGRA~1\Android\android-sdk</li> </ul> <p>* 請參考：<a href="http://stackoverflow.com/questions/6638713/android-emulator-is-not-starting-showing-invalid-command-line-parameter">http://stackoverflow.com/questions/6638713/android-emulator-is-not-starting-showing-invalid-command-line-parameter</a></p> <h1><span>問題：在 Android 的程式中，經常會看到使用 className.this 的形式，這種寫法到底代表甚麼意思？舉例而言，以下是 Android API Demo 當中的 app/AlarmService 中的一小段程式，其中的 AlarmService.this 所使用的就是這種寫法。</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">AlarmService</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Activity</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">private</span><span class="hl-code"> </span><span class="hl-identifier">PendingIntent</span><span class="hl-code"> </span><span class="hl-identifier">mAlarmSender</span><span class="hl-code">; @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">protected</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">Bundle</span><span class="hl-code"> </span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-comment">// Create an IntentSender that will launch our service, to be scheduled</span><span class="hl-code"> </span><span class="hl-comment">// with the alarm manager.</span><span class="hl-code"> </span><span class="hl-identifier">mAlarmSender</span><span class="hl-code"> = </span><span class="hl-identifier">PendingIntent</span><span class="hl-code">.</span><span class="hl-identifier">getService</span><span class="hl-brackets">(</span><span class="hl-identifier">AlarmService</span><span class="hl-code">.</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-number">0</span><span class="hl-code">, </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">AlarmService</span><span class="hl-code">.</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">AlarmService_Service</span><span class="hl-code">.</span><span class="hl-reserved">class</span><span class="hl-brackets">)</span><span class="hl-code">, </span><span class="hl-number">0</span><span class="hl-brackets">)</span><span class="hl-code">; ...</span></pre></div> </div> <p>回答：其實在該範例中只要寫 this 即可，但是由於 Android 的系統中常有使用 inner class 的習慣，在 inner class 中可以用 OTHERCLASS.this 指定外層類別的物件，因此在 Android 中習慣統一加上類別名稱，以釐清到底存取的是哪一層的 this. 更詳細的資訊請參考下列網址。</p> <blockquote> <p><a href="http://www.blackbeltfactory.com/QuestionView.wwa?questionId=11551504">http://www.blackbeltfactory.com/QuestionView.wwa?questionId=11551504</a></p> </blockquote> <h1><span>如果元件很多，超過一個畫面，無法捲動到最下面的元件，那應該怎麼辦？</span></h1> <p>參考：<a href="http://stackoverflow.com/questions/1497755/android-how-to-automatically-display-vertical-scrollbar">http://stackoverflow.com/questions/1497755/android-how-to-automatically-display-vertical-scrollbar</a></p> <p>此時可以用一個 ScrollView 將整個 Layout 包在裡面，就能解決問題了，以下是一個範例。</p> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">LinearLayout</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:scrollbars</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:orientation</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">ScrollView</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/scrollView2</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">match_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">LinearLayout</span><span class="hl-code"> </span><span class="hl-var">android:scrollbars</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:orientation</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">TextView</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@string/hello</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">Button</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/button4</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">ToggleButton</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">ToggleButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/toggleButton1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">ToggleButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/button1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">Button</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">CheckBox</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">CheckBox</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/checkBox1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">CheckBox</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioButton</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">RadioButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radioButton1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RadioButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">WebView</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/webView1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">match_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">match_parent</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">WebView</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Spinner</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">match_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/spinner1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">Spinner</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">ProgressBar</span><span class="hl-code"> </span><span class="hl-var">style</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">?android:attr/progressBarStyleLarge</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/progressBar1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">ProgressBar</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">QuickContactBadge</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/quickContactBadge1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">QuickContactBadge</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RatingBar</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ratingBar1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RatingBar</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioGroup</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radioGroup1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioButton</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">RadioButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radio0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:checked</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">true</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RadioButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioButton</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">RadioButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radio1</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RadioButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioButton</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">RadioButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radio2</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RadioButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioGroup</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radioGroup2</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioButton</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">RadioButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radio0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:checked</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">true</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RadioButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioButton</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">RadioButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radio1</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RadioButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RadioButton</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">RadioButton</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/radio2</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RadioButton</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">RadioGroup</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">Button</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/button2</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">Button</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/button3</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">RatingBar</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ratingBar2</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">RatingBar</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">RadioGroup</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">LinearLayout</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">ScrollView</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">LinearLayout</span><span class="hl-brackets">&gt;</span></pre></div> </div> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123599" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:core</guid>
				<title>Android 的核心物件</title>
				<link>http://ccckmit.wikidot.com/ga:core</link>
				<description>

&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:activity&quot;&gt;Activity&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:startactivity&quot;&gt;用 Intent 呼叫另一個 Activity&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:bundle&quot;&gt;用 Intent 透過 Boundle 傳參數&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:intent&quot;&gt;Intent&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:intentexample&quot;&gt;Intent 的使用範例&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:service&quot;&gt;Service&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:serviceexample&quot;&gt;Service 範例 -- 音樂播放&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:broadcastreceiver&quot;&gt;廣播接收器&lt;/a&gt; &amp;#8212; BroadcastReceiver&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://ccckmit.wikidot.com/ga:contentprovider&quot;&gt;內容提供者&lt;/a&gt; &amp;#8212; ContentProvider&lt;/li&gt;
&lt;/ol&gt;
&lt;h1&gt;&lt;span&gt;參考文獻&lt;/span&gt;&lt;/h1&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.android.com/guide/topics/fundamentals.html&quot;&gt;http://developer.android.com/guide/topics/fundamentals.html&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123599&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Fri, 24 Sep 2010 06:04:14 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <ol> <li><a href="http://ccckmit.wikidot.com/ga:activity">Activity</a> <ul> <li><a href="http://ccckmit.wikidot.com/ga:startactivity">用 Intent 呼叫另一個 Activity</a></li> <li><a href="http://ccckmit.wikidot.com/ga:bundle">用 Intent 透過 Boundle 傳參數</a></li> </ul> </li> <li><a href="http://ccckmit.wikidot.com/ga:intent">Intent</a> <ul> <li><a href="http://ccckmit.wikidot.com/ga:intentexample">Intent 的使用範例</a></li> </ul> </li> <li><a href="http://ccckmit.wikidot.com/ga:service">Service</a> <ul> <li><a href="http://ccckmit.wikidot.com/ga:serviceexample">Service 範例 -- 音樂播放</a></li> </ul> </li> <li><a href="http://ccckmit.wikidot.com/ga:broadcastreceiver">廣播接收器</a> &#8212; BroadcastReceiver</li> <li><a href="http://ccckmit.wikidot.com/ga:contentprovider">內容提供者</a> &#8212; ContentProvider</li> </ol> <h1><span>參考文獻</span></h1> <ol> <li><a href="http://developer.android.com/guide/topics/fundamentals.html">http://developer.android.com/guide/topics/fundamentals.html</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123599" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:bundle</guid>
				<title>在 Intent 中使用 Bundle 傳遞資料</title>
				<link>http://ccckmit.wikidot.com/ga:bundle</link>
				<description>

&lt;p&gt;&lt;iframe src=&quot;http://ccckmit.wikidot.com/ga:bundle/html/6805c1ded074caa7462fe10cde1ead0fdca6313a-7148777201120531661&quot; allowtransparency=&quot;true&quot; frameborder=&quot;0&quot; class=&quot;html-block-iframe&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123599&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Thu, 08 Dec 2011 00:38:10 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p><iframe src="http://ccckmit.wikidot.com/ga:bundle/html/6805c1ded074caa7462fe10cde1ead0fdca6313a-1172735511596842521" allowtransparency="true" frameborder="0" class="html-block-iframe"></iframe></p> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123599" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:startactivity</guid>
				<title>Android : 呼叫另一個 Activity</title>
				<link>http://ccckmit.wikidot.com/ga:startactivity</link>
				<description>

&lt;p&gt;專案下載：&lt;a href=&quot;http://ccckmit.wdfiles.com/local--files/ga:startactivity/StartActivity.zip&quot;&gt;StartActivity.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123599&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Thu, 24 Nov 2011 01:05:01 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>專案下載：<a href="http://ccckmit.wdfiles.com/local--files/ga:startactivity/StartActivity.zip">StartActivity.zip</a></p> <h1><span>執行結果</span></h1> <p>Activity1 的 main.xml 執行畫面</p> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:startactivity/Activity1Run.jpg"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:startactivity/Activity1Run.jpg/medium.jpg" alt="Activity1Run.jpg" class="image" /></a></div> <p>按下「啟動 Activity2」按鈕後，啟動了 Activity2 的畫面 layout2.xml。</p> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:startactivity/Activity2Run.jpg"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:startactivity/Activity2Run.jpg/medium.jpg" alt="Activity2Run.jpg" class="image" /></a></div> <h1><span>程式碼：Activity1.java</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">package</span><span class="hl-code"> </span><span class="hl-identifier">ccc</span><span class="hl-code">.</span><span class="hl-identifier">android</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">app</span><span class="hl-code">.</span><span class="hl-identifier">Activity</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">content</span><span class="hl-code">.</span><span class="hl-identifier">Intent</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">os</span><span class="hl-code">.</span><span class="hl-identifier">Bundle</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">View</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">widget</span><span class="hl-code">.</span><span class="hl-identifier">Button</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">Activity1</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Activity</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-comment">/** Called when the activity is first created. */</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">Bundle</span><span class="hl-code"> </span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">setContentView</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">layout</span><span class="hl-code">.</span><span class="hl-identifier">main</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">b1</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">button1</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">b1</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">(){</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">v</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-comment">// TODO Auto-generated method stub</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">()</span><span class="hl-code">; </span><span class="hl-identifier">i</span><span class="hl-code">.</span><span class="hl-identifier">setClass</span><span class="hl-brackets">(</span><span class="hl-identifier">Activity1</span><span class="hl-code">.</span><span class="hl-reserved">this</span><span class="hl-code">, </span><span class="hl-identifier">Activity2</span><span class="hl-code">.</span><span class="hl-reserved">class</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span></pre></div> </div> <h1><span>介面 Layout：main.xml</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">LinearLayout</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:orientation</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">TextView</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@string/hello</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">啟動 Activity 2</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/button1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">LinearLayout</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>程式碼：Activity2.java</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">package</span><span class="hl-code"> </span><span class="hl-identifier">ccc</span><span class="hl-code">.</span><span class="hl-identifier">android</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">app</span><span class="hl-code">.</span><span class="hl-identifier">Activity</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">content</span><span class="hl-code">.</span><span class="hl-identifier">Intent</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">os</span><span class="hl-code">.</span><span class="hl-identifier">Bundle</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">View</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">widget</span><span class="hl-code">.</span><span class="hl-identifier">Button</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">Activity2</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Activity</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-comment">/** Called when the activity is first created. */</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">Bundle</span><span class="hl-code"> </span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">setContentView</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">layout</span><span class="hl-code">.</span><span class="hl-identifier">layout2</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span></pre></div> </div> <h1><span>介面 Layout：layout2.xml</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">LinearLayout</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:orientation</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">TextView</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">Activity2</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">LinearLayout</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>專案管理檔</span></h1> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">manifest</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">package</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">ccc.android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:versionCode</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:versionName</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">uses-sdk</span><span class="hl-code"> </span><span class="hl-var">android:minSdkVersion</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">8</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">application</span><span class="hl-code"> </span><span class="hl-var">android:icon</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@drawable/icon</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:label</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@string/app_name</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">activity</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">.Activity1</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:label</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@string/app_name</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">intent-filter</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">action</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">android.intent.action.MAIN</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">category</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">android.intent.category.LAUNCHER</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">/&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">intent-filter</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">activity</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">activity</span><span class="hl-code"> </span><span class="hl-var">android:name</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">Activity2</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">activity</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">application</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">manifest</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>上課錄影</span></h1> <p><iframe src="http://ccckmit.wikidot.com/ga:startactivity/html/67b7e911a639a141b210bf8ab9bc4cd64eb27c7d-7962591892133411928" allowtransparency="true" frameborder="0" class="html-block-iframe"></iframe></p> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123599" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
					<item>
				<guid>http://ccckmit.wikidot.com/ga:intentexample</guid>
				<title>Android 手機程式 -- Intent 的用法列表範例</title>
				<link>http://ccckmit.wikidot.com/ga:intentexample</link>
				<description>

&lt;p&gt;專案下載：&lt;a href=&quot;http://ccckmit.wdfiles.com/local--files/ga:intentexample/IntentTest.zip&quot;&gt;IntentTest.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;by &lt;span class=&quot;printuser avatarhover&quot;&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;&lt;img class=&quot;small&quot; src=&quot;http://www.wikidot.com/avatar.php?userid=296763&amp;amp;amp;size=small&amp;amp;amp;timestamp=1776123599&quot; alt=&quot;ccckmit&quot; style=&quot;background-image:url(http://www.wikidot.com/userkarma.php?u=296763)&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;http://www.wikidot.com/user:info/ccckmit&quot;  &gt;ccckmit&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
</description>
				<pubDate>Wed, 06 Oct 2010 00:02:41 +0000</pubDate>
												<content:encoded>
					<![CDATA[
						 <p>專案下載：<a href="http://ccckmit.wdfiles.com/local--files/ga:intentexample/IntentTest.zip">IntentTest.zip</a></p> <p>Android 中的 Intent 非常好用，整個 Android 的架構最大的特色可以說就建構在 Intent 上，您可以利用類似 URL 的 Intent 啟動任何一個程式的任何一個畫面。為了讓大家能更容易的使用並交流 Intent，甚至有人發起了一個 <a href="http://www.openintents.org/en/">OpenIntents</a> 組織，讓全世界的可以為自己的應用程式註冊 Intent。以下是筆者所蒐集的一些常用 Intent 格式的列表，以及使用這些 Intent 的範例程式。</p> <h1><span>Intent 的用法列表</span></h1> <table class="wiki-content-table"> <tr> <td>URI [Action]</td> <td>說明</td> </tr> <tr> <td>http(s):<em>web_address [VIEW]</em></td> <td>顯示網頁</td> </tr> <tr> <td>&quot;&quot; [WEB_SEARCH]</td> <td>顯示瀏覽器</td> </tr> <tr> <td>http(s):web_address [WEB_SEARCH]</td> <td>開啟檔案</td> </tr> <tr> <td>tel: phone_number [CALL]</td> <td>直接撥電話</td> </tr> <tr> <td>tel: phone_number [DIAL]</td> <td>顯示撥號介面</td> </tr> <tr> <td>geo:latitude,longitude [VIEW]</td> <td>顯示撥號介面</td> </tr> <tr> <td>geo:latitude,longitude?z=zoom [VIEW]</td> <td>顯示地圖</td> </tr> <tr> <td>geo:0,0?q=my+street+address [VIEW]</td> <td>顯示地圖</td> </tr> <tr> <td>geo:0,0?q=business+near+city [VIEW]</td> <td>顯示地圖</td> </tr> <tr> <td>google.streetview:cbll=lat,lng&amp; cbp=1,yaw,,pitch,zoom&amp;mz=mapZoom [VIEW]</td> <td>顯示街景</td> </tr> <tr> <td>[MediaStore.ACTION_IMAGE_CAPTURE]</td> <td>啟動相機</td> </tr> <tr> <td>file:<em>/sdcard/song.mp3 [ACTION_VIEW]</em></td> <td>啟動該檔案</td> </tr> <tr> <td>market:search?q=pname:pkg_name [ACTION_VIEW]</td> <td>搜尋商場</td> </tr> <tr> <td>market://details?id=pkg_name_or_app_id [ACTION_VIEW]</td> <td>軟體資訊</td> </tr> <tr> <td>People.CONTENT_URI [ACTION_VIEW]</td> <td>聯絡人清單</td> </tr> </table> <h1><span>執行結果</span></h1> <div class="image-container aligncenter"><a href="http://ccckmit.wdfiles.com/local--files/ga:intentexample/IntentTestRun.png"><img src="http://ccckmit.wdfiles.com/local--resized-images/ga:intentexample/IntentTestRun.png/medium.jpg" alt="IntentTestRun.png" class="image" /></a></div> <h1><span>程式範例</span></h1> <p>檔案：src/ccc/test/IntentTest.java</p> <div class="code"> <div class="hl-main"> <pre><span class="hl-reserved">package</span><span class="hl-code"> </span><span class="hl-identifier">ccc</span><span class="hl-code">.</span><span class="hl-identifier">test</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">app</span><span class="hl-code">.</span><span class="hl-identifier">Activity</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">content</span><span class="hl-code">.</span><span class="hl-identifier">Intent</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">net</span><span class="hl-code">.</span><span class="hl-identifier">Uri</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">os</span><span class="hl-code">.</span><span class="hl-identifier">Bundle</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">provider</span><span class="hl-code">.</span><span class="hl-identifier">MediaStore</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">provider</span><span class="hl-code">.</span><span class="hl-identifier">Contacts</span><span class="hl-code">.</span><span class="hl-identifier">People</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">view</span><span class="hl-code">.</span><span class="hl-identifier">View</span><span class="hl-code">; </span><span class="hl-reserved">import</span><span class="hl-code"> </span><span class="hl-identifier">android</span><span class="hl-code">.</span><span class="hl-identifier">widget</span><span class="hl-code">.</span><span class="hl-identifier">Button</span><span class="hl-code">; </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-reserved">class</span><span class="hl-code"> </span><span class="hl-identifier">IntentTest</span><span class="hl-code"> </span><span class="hl-reserved">extends</span><span class="hl-code"> </span><span class="hl-identifier">Activity</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-comment">/** Called when the activity is first created. */</span><span class="hl-code"> @</span><span class="hl-identifier">Override</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">Bundle</span><span class="hl-code"> </span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">super</span><span class="hl-code">.</span><span class="hl-identifier">onCreate</span><span class="hl-brackets">(</span><span class="hl-identifier">savedInstanceState</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">setContentView</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">layout</span><span class="hl-code">.</span><span class="hl-identifier">main</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonUrl</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonUrl</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonEmail</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonEmail</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonTel</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonTel</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonCamera</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonCamera</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonGMap</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonGMap</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonImage</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonImage</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonPeople</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonPeople</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Button</span><span class="hl-code"> </span><span class="hl-identifier">buttonMarket</span><span class="hl-code"> = </span><span class="hl-brackets">(</span><span class="hl-identifier">Button</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-identifier">findViewById</span><span class="hl-brackets">(</span><span class="hl-identifier">R</span><span class="hl-code">.</span><span class="hl-identifier">id</span><span class="hl-code">.</span><span class="hl-identifier">ButtonMarket</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">buttonUrl</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Uri</span><span class="hl-code"> </span><span class="hl-identifier">uri</span><span class="hl-code">=</span><span class="hl-identifier">Uri</span><span class="hl-code">.</span><span class="hl-identifier">parse</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://www.google.com.tw</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code">=</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_VIEW</span><span class="hl-code">,</span><span class="hl-identifier">uri</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">buttonEmail</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Uri</span><span class="hl-code"> </span><span class="hl-identifier">uri</span><span class="hl-code">=</span><span class="hl-identifier">Uri</span><span class="hl-code">.</span><span class="hl-identifier">parse</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">mailto:ccc@nqu.edu.tw</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code">=</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_SENDTO</span><span class="hl-code">,</span><span class="hl-identifier">uri</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">buttonTel</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Uri</span><span class="hl-code"> </span><span class="hl-identifier">uri</span><span class="hl-code">=</span><span class="hl-identifier">Uri</span><span class="hl-code">.</span><span class="hl-identifier">parse</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">tel:082313532</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code">=</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_VIEW</span><span class="hl-code">,</span><span class="hl-identifier">uri</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">buttonCamera</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">MediaStore</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_IMAGE_CAPTURE</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">buttonGMap</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Uri</span><span class="hl-code"> </span><span class="hl-identifier">uri</span><span class="hl-code"> = </span><span class="hl-identifier">Uri</span><span class="hl-code">.</span><span class="hl-identifier">parse</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">geo:25.048,121.532</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_VIEW</span><span class="hl-code">, </span><span class="hl-identifier">uri</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">buttonImage</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_GET_CONTENT</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">i</span><span class="hl-code">.</span><span class="hl-identifier">addCategory</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">CATEGORY_OPENABLE</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">i</span><span class="hl-code">.</span><span class="hl-identifier">setType</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">image/*</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivityForResult</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-code">, </span><span class="hl-number">0</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">buttonPeople</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">i</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_VIEW</span><span class="hl-code">, </span><span class="hl-identifier">People</span><span class="hl-code">.</span><span class="hl-identifier">CONTENT_URI</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">i</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-identifier">buttonMarket</span><span class="hl-code">.</span><span class="hl-identifier">setOnClickListener</span><span class="hl-brackets">(</span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Button</span><span class="hl-code">.</span><span class="hl-identifier">OnClickListener</span><span class="hl-brackets">()</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-reserved">public</span><span class="hl-code"> </span><span class="hl-types">void</span><span class="hl-code"> </span><span class="hl-identifier">onClick</span><span class="hl-brackets">(</span><span class="hl-identifier">View</span><span class="hl-code"> </span><span class="hl-identifier">view</span><span class="hl-brackets">)</span><span class="hl-code"> </span><span class="hl-brackets">{</span><span class="hl-code"> </span><span class="hl-comment">// 尋找某個應用程式 </span><span class="hl-code"> </span><span class="hl-identifier">Uri</span><span class="hl-code"> </span><span class="hl-identifier">uri</span><span class="hl-code"> = </span><span class="hl-identifier">Uri</span><span class="hl-code">.</span><span class="hl-identifier">parse</span><span class="hl-brackets">(</span><span class="hl-quotes">&quot;</span><span class="hl-string">market://search?q=dropbox</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">Intent</span><span class="hl-code"> </span><span class="hl-identifier">it</span><span class="hl-code"> = </span><span class="hl-reserved">new</span><span class="hl-code"> </span><span class="hl-identifier">Intent</span><span class="hl-brackets">(</span><span class="hl-identifier">Intent</span><span class="hl-code">.</span><span class="hl-identifier">ACTION_VIEW</span><span class="hl-code">, </span><span class="hl-identifier">uri</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-identifier">startActivity</span><span class="hl-brackets">(</span><span class="hl-identifier">it</span><span class="hl-brackets">)</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">})</span><span class="hl-code">; </span><span class="hl-brackets">}</span><span class="hl-code"> </span><span class="hl-brackets">}</span></pre></div> </div> <p>檔案：res/layout/main.xml</p> <div class="code"> <div class="hl-main"> <pre><span class="hl-brackets">&lt;?</span><span class="hl-reserved">xml</span><span class="hl-code"> </span><span class="hl-var">version</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">1.0</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">encoding</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">utf-8</span><span class="hl-quotes">&quot;</span><span class="hl-brackets">?&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">LinearLayout</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/MainLayout</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:orientation</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">vertical</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">xmlns:android</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://schemas.android.com/apk/res/android</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonUrl</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">http://www.google.com.tw</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonEmail</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">mailto:ccc@nqu.edu.tw</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonTel</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">tel:082313532 (view)</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonCamera</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">Camera</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonGMap</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">geo:25.048,121.532</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonImage</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">image/*</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonPeople</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">People.CONTENT_URI</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;</span><span class="hl-reserved">Button</span><span class="hl-code"> </span><span class="hl-var">android:id</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">@+id/ButtonMarket</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_width</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">fill_parent</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:layout_height</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">wrap_content</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-var">android:text</span><span class="hl-code">=</span><span class="hl-quotes">&quot;</span><span class="hl-string">market://search?q=dropbox</span><span class="hl-quotes">&quot;</span><span class="hl-code"> </span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">Button</span><span class="hl-brackets">&gt;</span><span class="hl-code"> </span><span class="hl-brackets">&lt;/</span><span class="hl-reserved">LinearLayout</span><span class="hl-brackets">&gt;</span></pre></div> </div> <h1><span>參考文獻</span></h1> <ol> <li>Intents List: Invoking Google Applications on Android Devices &#8212; <a href="http://developer.android.com/guide/appendix/g-app-intents.html">http://developer.android.com/guide/appendix/g-app-intents.html</a></li> <li>Intent 用法大公開 &#8212; <a href="http://ysl-paradise.blogspot.com/2008/12/intent.html">http://ysl-paradise.blogspot.com/2008/12/intent.html</a></li> <li>OpenIntents &#8212; <a href="http://www.openintents.org/en/">http://www.openintents.org/en/</a></li> <li>android intent和intent action大全 &#8212; <a href="http://www.360doc.com/content/10/1018/08/111369_61908478.shtml">http://www.360doc.com/content/10/1018/08/111369_61908478.shtml</a></li> </ol> <p>by <span class="printuser avatarhover"><a href="http://www.wikidot.com/user:info/ccckmit" ><img class="small" src="http://www.wikidot.com/avatar.php?userid=296763&amp;amp;size=small&amp;amp;timestamp=1776123599" alt="ccckmit" style="background-image:url(http://www.wikidot.com/userkarma.php?u=296763)" /></a><a href="http://www.wikidot.com/user:info/ccckmit" >ccckmit</a></span></p> 
				 	]]>
				</content:encoded>							</item>
				</channel>
</rss>