<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-3090143955941944395</id><updated>2024-12-19T11:24:32.663+08:00</updated><category term="心情"/><category term="研究生"/><category term="單車"/><category term="CSS、CSS和IE不合"/><category term="iOS程式開發"/><category term="創業"/><category term="好文"/><category term="替代役生活"/><category term="遊戲"/><category term="mobile"/><category term="Book"/><category term="Web Service"/><category term="環島"/><category term="趣味一下"/><category term="Fon"/><category term="Unity"/><category term="Web新知"/><category term="tech news"/><category term="web design"/><category term="好書推薦"/><category term="相機"/><category term="研發替代役"/><category term="結婚"/><category term="資訊"/><category term="電影"/><category term="Android"/><category term="AppNewIdea"/><category term="Arduino"/><category term="wii"/><category term="上班搞笑"/><category term="教學"/><category term="旅行"/><category term="書籤"/><category term="照片"/><category term="玩具"/><title type='text'>橘色實驗室</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default?alt=atom&amp;redirect=false'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default?alt=atom&amp;start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>141</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-2394595690591703004</id><published>2014-10-10T16:52:00.000+08:00</published><updated>2014-10-10T16:53:40.897+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iOS程式開發"/><title type='text'>Cocoapods第三方套件管理 - iOS開發必吃的可可豆</title><content type='html'>&lt;h3&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;安裝Cocoapods&lt;/span&gt;&lt;/h3&gt;
在終端機下，輸入：&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;$ sudo gem install cocoapods&lt;/code&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmc5q3h_9yTeyl_UFZis5DHN0kEIpoirVDApBRZgUu_RaBeWWixcoUVMI3MHyEaeBUM8PrhoO9wDgp6VZiTKZr2m7YButyV7Fl3ZB14jLyvwoM1eIDXuSVt9YP6dWHT0O99j2RsvZZwbY/s1600/cocoapods-1.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmc5q3h_9yTeyl_UFZis5DHN0kEIpoirVDApBRZgUu_RaBeWWixcoUVMI3MHyEaeBUM8PrhoO9wDgp6VZiTKZr2m7YButyV7Fl3ZB14jLyvwoM1eIDXuSVt9YP6dWHT0O99j2RsvZZwbY/s1600/cocoapods-1.png&quot; height=&quot;371&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;建立podfile&lt;/span&gt;&lt;/h3&gt;
在終端機下，cd切換到專案的資料夾，輸入：&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;$ vi Podfile&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
目的要建立一個檔案讓cocoapods讀取你要管理的第三方套件&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
建入文字輸入介面，然後輸入以下資訊&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;platform:ios, &#39;7.0&#39;&lt;br /&gt;pod &#39;AFNetworking&#39;, &#39;~&amp;gt; 2.4.1&#39;&lt;br /&gt;pod &#39;ECSlidingViewController&#39;, &#39;~&amp;gt; 2.0.3’&lt;/code&gt;&lt;br /&gt;
&lt;br /&gt;
pod後面接著的是你要的套件名稱，後面是版本號，若不加，預設是下載最新的版本。&lt;br /&gt;
輸入完成後，按Esc到指令模式，輸入:wq，存檔離開。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h3&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;下載/更新套件&lt;/span&gt;&lt;/h3&gt;
&lt;code&gt;$ pod update&lt;/code&gt;&lt;br /&gt;
這時cocoapods會根據你設定的iOS版本號和套件做相依性檢查。&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsqLyabaQ5VoAdfZ0CzD5y1P17SxVDj4NytdOK-OG6EqEk88SWDIuKXA7UHfOZHzwkmEa7xGGLfyzVlSVUwuVsJeXXsHlR-y8XLvtg5a1CDSCvR3055wRwKjI05P8d4Tzg2J44dzfvy0g/s1600/cocoapods-2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhsqLyabaQ5VoAdfZ0CzD5y1P17SxVDj4NytdOK-OG6EqEk88SWDIuKXA7UHfOZHzwkmEa7xGGLfyzVlSVUwuVsJeXXsHlR-y8XLvtg5a1CDSCvR3055wRwKjI05P8d4Tzg2J44dzfvy0g/s1600/cocoapods-2.png&quot; height=&quot;323&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h3 style=&quot;clear: both;&quot;&gt;
&lt;span style=&quot;font-size: large;&quot;&gt;使用套件&lt;/span&gt;&lt;/h3&gt;
完成後，套件就會下載到你的專案資料夾，此時的資料夾會多幾個資料夾和檔案。&lt;br /&gt;
裝了cocoapods之後都必須要用.xcworkspace開啟專案。&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdFVeNiJiy3uWHyA9p2Ao0kkTDl0OGEiW3OIWi4sg6J7OUz7ObclSoUw7KfED5I-6w9jJQXegr_8lR66dMc1ymwAn9PZYv00LbWaRMHB-_ShA-ByjYBDUhSW4agwqnV127Id_qW2Jxzrk/s1600/cocoapods-3.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdFVeNiJiy3uWHyA9p2Ao0kkTDl0OGEiW3OIWi4sg6J7OUz7ObclSoUw7KfED5I-6w9jJQXegr_8lR66dMc1ymwAn9PZYv00LbWaRMHB-_ShA-ByjYBDUhSW4agwqnV127Id_qW2Jxzrk/s1600/cocoapods-3.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
往後如果要新增或更新套件，就再去修改cocoapods，加入你要下載的套件名稱即可。&lt;br /&gt;
&lt;br /&gt;
使用套件的方法也很簡單，直接在程式裡import “xxx.h”就可以囉！大功告成&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;參考資料&lt;/i&gt;&lt;br /&gt;
&lt;div&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div style=&quot;-webkit-text-stroke-width: 0px; color: black; font-family: &#39;Heiti TC&#39;; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; margin: 0px; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px;&quot;&gt;
http://cocoapods.org/&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/2394595690591703004/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/2394595690591703004' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/2394595690591703004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/2394595690591703004'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2014/10/cocoapods-ios.html' title='Cocoapods第三方套件管理 - iOS開發必吃的可可豆'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgmc5q3h_9yTeyl_UFZis5DHN0kEIpoirVDApBRZgUu_RaBeWWixcoUVMI3MHyEaeBUM8PrhoO9wDgp6VZiTKZr2m7YButyV7Fl3ZB14jLyvwoM1eIDXuSVt9YP6dWHT0O99j2RsvZZwbY/s72-c/cocoapods-1.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-3561902352973272603</id><published>2014-10-04T11:57:00.002+08:00</published><updated>2014-10-06T17:52:40.197+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iOS程式開發"/><title type='text'>GCD - dispatch_queue的基本用法</title><content type='html'>Grand Central Dispatch(GCD)，是Apple用來處理多執行緒的一個機制，執行緒交由OS管理，效能也更好。&lt;br /&gt;
&lt;br /&gt;
Dispatch Queues有以下3種類型：&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #e69138;&quot;&gt;1.Serial Queue：串列執行block，會依照放入的順序執行。&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: #e69138;&quot;&gt;2.Concurrent Queue：可以同時執行多個block，但是執行完成的順序是隨機的。&lt;/span&gt;&lt;br /&gt;

&lt;span style=&quot;color: #e69138;&quot;&gt;3.Main dispatch queue：在應用程式的main thread中執行block。&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
下面是幾個簡單的使用方式：&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
&lt;span style=&quot;color: #e69138; font-size: large;&quot;&gt;1.Serial Queue&lt;/span&gt;&lt;/h4&gt;
建立Serial Queue的方法很簡單，首先先宣告一個dispatch_queue_create建立一個dispatch_queue_t，然後執行dispatch_async的block。&lt;br /&gt;
&lt;br /&gt;
範例裡分別執行2個Serial Queue，尤於是Serial Queue一次只執行一次的特性的，所以會先執行Run1，結束後再執行Run2。&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
dispatch_queue_t createQueue = dispatch_queue_create(&quot;SerialQueue&quot;, nil);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; dispatch_async(createQueue, ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run1];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; });&lt;br /&gt;
&amp;nbsp; &amp;nbsp; dispatch_async(createQueue, ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run2];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; });
&lt;/code&gt;
&lt;br /&gt;
&lt;code&gt;
- (void)run1{&lt;br /&gt;
&amp;nbsp; &amp;nbsp; for (int i=0; i&lt;5 br=&quot;&quot; i=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt; [NSThread sleepForTimeInterval:1];&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NSLog(@&quot;Run1:%d&quot;,i);&lt;br /&gt;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;}&lt;br /&gt;- (void)run2{&lt;br /&gt;&amp;nbsp; &amp;nbsp; for (int i=0; i&lt;5 br=&quot;&quot; i=&quot;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt; [NSThread sleepForTimeInterval:0.3f];&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; NSLog(@&quot;*Run2:%d&quot;,i);&lt;br /&gt;&amp;nbsp; &amp;nbsp; }&lt;br /&gt;}&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;!--5--&gt;&lt;/5&gt;&lt;/5&gt;&lt;/code&gt;
執行結果&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
Run1:0&lt;br /&gt;
Run1:1&lt;br /&gt;
Run1:2&lt;br /&gt;
Run1:3&lt;br /&gt;
Run1:4&lt;br /&gt;
*Run2:0&lt;br /&gt;
*Run2:1&lt;br /&gt;
*Run2:2&lt;br /&gt;
*Run2:3&lt;br /&gt;
*Run2:4&lt;br /&gt;
&lt;/code&gt;
有時，當我們需要在背景用執行緒讀取資料，完成後再更新UI，這時可以用以下的寫法：&lt;br /&gt;
&lt;br /&gt;
&lt;code&gt;
&amp;nbsp; &amp;nbsp; dispatch_queue_t createQueue = dispatch_queue_create(&quot;SerialQueue&quot;, nil);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; dispatch_async(createQueue, ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run1];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dispatch_async(dispatch_get_main_queue(), ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run2];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; });&lt;br /&gt;
&amp;nbsp; &amp;nbsp; });
&lt;/code&gt;
&lt;br /&gt;
&lt;div&gt;
執行結果跟上面的例子一樣，但不同的是，當run1執行完成後，run2是交由dispatch_get_main_queue()，也就是Main Thread來完成，所以當有需要更新UI的地方，可以採取這樣的寫法。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;h4&gt;
&lt;span style=&quot;color: #e69138; font-size: large;&quot;&gt;2.Concurrent Queue&lt;/span&gt;&lt;/h4&gt;
建立Cocurrent Queue的方法如下，首先建立dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0)，DISPATCH_QUEUE_PRIORITY_DEFAULT的意思是交由OS來管理優先順序，開發者可以根據需求調整執行的優先權，系統提供4種：&lt;br /&gt;
&lt;code&gt;
#define DISPATCH_QUEUE_PRIORITY_HIGH 2&lt;br /&gt;
#define DISPATCH_QUEUE_PRIORITY_DEFAULT 0&lt;br /&gt;
#define DISPATCH_QUEUE_PRIORITY_LOW (-2)&lt;br /&gt;
#define DISPATCH_QUEUE_PRIORITY_BACKGROUND INT16_MIN
&lt;/code&gt;
&lt;br /&gt;
&lt;code&gt;
&amp;nbsp; &amp;nbsp; dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; dispatch_async(queue, ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run1];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; });&lt;br /&gt;
&amp;nbsp; &amp;nbsp; dispatch_async(queue, ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run2];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; });&lt;/code&gt;
&lt;/div&gt;
&lt;div&gt;
執行結果&lt;br /&gt;
&lt;code&gt;
*Run2:0&lt;br /&gt;
*Run2:1&lt;br /&gt;
*Run2:2&lt;br /&gt;
Run1:0&lt;br /&gt;
*Run2:3&lt;br /&gt;
*Run2:4&lt;br /&gt;
Run1:1&lt;br /&gt;
Run1:2&lt;br /&gt;
Run1:3&lt;br /&gt;
Run1:4&lt;/code&gt;
&lt;/div&gt;
&lt;div&gt;
可以看到，執行的結果完全是隨機的，也就是說，系統是同時在背景執行2個block。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;h4&gt;
&lt;span style=&quot;color: #e69138; font-size: large;&quot;&gt;3.Main dispatch queue&lt;/span&gt;&lt;/h4&gt;
&lt;/div&gt;
&lt;div&gt;
尤於是在主執行緒上執行，所以執行的時候，其它正在執行緒上跑的block都會排隊執行。&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;code&gt;
dispatch_queue_t mainQueue = dispatch_get_main_queue();&lt;br /&gt;
&amp;nbsp; &amp;nbsp; dispatch_async(mainQueue, ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run1];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; dispatch_async(dispatch_get_main_queue(), ^(){&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [self run2];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; });&lt;br /&gt;
&amp;nbsp; &amp;nbsp; });&lt;/code&gt;
&lt;br /&gt;
執行結果&lt;br /&gt;
&lt;code&gt;
Run1:0&lt;br /&gt;
Run1:1&lt;br /&gt;
Run1:2&lt;br /&gt;
Run1:3&lt;br /&gt;
Run1:4&lt;br /&gt;
*Run2:0&lt;br /&gt;
*Run2:1&lt;br /&gt;
*Run2:2&lt;br /&gt;
*Run2:3&lt;br /&gt;
*Run2:4&amp;nbsp;&lt;/code&gt;
&lt;br /&gt;
後續還有Group of Queue，待我研究後補上。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
參考資料&lt;br /&gt;
&lt;a href=&quot;http://www.dreamingwish.com/article/gcd%E4%BB%8B%E7%BB%8D%EF%BC%88%E4%B8%80%EF%BC%89-%E5%9F%BA%E6%9C%AC%E6%A6%82%E5%BF%B5%E5%92%8Cdispatch-queue.html&quot;&gt;GCD介绍（一）: 基本概念和Dispatch Queue&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://psvsps2.blogspot.tw/2010/04/gcd.html&quot;&gt;Austin&#39;s study note - 多工筆記 (GCD)&lt;/a&gt;&lt;/div&gt;
</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/3561902352973272603/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/3561902352973272603' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3561902352973272603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3561902352973272603'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2014/10/gcd-dispatchqueue.html' title='GCD - dispatch_queue的基本用法'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-810094558684589048</id><published>2014-09-17T00:45:00.002+08:00</published><updated>2014-10-06T17:53:34.545+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iOS程式開發"/><title type='text'>Xcode 6 建立 Universal Static Library 的方法</title><content type='html'>有時候一個專案裡，常會加入自已常用的Framework，這些有可能是Open Source，或是別人分享的程式。&lt;br /&gt;
&lt;br /&gt;
這時候會希望把他包成一個檔案較好管理，也方便在其他專案裡，同步更新。&lt;br /&gt;
&lt;br /&gt;
這次就來說說如何在Xcode 6裡製作靜態函式庫(Static Library)。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
1.首先，新建一個專案，選Cocoa Touch Static Library。&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDWYYRLReljzwjriMyIKq4EB3_qJ3s-ItgH1cqbvQhL0N-h3ruJPcaALLGW3PoRkDbeenZK0zYJJ6jgZglgmNLUeX8uJrtA32UOgCR8tbjQ2hhr18SllFqlg85qw8PjXabN0sPJJinpJk/s1600/Blog-cocoa+touch+static+01.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDWYYRLReljzwjriMyIKq4EB3_qJ3s-ItgH1cqbvQhL0N-h3ruJPcaALLGW3PoRkDbeenZK0zYJJ6jgZglgmNLUeX8uJrtA32UOgCR8tbjQ2hhr18SllFqlg85qw8PjXabN0sPJJinpJk/s1600/Blog-cocoa+touch+static+01.png&quot; height=&quot;232&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;span style=&quot;text-align: start;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
2.然後寫好你要獨立在Library的程式，設定要支援的iOS SDK版本，分別發佈Simulator和Device版。&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1OkEGPsJ9oj3gykDbX-NlpWWN8W5rIvjXRkq5oALAFGBysxchKbRTWnsgXCBBVdwByqdB0uiLJwdRlwHzcI8-M4j0akfwHGg7u5J4foi_M2nwdebIWUlpByihpKCFV-rRgbFzV2POY-E/s1600/Blog-cocoa+touch+static+02.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1OkEGPsJ9oj3gykDbX-NlpWWN8W5rIvjXRkq5oALAFGBysxchKbRTWnsgXCBBVdwByqdB0uiLJwdRlwHzcI8-M4j0akfwHGg7u5J4foi_M2nwdebIWUlpByihpKCFV-rRgbFzV2POY-E/s1600/Blog-cocoa+touch+static+02.png&quot; height=&quot;121&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
3.在Build Phases-&amp;gt;Copy Files，加入你要讓人別人呼叫的.h檔。&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3NDGY1M9vNruatUqeQsfBDRExmnuJCHQbHtsxRwr4jGzj9-A67ut2fch5H-2vLQ9_NBA_QLDm9Fed5lddBvD592y31PP9oWIBxDQzXWlEPZWFkYCd-56Mk452vZNdRsS0offkAW8U9Pw/s1600/Blog-cocoa+touch+static+03.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi3NDGY1M9vNruatUqeQsfBDRExmnuJCHQbHtsxRwr4jGzj9-A67ut2fch5H-2vLQ9_NBA_QLDm9Fed5lddBvD592y31PP9oWIBxDQzXWlEPZWFkYCd-56Mk452vZNdRsS0offkAW8U9Pw/s1600/Blog-cocoa+touch+static+03.png&quot; height=&quot;150&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
4.接下來在Product資料夾打開你Build好的資料夾&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMKG8phw7qDS5vO0A1czF6J2Ys9e-TP0dTxFWheuQ7ragdDR5rpm1CFsZJbRfK9bhmrxbv0m3K1b1DsztUzUFPc51elWt-HCjq-ClTvUAwt8reo9HvN1RjDBvKPReUhlTxWsEFFaR5j1o/s1600/Blog-cocoa+touch+static+04.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhMKG8phw7qDS5vO0A1czF6J2Ys9e-TP0dTxFWheuQ7ragdDR5rpm1CFsZJbRfK9bhmrxbv0m3K1b1DsztUzUFPc51elWt-HCjq-ClTvUAwt8reo9HvN1RjDBvKPReUhlTxWsEFFaR5j1o/s1600/Blog-cocoa+touch+static+04.png&quot; height=&quot;320&quot; width=&quot;252&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div&gt;
5.新建一個資料夾，分別把.a檔取名為youlibrary_simulator.a和youlibrary_device.a&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
6.然後用終端機打開這個資料夾，輸入以下命令，製作一個Universal的Static Library&lt;/div&gt;
&lt;code&gt;
lipo -create &quot;youlibrary_simulator.a&quot; &quot;youlibrary_device.a&quot; -output &quot;youlibrary_universal.a&quot;
&lt;/code&gt;
7.將youlibrary_universal.a Add進你要用的應用程式專案。&lt;br /&gt;
&lt;br /&gt;
8.在你的應用程式專案裡，打開Build Settings-&amp;gt;Other Linker Flags，輸入「-Objc」。&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMoq-wwVUwh-r6rti7L3WuBCVSUkdIWMDjqNh6wJvQtEbufkP9tyWAOvtB79W1qj5SHridtyfKhBM01g0ZWi952wSXEwTj0nIehuIDNuwzUh3q-tp9Vm_j-IY0nsuAKoBzh_uC3v15KuA/s1600/Blog-cocoa+touch+static+05.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em; text-align: center;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMoq-wwVUwh-r6rti7L3WuBCVSUkdIWMDjqNh6wJvQtEbufkP9tyWAOvtB79W1qj5SHridtyfKhBM01g0ZWi952wSXEwTj0nIehuIDNuwzUh3q-tp9Vm_j-IY0nsuAKoBzh_uC3v15KuA/s1600/Blog-cocoa+touch+static+05.png&quot; height=&quot;138&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
9.大功告成，之後就可以在.m檔裡import &quot;youlibrary.h&quot;使用你製作的Library囉！&lt;br /&gt;
&lt;br /&gt;
尤於靜態函式庫是一個.a檔，看不到裡面的標頭檔有那些，所以如果團隊中其它人要使用的話，還是要寫個說明文件，方便其它開發者閱讀。&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXiCE1M2ds15Dui5V0PecxkN2yetVC1se1QZCVbeUlQtDVT0RSo_zieMRrb4heRn7G9plLibG9TecpDuPlpbmPzxvz31sY3P-k9_v-rqnDFTEffkEMAWhRTjQH0cldRuActRRNjIXi8lw/s1600/Blog-cocoa+touch+static+06.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhXiCE1M2ds15Dui5V0PecxkN2yetVC1se1QZCVbeUlQtDVT0RSo_zieMRrb4heRn7G9plLibG9TecpDuPlpbmPzxvz31sY3P-k9_v-rqnDFTEffkEMAWhRTjQH0cldRuActRRNjIXi8lw/s1600/Blog-cocoa+touch+static+06.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/810094558684589048/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/810094558684589048' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/810094558684589048'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/810094558684589048'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2014/09/xcode-static-library-universal-framework.html' title='Xcode 6 建立 Universal Static Library 的方法'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgDWYYRLReljzwjriMyIKq4EB3_qJ3s-ItgH1cqbvQhL0N-h3ruJPcaALLGW3PoRkDbeenZK0zYJJ6jgZglgmNLUeX8uJrtA32UOgCR8tbjQ2hhr18SllFqlg85qw8PjXabN0sPJJinpJk/s72-c/Blog-cocoa+touch+static+01.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-6597124608356912924</id><published>2014-09-09T14:57:00.000+08:00</published><updated>2014-09-09T14:57:04.954+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iOS程式開發"/><title type='text'>[iOS] iOS App在Testflight上，接收Remote Push Notification的方法</title><content type='html'>通常在處理Remote Push Notification的功能時，一定會先用自已的實機測試，也就是用XCode直接Build進iOS裝置做測試，這時候需要一個develope的pem來做為發送的憑證，然後等到實際上架後，再做1個Distribution的給正式上線的App使用。&lt;br /&gt;
&lt;br /&gt;
但如果也要給別的使用者測試，諸如老闆、主管之類的，總不可能一個一個排隊來用XCode Build，會起肖，所以用Testflight(以下簡稱：TF)的服務可以幫我解決這個問題。&lt;br /&gt;
&lt;br /&gt;
然後，沒有Remote Push Notification的App還算容易搞，發佈可以直上TF。但有的話，該怎麼辦？其實還是可以的。&lt;br /&gt;
&lt;br /&gt;
因為要上TF時，一定要用發佈的Provisioning Profiles，所以就直接在Apple後台(&lt;a href=&quot;https://developer.apple.com/&quot;&gt;iOS Dev Center&lt;/a&gt;)建1個&lt;span style=&quot;color: #cc0000;&quot;&gt;&lt;b&gt;專屬這個App用在TF的Distrubution&lt;/b&gt;&lt;/span&gt;，這個新建的Distrubution Profile發佈的時候要選擇&lt;span style=&quot;color: #cc0000;&quot;&gt;Ad Hoc&lt;/span&gt;，不是App Store，否則最後不會出現Select Devices的頁面讓你勾選那個裝置可以裝，切記。&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQwQ5BolCxJYCqZ1eI6S3Q436zZn1Avdr67x-jfeeSHf27P_kk-VlCZkL72_wZ6KPAZoRYAzVfkDwgZl78C5ESzpc-xtAUjgAmgWHO-9f6TX9mPoD7aoskVJ7k_8xa73bwCkxu3XUXppI/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-09-09+%E4%B8%8B%E5%8D%882.49.23.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQwQ5BolCxJYCqZ1eI6S3Q436zZn1Avdr67x-jfeeSHf27P_kk-VlCZkL72_wZ6KPAZoRYAzVfkDwgZl78C5ESzpc-xtAUjgAmgWHO-9f6TX9mPoD7aoskVJ7k_8xa73bwCkxu3XUXppI/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-09-09+%E4%B8%8B%E5%8D%882.49.23.png&quot; height=&quot;116&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Distribution的類別&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgq-XHMa7KUxXzJhsiK37lxWiikTyo23KNeKxkk69RU1q1ztQOVZOi-qNHWY5IMpYsnTeZsYB6xerS-iMQmusNpFtXW-ti_eH-FgcavOgeB_NNALyCMcY0wJYrQuJa6b4ZsEUn6BiYFJ5Y/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-09-09+%E4%B8%8B%E5%8D%882.49.53.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgq-XHMa7KUxXzJhsiK37lxWiikTyo23KNeKxkk69RU1q1ztQOVZOi-qNHWY5IMpYsnTeZsYB6xerS-iMQmusNpFtXW-ti_eH-FgcavOgeB_NNALyCMcY0wJYrQuJa6b4ZsEUn6BiYFJ5Y/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-09-09+%E4%B8%8B%E5%8D%882.49.53.png&quot; height=&quot;110&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
Select Devices-選擇那些裝置可以安裝App&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
好了，建好專屬的Distrubution Profile，下載丟到XCode去，再Archive一次吧，這樣就可以丟到TF上測試Remote Push Notification了。</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/6597124608356912924/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/6597124608356912924' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/6597124608356912924'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/6597124608356912924'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2014/09/ios-ios-apptestflightremote-push.html' title='[iOS] iOS App在Testflight上，接收Remote Push Notification的方法'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQwQ5BolCxJYCqZ1eI6S3Q436zZn1Avdr67x-jfeeSHf27P_kk-VlCZkL72_wZ6KPAZoRYAzVfkDwgZl78C5ESzpc-xtAUjgAmgWHO-9f6TX9mPoD7aoskVJ7k_8xa73bwCkxu3XUXppI/s72-c/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-09-09+%E4%B8%8B%E5%8D%882.49.23.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-5638699946773818744</id><published>2014-08-26T14:05:00.001+08:00</published><updated>2014-08-26T14:05:35.561+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Android"/><title type='text'>Android GCM(Google Cloud Messaging) Client&amp;Server端建置筆記</title><content type='html'>&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;最低需求2.3&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;模擬器測試最低需求4.2.2&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;b&gt;1.Google API Library下載&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;開發環境請先下載Google APIs的library，把&lt;/span&gt;&lt;span style=&quot;background-color: #f9f9f9; color: #232323; font-family: Helvetica; font-size: 14px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #f9f9f9; color: #006600; font-family: Courier; font-size: 13px;&quot;&gt;&lt;android-sdk&gt;/extras/google/google_play_services/libproject/google-play-services_lib/&lt;/android-sdk&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #f9f9f9; color: #232323; font-family: Helvetica; font-size: 14px;&quot;&gt;複製到你的專案資料夾底下，再Import進專案，File &amp;gt; Import, select Android &amp;gt; Existing Android Code into Workspace。可以參考&lt;/span&gt;&lt;span style=&quot;color: #042eee; font-family: Arial; font-size: 13px;&quot;&gt;&lt;u&gt;Android官方&lt;/u&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #232323; font-family: Helvetica; font-size: 14px;&quot;&gt;&lt;b&gt;2.在&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;color: #232323; font-family: Helvetica;&quot;&gt;&lt;span style=&quot;font-size: 14px;&quot;&gt;&lt;b&gt;AndroidManifest.xml，設定google api&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #232323; font-family: Helvetica; font-size: 14px;&quot;&gt;然後在AndroidManifest.xml裡的Application加入&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;meta-data&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;“com.google.android.gms.version&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:value&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;@integer/google_play_services_version&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;3.建立Google APIs專案，取得&lt;/span&gt;&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;伺服器應用程式的金鑰&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;請先到Google APIs建立專案給GCM用，並建立一組「伺服器應用程式的金鑰」，產生的金鑰用來讓PHP發送Message用的。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: x-small;&quot;&gt;&lt;a href=&quot;https://console.developers.google.com/project&quot;&gt;https://console.developers.google.com/project&lt;/a&gt;&lt;/span&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;b&gt;4.&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Arial; font-size: x-small;&quot;&gt;&lt;b&gt;設定AndroidManifest.xml&lt;/b&gt;&lt;/span&gt;&lt;b style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;新增App背景服務與權限&lt;/b&gt;&lt;br /&gt;

&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;在AndroidManifest.xml裡，設定以下權限&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;uses-permission&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;android.permission.INTERNET&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;uses-permission&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;android.permission.GET_ACCOUNTS&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;uses-permission&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;android.permission.WAKE_LOCK&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;uses-permission&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;com.google.android.c2dm.permission.RECEIVE&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;permission&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;“com.app.yourapp.permission.C2D_MESSAGE&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:protectionLevel&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;signature&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;uses-permission&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;“com.app.yourapp.permission.C2D_MESSAGE&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;在&lt;application&gt;&lt;/application&gt;裡面&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;同樣設定一些服務&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;receiver&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;.GcmBroadcastReceiver”&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:permission&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;com.google.android.c2dm.permission.SEND&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;intent-filter&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;action&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;com.google.android.c2dm.intent.RECEIVE&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;category&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;“com.app.yourapp&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;intent-filter&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;receiver=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9192; font-family: Monaco; font-size: 11px;&quot;&gt;service&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #932192; font-family: Monaco; font-size: 11px;&quot;&gt;android:name&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;.GcmIntentService&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #009193; font-family: Monaco; font-size: 11px;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;b&gt;5.主程式MainActivity&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;宣告一個字串，這串數字是Google APIs專案中的專案編號。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Monaco; font-size: 11px;&quot;&gt;String&lt;/span&gt;&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;SENDER_ID&lt;/span&gt;&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;font-family: Monaco; font-size: 11px;&quot;&gt;=&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;“123456789”&lt;/span&gt;&lt;span style=&quot;font-family: Monaco; font-size: 11px;&quot;&gt;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;在OnCreate加入，主要判斷是不是有playerServices，及App有沒有取得RegistrationId。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; context&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;= getApplicationContext(); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #4e9072; font-family: Monaco; font-size: 11px;&quot;&gt;//&amp;nbsp; GCM registration.&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #931a68; font-family: Monaco; font-size: 11px;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;(checkPlayServices()) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;gcm&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;= GoogleCloudMessaging.getInstance(&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #931a68; font-family: Monaco; font-size: 11px;&quot;&gt;this&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;regid&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;= getRegistrationId(&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;context&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #931a68; font-family: Monaco; font-size: 11px;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;regid&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;.isEmpty()) { &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; registerInBackground(); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d(&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;TAG&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;Regid&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;+&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;regid&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #931a68; font-family: Monaco; font-size: 11px;&quot;&gt;else&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;{ &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Log.d(&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #0326cc; font-family: Monaco; font-size: 11px;&quot;&gt;TAG&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;,&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #3933ff; font-family: Monaco; font-size: 11px;&quot;&gt;&quot;No valid Google Play Services APK found.&quot;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Monaco; font-size: 11px;&quot;&gt;); &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;新增GcmIntentService繼承IntentService， 處理App通知收到後要做什麼事。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;實際程式碼請參考&lt;/span&gt;&lt;span style=&quot;color: #042eee; font-family: Arial; font-size: 13px;&quot;&gt;&lt;u&gt;Android Developer&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;新增GcmBroadcastReceiver繼承WakefulBroadcastReceiver， 這支程式要幹嘛不曉得，應該是常駐在背景，等待接收通知用的(請有緣人解釋給我聽)。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;b&gt;6.完成以上步驟，實際測試。&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;也可以用Simulator測試，只要把Simulator的Target設定成Google Api即可。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;b&gt;7.PHP Server端原始碼&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// The recipient registration IDs&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// that will receive the push&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// (Should be stored in your DB)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Read about it here:&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #042eee; font-family: Arial; font-size: 13px;&quot;&gt;&lt;u&gt;http://developer.android.com/google/gcm/&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;$data = array(&#39;title&#39; =&amp;gt; $title, &#39;message&#39; =&amp;gt; $message );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;$ids = array($registration_id);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Call our custom GCM function&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;sendGoogleCloudMessage(&amp;nbsp; $data, $ids );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Define custom GCM function&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;function sendGoogleCloudMessage( $data, $ids )&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Replace with real GCM API&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// key from Google APIs Console&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// &lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #042eee; font-family: Arial; font-size: 13px;&quot;&gt;&lt;u&gt;https://code.google.com/apis/console/&lt;/u&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;span style=&quot;background-color: #fffaa5;&quot;&gt;$apiKey = &#39;金鑰&#39;; // 貼上&lt;/span&gt;&lt;b&gt;&lt;span style=&quot;background-color: #fffaa5;&quot;&gt;步驟3的&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc;&quot;&gt;「&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fff2cc; font-family: Arial; font-size: 13px;&quot;&gt;伺服器應用程式的金鑰」&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Define URL to GCM endpoint&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;$url = &#39;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; color: #042eee; font-family: Arial; font-size: 13px;&quot;&gt;&lt;u&gt;https://android.googleapis.com/gcm/send&lt;/u&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;&#39;;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Set GCM post variables&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// (Device IDs and push payload)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;$post = array(&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;&#39;registration_ids&#39;&amp;nbsp; =&amp;gt; $ids,&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;&#39;data&#39;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; $data,&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Set CURL request headers&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// (Authentication and type)&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;$headers = array(&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;&#39;Authorization: key=&#39; . $apiKey,&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;&#39;Content-Type: application/json&#39;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;);&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Initialize curl handle&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;$ch = curl_init();&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Set URL to GCM endpoint&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;curl_setopt( $ch, CURLOPT_URL, $url );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Set request method to POST&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;curl_setopt( $ch, CURLOPT_POST, true );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Set our custom headers&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Get the response back as&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// string instead of printing it&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Set post data as JSON&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode( $post ) );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Actually send the push!&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;$result = curl_exec( $ch );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Error? Display it!&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;if ( curl_errno( $ch ) )&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;{&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;echo &#39;GCM error: &#39; . curl_error( $ch );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Close curl handle&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;curl_close( $ch );&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;// Debug GCM response&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;//------------------------------&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;echo $result;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: #fffaa5; font-family: Arial; font-size: 13px;&quot;&gt;}&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial; font-size: 13px;&quot;&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/5638699946773818744/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/5638699946773818744' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/5638699946773818744'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/5638699946773818744'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2014/08/android-gcmgoogle-cloud-messaging-client.html' title='Android GCM(Google Cloud Messaging) Client&amp;Server端建置筆記'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-3087380397966558032</id><published>2014-07-15T16:59:00.000+08:00</published><updated>2014-07-15T16:59:28.329+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Unity"/><title type='text'>Unity使用JSONObject解析json資料</title><content type='html'>最近又要用到Json跟網路的功能，來做連線程式，於是找了一下Unity如何處理Json的方法。&lt;br /&gt;
&lt;br /&gt;
我使用JSONObject來parser的函式庫，可以自行到Asset Store找下來安裝即可，免費的喔！&lt;br /&gt;
&lt;br /&gt;
簡單講一下怎麼操作，分為Encoding與Decoding&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Encoding&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
string ourPostData = &quot;{\&quot;Name\&quot;:\&quot;Awei\&quot;}&quot;;&amp;nbsp;&lt;/blockquote&gt;
假設你有一串Json的字串，如何轉成JSONObject呢？&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
JSONObject encodingObject = new JSONObject (JSONObject.Type.OBJECT);&lt;br /&gt;encodingObject.AddField (&quot;ID&quot;,1);&lt;br /&gt;encodingObject.AddField (&quot;Name&quot;, &quot;Awei&quot;);&lt;br /&gt;encodingObject.AddField (&quot;Age&quot;, &quot;18&quot;);&lt;br /&gt;print (&quot;Hello : &quot; + q[&quot;Name&quot;]);&lt;/blockquote&gt;
執行結果&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
Hello : Awei&lt;/blockquote&gt;
&lt;br /&gt;
說明&lt;br /&gt;
&lt;br /&gt;
第1行宣告1個JSONObject的物件，宣告同時，指定是一個空物件。&lt;br /&gt;
第2~4行把值塞入空物件，可以塞數值、字串或是陣列。&lt;br /&gt;
第5行將值讀出。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&lt;span style=&quot;font-size: large;&quot;&gt;Decoding&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
string ourPostData = &quot;{\&quot;Name\&quot;:\&quot;Awei\&quot;}&quot;;&amp;nbsp;&lt;/blockquote&gt;
假設你有一串Json的字串，如何轉成JSONObject呢？&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
JSONObject output = new JSONObject(ourPostData);&lt;br /&gt;print (output[&quot;Name&quot;]);&lt;/blockquote&gt;
執行結果&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
Awei&lt;/blockquote&gt;
&lt;br /&gt;
說明&lt;br /&gt;
&lt;br /&gt;
第1行就是宣告1個JSONObject的物件，宣告同時，把json的字串帶入。&lt;br /&gt;
第2行就是印出output的物件，宣告的物件是1個陣列，可以帶Key的名字(ex:Name, Age)，或是指定索引值(ex:0,1,2)，取得該陣列的值。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
用法大概是以上這樣，我是拿來做網路傳資料使用，所以在送出時，我需要把資料做Encoding然後處理成byte[]給網路去傳送，傳送的時候，直接在jsonobject後面加上.ToString()，即可轉成字串，丟給網路處理了；而接收的時候，就是使用Decoding將回傳的資料做解譯。&lt;br /&gt;
&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/3087380397966558032/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/3087380397966558032' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3087380397966558032'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3087380397966558032'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2014/07/unityjsonobjectjson.html' title='Unity使用JSONObject解析json資料'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-9029017916672498612</id><published>2014-07-15T16:35:00.001+08:00</published><updated>2014-07-15T16:35:19.933+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Unity"/><title type='text'>NGUI ScrollView加Button後不能拖拉的問題</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
在NGUI的ScrollView中，如果你的ScrollView有設定可以拖拉的話，當你又加入了Button到ScrollView，這時候你會發現，Button可以按，但ScrollView卻不能Drag了。&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
原因是BoxCollider，當我把Button的BoxCollider關閉就正常了，滿奇怪的原因。&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
而我目前解決的方法是在Button裡在加入UIDrag Scroll View這個Script，然後把ScrollView設定好，此時，Button可按又可拖拉囉！&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJDbCqGuR3w4rezNaYditMreEGaHVfVAg0Pa9CUziV0U8lvQ-93jDPi6WwMFfag0qMDHV0LSbnsf5Mqj0_Ltt18f8HGCyLiXLEvHB-QaMH00D3PG94a_fGMIENENyW6OWDcdULy_aJaHA/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-07-15+%E4%B8%8B%E5%8D%884.04.04.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJDbCqGuR3w4rezNaYditMreEGaHVfVAg0Pa9CUziV0U8lvQ-93jDPi6WwMFfag0qMDHV0LSbnsf5Mqj0_Ltt18f8HGCyLiXLEvHB-QaMH00D3PG94a_fGMIENENyW6OWDcdULy_aJaHA/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-07-15+%E4%B8%8B%E5%8D%884.04.04.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaKgh0wzl-2PbSeg2GpjYFGP6SHeVZR1p5WhuTcXozeRZu7mLJ0ztR1-iW3HgqmCL8bDQwjRrSTAQQjbya8-tiAE0VfWTwGriVkL1JvgzCeTC7NUBPdWHFkKvWjmugk3rOV8roZdt1m1s/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-07-15+%E4%B8%8B%E5%8D%884.04.11.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgaKgh0wzl-2PbSeg2GpjYFGP6SHeVZR1p5WhuTcXozeRZu7mLJ0ztR1-iW3HgqmCL8bDQwjRrSTAQQjbya8-tiAE0VfWTwGriVkL1JvgzCeTC7NUBPdWHFkKvWjmugk3rOV8roZdt1m1s/s1600/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-07-15+%E4%B8%8B%E5%8D%884.04.11.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/9029017916672498612/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/9029017916672498612' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/9029017916672498612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/9029017916672498612'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2014/07/ngui-scrollviewbutton.html' title='NGUI ScrollView加Button後不能拖拉的問題'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJDbCqGuR3w4rezNaYditMreEGaHVfVAg0Pa9CUziV0U8lvQ-93jDPi6WwMFfag0qMDHV0LSbnsf5Mqj0_Ltt18f8HGCyLiXLEvHB-QaMH00D3PG94a_fGMIENENyW6OWDcdULy_aJaHA/s72-c/%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7+2014-07-15+%E4%B8%8B%E5%8D%884.04.04.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-7190934081672613193</id><published>2013-05-01T21:05:00.000+08:00</published><updated>2013-05-13T14:36:54.228+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iOS程式開發"/><title type='text'>iOS音樂背景播放功能</title><content type='html'>這陣子在處理iOS背景音樂播放的功能，筆記一下&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
1.在UIViewController裡加上:&amp;nbsp;&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
AVAudioSession *session = [AVAudioSession sharedInstance];&lt;br /&gt;
[session setCategory:AVAudioSessionCategoryPlayback error:nil];&lt;br /&gt;
[session setActive:YES error:nil];&amp;nbsp;&lt;/blockquote&gt;
&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;2.在 info.plist 中加上「&lt;/span&gt;required background modes」Key ,&amp;nbsp;&amp;nbsp;Value 選 App plays audio&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
3.若想要在螢幕鎖定或是多工列(按兩下Home)控制聲音播放的話，加上&lt;/div&gt;
&lt;div class=&quot;p2&quot;&gt;
&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
[[UIApplication&amp;nbsp;sharedApplication]&amp;nbsp;beginReceivingRemoteControlEvents];&amp;nbsp;&lt;/blockquote&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt; &lt;/span&gt;becomeFirstResponder&lt;span class=&quot;s1&quot;&gt;];&lt;/span&gt;&amp;nbsp;&lt;/blockquote&gt;
&lt;div class=&quot;p1&quot;&gt;
關閉加上&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
[[UIApplication&amp;nbsp;sharedApplication] endReceivingRemoteControlEvents];&amp;nbsp;&lt;/blockquote&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;self&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt; &lt;/span&gt;resignFirstResponder&lt;span class=&quot;s1&quot;&gt;];&lt;/span&gt;&lt;br /&gt;








&lt;/blockquote&gt;
&amp;nbsp;設定canBecaomFirstResponder為Yes&lt;br /&gt;








&lt;br /&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
- (&lt;span class=&quot;s1&quot;&gt;BOOL&lt;/span&gt;)canBecomeFirstResponder {&lt;br /&gt;&lt;span class=&quot;s2&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;NSLog&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;(&lt;/span&gt;@&quot;canBecomeFirstResponder&quot;&lt;span class=&quot;s2&quot;&gt;);&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&amp;nbsp; &amp;nbsp; &lt;/span&gt;return&lt;span class=&quot;s2&quot;&gt; &lt;/span&gt;YES&lt;span class=&quot;s2&quot;&gt;;&lt;/span&gt;}&lt;/blockquote&gt;
&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
4. 加控制的事件偵測&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
-(&lt;span class=&quot;s1&quot;&gt;void&lt;/span&gt;)remoteControlReceivedWithEvent:(&lt;span class=&quot;s2&quot;&gt;UIEvent&lt;/span&gt; *)receivedEvent{&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;if&lt;/span&gt; (receivedEvent.&lt;span class=&quot;s2&quot;&gt;type&lt;/span&gt; == &lt;span class=&quot;s3&quot;&gt;UIEventTypeRemoteControl&lt;/span&gt;) {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;switch&lt;/span&gt; (receivedEvent.&lt;span class=&quot;s2&quot;&gt;subtype&lt;/span&gt;) {&lt;br /&gt;
&lt;span class=&quot;s4&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt; &lt;/span&gt;UIEventSubtypeRemoteControlTogglePlayPause&lt;span class=&quot;s4&quot;&gt;:&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //開始or暫停&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;
&lt;span class=&quot;s4&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt; &lt;/span&gt;UIEventSubtypeRemoteControlPreviousTrack&lt;span class=&quot;s4&quot;&gt;:&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //上一首&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;
&lt;span class=&quot;s4&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt; &lt;/span&gt;UIEventSubtypeRemoteControlNextTrack&lt;span class=&quot;s4&quot;&gt;:&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //下一頁&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;
&lt;span class=&quot;s4&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt; &lt;/span&gt;UIEventSubtypeRemoteControlBeginSeekingBackward&lt;span class=&quot;s4&quot;&gt;:&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //長按後退鍵&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;
&lt;span class=&quot;s4&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;case&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt; &lt;/span&gt;UIEventSubtypeRemoteControlEndSeekingBackward&lt;span class=&quot;s4&quot;&gt;:&lt;/span&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //長按後退鍵結束&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //還有其他事件等你自已發掘&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;default&lt;/span&gt;:&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;break&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; }&lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
}&lt;/blockquote&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
5.可以加上以下這段，改變播放器的曲目資訊與專輯圖片&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
使用前請先&amp;nbsp;&lt;span class=&quot;s1&quot;&gt;import&amp;nbsp;&lt;/span&gt;MediaPlayer/MediaPlayer.h&lt;/blockquote&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
- (&lt;span class=&quot;s1&quot;&gt;void&lt;/span&gt;)configNowPlayingInfoCenter {&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span class=&quot;s2&quot;&gt;Class&lt;/span&gt; playingInfoCenter = &lt;span class=&quot;s3&quot;&gt;NSClassFromString&lt;/span&gt;(&lt;span class=&quot;s4&quot;&gt;@&quot;MPNowPlayingInfoCenter&quot;&lt;/span&gt;);&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;if&lt;/span&gt; (playingInfoCenter) {&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;span class=&quot;s8&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;MPNowPlayingInfoCenter&lt;span class=&quot;s8&quot;&gt; *center = [&lt;/span&gt;MPNowPlayingInfoCenter&lt;span class=&quot;s8&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;defaultCenter&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;];&lt;/span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;span class=&quot;s8&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;// 當&lt;span class=&quot;s9&quot;&gt;前播放歌曲的圖片&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;MPMediaItemArtwork&lt;span class=&quot;s8&quot;&gt; *artwork = [[&lt;/span&gt;MPMediaItemArtwork&lt;span class=&quot;s8&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;alloc&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;] &lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;initWithImage&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;:[&lt;/span&gt;UIImage&lt;span class=&quot;s8&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;imageNamed&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;@&quot;Album.png&quot;&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;]];&lt;/span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;span class=&quot;s8&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/span&gt;NSDictionary&lt;span class=&quot;s8&quot;&gt;*songInfo = [&lt;/span&gt;NSDictionary&lt;span class=&quot;s8&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s3&quot;&gt;dictionaryWithObjectsAndKeys&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;@&quot;專輯名稱&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s8&quot;&gt;, &lt;/span&gt;MPMediaItemPropertyArtist&lt;span class=&quot;s8&quot;&gt;,&lt;/span&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s4&quot;&gt;@&quot;專輯標題&lt;/span&gt;&lt;span class=&quot;s4&quot;&gt;&quot;&lt;/span&gt;, &lt;span class=&quot;s2&quot;&gt;MPMediaItemPropertyTitle&lt;/span&gt;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; artwork, &lt;span class=&quot;s2&quot;&gt;MPMediaItemPropertyArtwork&lt;/span&gt;,&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;@&quot;專輯介紹&quot;, &lt;span class=&quot;s2&quot;&gt;MPMediaItemPropertyAlbumTitle&lt;/span&gt;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class=&quot;s1&quot;&gt;nil&lt;/span&gt;];&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; center.&lt;span class=&quot;s2&quot;&gt;nowPlayingInfo&lt;/span&gt; = songInfo;&lt;br /&gt;
&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; }&lt;br /&gt;
}&lt;/blockquote&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
6.如果在Cocos2d裡想實現以上的功能，若有用到SimpleAudioEngine，請把以下程式碼插在步驟1.的程式碼之前，目的是讓SimpleAudioEngine暫停，不讓音效的資源佔住。&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;/div&gt;
&lt;blockquote class=&quot;tr_bq&quot;&gt;
&lt;span class=&quot;s1&quot;&gt;[&lt;/span&gt;SimpleAudioEngine&lt;span class=&quot;s1&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;end&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;];&lt;/span&gt;&lt;/blockquote&gt;
&lt;br /&gt;
以上，就可以很輕鬆的把這個功能加到應用程式裡面了。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/7190934081672613193/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/7190934081672613193' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7190934081672613193'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7190934081672613193'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2013/05/ios.html' title='iOS音樂背景播放功能'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-2420592187190828299</id><published>2013-01-14T21:02:00.002+08:00</published><updated>2013-01-14T21:02:44.467+08:00</updated><title type='text'>新年快樂2013</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv66jvuBi9PosBAbaMrKsth_jsO7EhO_UTvxFBkzm1wrs7Fo1HnTi1OSY8fjHxcCnTfRGsOahXWTelk73XRP4qMs0hEkM04WlSmPo4Q3YdevKod9K3f2gKHjcqYLxF217u9lnIl5DAmY8/s1600/Kenting_dragon.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv66jvuBi9PosBAbaMrKsth_jsO7EhO_UTvxFBkzm1wrs7Fo1HnTi1OSY8fjHxcCnTfRGsOahXWTelk73XRP4qMs0hEkM04WlSmPo4Q3YdevKod9K3f2gKHjcqYLxF217u9lnIl5DAmY8/s640/Kenting_dragon.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;br /&gt;
我又孝年一次了，今年跨年已經不是去人擠人、倒數321這麼麻煩了，而是在家看完電視後，衝去墾丁看日出，超瘋的啦！大家一定會以為我有看到日出，然後一路很順的玩回來！錯了，事情永遠不是想像的那麼簡單，當天實際的情形事…(遠望)&lt;br /&gt;
我們5個人一台車，瘋瘋顛顛的從台南往墾丁出發，途中一切都很順利，到了墾丁後，發現也滿多人跟我們一樣瘋瘋顛顛的準備去看日出。好吧，人多就要排隊上接駁車，當然，我們也很順利的坐上接駁車上山前往龍磐公園，從鵝鑾鼻公園出發大約5分鐘的車程，很快就到了，到了公園後，也很順利的搶到了心目中的好位置、架好架腳，坐在地上等待2013年的第一道曙光，雖然當時的風超大，溫度有點低，但依然不減我們的興致。&lt;br /&gt;
時間接近太陽升起的時間，約莫6:10，天空漸漸的亮起，我也把相機準備好迎接聖光。眼看時間快到了，就在此時，所有的群眾突然開始往另一個方向移動，咦？不是會在我們正前方升起嗎？怎麼太陽會臨時決定從另一個地方升起，情報錯誤，剛剛的位置都白佔了，只好趕緊剛著跑到太陽的方向，繼續等待聖光的到來。&lt;br /&gt;
已經6:30分了，就在主持人倒數完5 4 3 2 1…的同時，我的心情也跟著down到了谷底，馬的B，雲層厚的跟棉花糖一樣，看得到太陽才有鬼咧，這時我的心情又浮現了另一個念頭，為何我現在在這裡吹風當傻子，決定在家睡覺不是更好嗎。俗話說的好，既有的事實改變不了，就改變自已的心境去接受它吧(其實心裡還是很嘟爛…)，就走出去坐接駁車下山吧！&lt;br /&gt;
好了，故事講到這邊，從看不到日出開始，一連串的惡夢要來了。&lt;br /&gt;
人人人、人人人，那來這麼多人啊！要走10分鐘才走到開始排隊的地方，一行人決定，走下山…拖著疲備的身軀和扁扁的巴豆，走了1個小時，終於走到山下停車的地方。耶…終於可以坐車開始接下來的行程了，雖然沒看到日出，但至少來了墾丁，就暫時把聖光沒出現的事實擺一邊吧，開始今天的旅程囉！&lt;br /&gt;
碰…關好車門…發發發發發、發發發發發、發發發發發不動…怎麼發就是發不動，挫賽，車壞了發不起來，拎老師卡好咧，這三小朋友，日出沒看到就算了，車子也發不動，這三小朋友啦！無奈，只好找師傅來修了，幸好當時是已經是八點多了，找到當地的保養廠看了之後，說要拖回保養廠才能修，拖就拖吧，該修的也是要修，不然也回不了台南，就這樣，車修好後，時間也到了下午的1點。耶…沒錯，是1點，有夠餓的啦，過程中，我們只吃了一個簡單的漢堡跟紅茶，也斷斷續續的在等待的時間中補眠。&lt;br /&gt;
當時，在既定的行程中安排了去東港吃海產，所以當車一修好就立馬衝去東港，來吃個海鮮大餐，給它好好補充一下體力，至少讓這次的行程有夠漂亮的Ending。但真的事與願違，到了海產店後，被告知說，店家下午休息！.........拎老師咧…翻桌，又泡湯了。&lt;br /&gt;
&lt;br /&gt;
最後，一群人帶著睡不飽、吃不到、沒看到的心情回到了台南。&lt;br /&gt;
&lt;br /&gt;
下個結論，2013年的1月1日不適合出遊，適合在家睡著，但我卻跑了出去，享受了這一切的帶賽之旅。&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/2420592187190828299/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/2420592187190828299' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/2420592187190828299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/2420592187190828299'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2013/01/2013.html' title='新年快樂2013'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiv66jvuBi9PosBAbaMrKsth_jsO7EhO_UTvxFBkzm1wrs7Fo1HnTi1OSY8fjHxcCnTfRGsOahXWTelk73XRP4qMs0hEkM04WlSmPo4Q3YdevKod9K3f2gKHjcqYLxF217u9lnIl5DAmY8/s72-c/Kenting_dragon.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-4014510895483878510</id><published>2012-05-05T22:35:00.001+08:00</published><updated>2012-05-10T10:49:20.155+08:00</updated><title type='text'>開店與創業的理念</title><content type='html'>&lt;br /&gt;
&lt;div class=&quot;p1&quot;&gt;
創業就好像開店，目的都是去滿足顧客的需求，這中間，就要不斷的去調整你的產品以符合你的顧客，讓它成為一個循環，變成一門生意。&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
為什麼會突然打這些，因為最近我一個高中同學開店，在開幕的第二個禮拜，我就去找他一起聊聊天，畢竟當高中同學開店，這是我人生中的頭一遭，就像你出社會後，第一次聽到你的同學要結婚了的那樣驚訝。&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;p1&quot;&gt;
在跟他聊天的過程，發現開店和創業是一樣的，都是在「解決問題」；嗯，還沒說我同學開什麼店，他開的是冰品店，裡面除了冰還有賣熱食類商品，當然賣什麼產品不是重點，重點在於他在當老闆的過程裡，我看到他必須要去「想」目前遇到什麼問題，該怎樣「解決」它。譬如，如何提升店的名氣？食物是否符合客人口味？剩下的沒賣出的食物該如何處置？…&lt;br /&gt;
&lt;br /&gt;
於是在這過程中我發現了一個重點…「試」。除了試，還是試，一直試到多數顧客滿意的口味，一直試到店的名聲提高了，一直試到你心目中理想的方法。就跟創業一樣，很多產品你不做出來，不丟到市場上去受考驗，是不知道產品是不是符合使用者需求，或解決使用者的問題，所以你能做的就是試，然後逐步修正，即使不論是吃的、喝的、用的，公司的產品都要經歷過一個產品循環修正的過程，只是得到回應的速度快或慢之別了。&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/4014510895483878510/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/4014510895483878510' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/4014510895483878510'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/4014510895483878510'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2012/05/blog-post.html' title='開店與創業的理念'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-8627478648086137344</id><published>2012-03-06T10:25:00.003+08:00</published><updated>2012-03-06T10:46:52.817+08:00</updated><title type='text'>小蝦蝦並不想戰大鯨鯨，只是想做好服務</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-jYT60piRnsSZ0E47ngnTtIMR_wJgvO_Gb0pQGX3mP1rhrAYFmFu2WRDSdl5UlPAYWSsuKVijhlJhiQXMICtw8WTQAMVKCeABizP3ghQore21v0KNmT2B9debQSFyq6IzEsODElfnmXM/s1600/IMG_4202.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;424&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-jYT60piRnsSZ0E47ngnTtIMR_wJgvO_Gb0pQGX3mP1rhrAYFmFu2WRDSdl5UlPAYWSsuKVijhlJhiQXMICtw8WTQAMVKCeABizP3ghQore21v0KNmT2B9debQSFyq6IzEsODElfnmXM/s640/IMG_4202.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;span style=&quot;font-family: Arial, sans-serif; font-size: x-small;&quot;&gt;&lt;span style=&quot;line-height: 18px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial, sans-serif; font-size: x-small;&quot;&gt;&lt;span style=&quot;line-height: 18px;&quot;&gt;新舊事物難免有衝突，遵尋讓用戶使用好的服務原則下，就可以讓創新服務繼續活下去。不過社會的底下是由人組成的，是人，就難免為了自已的利益而損害別人的利益，而無視於好的原則，變成大吃小，食物鏈的慘忍事件。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-family: Arial, sans-serif; font-size: x-small;&quot;&gt;&lt;span style=&quot;line-height: 18px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;讓我們轉換到音樂這個領域，從過去的網路服務歷史來看，它一直都和網路科技有衝突，問題大多是&amp;nbsp;&lt;strike&gt;利益&lt;/strike&gt; 版權所產生，如果當初沒有ezpeer的初試啼聲(結果是當時唱片業群起踏伐)，也不會有後來收費的KKBOX和ezpeer，背後若沒有足夠的資源當後盾，來面對未來種種法律或版權等問題的話，小蝦米實在很難戰勝大鯨魚。&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;Now.in事件可以看出台灣的創業環境還有許多進步的空間，否則未來即使有更好的創新服務，開發者寫完程式後，要開始擔心某天會不會有陌生人到你房間命令你把服務關閉。再從創新服務的角度來看，音樂開始往社群和分享機制前進，KKBox和ezpeer音樂串流服務是否已經不能滿足社群和分享的需求了呢？這或許是另一個商機，就有待另個心臟大的創新者來開拓。&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;background-color: white; color: #0d0d0d; font-family: &#39;Helvetica Neue&#39;, Arial, 微軟正黑體, &#39;Microsoft JhengHei&#39;, 新細明體, &#39;Lucida Grande&#39;, &#39;Lucida Sans Unicode&#39;, sans-serif; line-height: 26px; text-align: left;&quot;&gt;Now.in 創辦人&amp;nbsp;&lt;/span&gt;Victor&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;background-color: white; font-family: Arial, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;&lt;a href=&quot;http://blog.ez2learn.com/2012/03/05/%E6%9B%BE%E7%B6%93%EF%BC%8C%E6%88%91%E6%9C%89%E5%80%8B%E5%A4%A2%E6%83%B3/&quot;&gt;曾經，我有個夢想….&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: x-small;&quot;&gt;MR Jamie &amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;a href=&quot;http://mrjamie.cc/2012/03/06/now-in/&quot;&gt;&lt;span id=&quot;goog_222279533&quot;&gt;&lt;/span&gt;YouTube、土豆網與 Now.in 的不同&lt;span id=&quot;goog_222279534&quot;&gt;&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/8627478648086137344/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/8627478648086137344' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/8627478648086137344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/8627478648086137344'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2012/03/ezpeerkkboxezpeer-now.html' title='小蝦蝦並不想戰大鯨鯨，只是想做好服務'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-jYT60piRnsSZ0E47ngnTtIMR_wJgvO_Gb0pQGX3mP1rhrAYFmFu2WRDSdl5UlPAYWSsuKVijhlJhiQXMICtw8WTQAMVKCeABizP3ghQore21v0KNmT2B9debQSFyq6IzEsODElfnmXM/s72-c/IMG_4202.JPG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-5527118974623269543</id><published>2012-01-28T23:04:00.000+08:00</published><updated>2012-02-19T23:04:41.847+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="心情"/><title type='text'>讓自已休息一下</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7VMpRCjVyjRjplCcsb5KVH7ANLNGgyiu47hATiBqZT5_lLJaYAzZhiRUQ3ZiiiLZDUx_A3mIcUlDyWLcVVUIKNNM0HAwDUySSWYZtsqhu00X4H-XTdXqyt0uAaLncZVBzuhuV6sJRgU8/s1600/%E6%82%A0%E9%96%92%E4%B8%8B%E5%8D%880128.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7VMpRCjVyjRjplCcsb5KVH7ANLNGgyiu47hATiBqZT5_lLJaYAzZhiRUQ3ZiiiLZDUx_A3mIcUlDyWLcVVUIKNNM0HAwDUySSWYZtsqhu00X4H-XTdXqyt0uAaLncZVBzuhuV6sJRgU8/s1600/%E6%82%A0%E9%96%92%E4%B8%8B%E5%8D%880128.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
來杯星巴克，偶爾享受一下悠閒的星期六下午，接下來一個星期都可以有滿滿的活力！&lt;br /&gt;
&lt;br /&gt;
在店裡，看著店外的行人和路上的車，想起自已過去一個星期也是這麼忙著，除了為別人努力工作之外，當一下自已的主人，也給自已的身體和心靈慰勞一下。休息，是為了走更長遠的路，停下來，順便想想未來走的路是否正確，休息才有意義，否則，只是瞎忙。&lt;br /&gt;
&lt;br /&gt;
當你生活開始變的無趣時，就試著用別人的角度，去體驗他幾個小時的生活，或許，你可以得到新的靈感，充實自已漸漸空虛的靈魂，同樣一天都是24小時再過，有人可以過的很精彩，有人卻虛度光陰，你呢？是那一種？</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/5527118974623269543/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/5527118974623269543' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/5527118974623269543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/5527118974623269543'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2012/01/blog-post_7825.html' title='讓自已休息一下'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj7VMpRCjVyjRjplCcsb5KVH7ANLNGgyiu47hATiBqZT5_lLJaYAzZhiRUQ3ZiiiLZDUx_A3mIcUlDyWLcVVUIKNNM0HAwDUySSWYZtsqhu00X4H-XTdXqyt0uAaLncZVBzuhuV6sJRgU8/s72-c/%E6%82%A0%E9%96%92%E4%B8%8B%E5%8D%880128.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-6957532809739732427</id><published>2012-01-28T14:04:00.002+08:00</published><updated>2012-01-29T01:48:55.008+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="旅行"/><title type='text'>北海道蜜月</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiinUCN5zagesIKCDq3MwADKYuuW9PRq4_wsWbJ5Wdj0D3D_myIFw8-T3ZCX547xzJQRSYu1sOOnGddxTasgQxOQogLeNtP8eMC9oZAGvaG31YqQHn0kkTJdi0W76K4RcrEJMxN7CohZKc/s1600/%E5%8C%97%E6%B5%B7%E9%81%930103.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiinUCN5zagesIKCDq3MwADKYuuW9PRq4_wsWbJ5Wdj0D3D_myIFw8-T3ZCX547xzJQRSYu1sOOnGddxTasgQxOQogLeNtP8eMC9oZAGvaG31YqQHn0kkTJdi0W76K4RcrEJMxN7CohZKc/s1600/%E5%8C%97%E6%B5%B7%E9%81%930103.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
照片中的地點是北海道的小樽運河，也是我們去渡蜜月的地方。&lt;br /&gt;
&lt;br /&gt;
北國真的好美呀，整片白茫茫的雪和零下的低溫，超適合新婚夫妻去渡蜜月的。&lt;br /&gt;
&lt;br /&gt;
結婚之前，原本是想去大阪跟東京，跟本沒想說要到北海道渡蜜月，後來經友人的建議，推薦說北海道也不錯，然後再自已看看行程，真的覺得也不錯，安排好時間就去囉！&lt;br /&gt;
&lt;br /&gt;
相簿裡還有很多照片，想看的可以點進去看看。期待下去再去大阪跟東京啦…&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;background-color: #ea9999; color: #f3f3f3;&quot;&gt;Google+相簿 : 北海道蜜月之旅&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;https://plus.google.com/photos/112880147482818240911/albums/5695141113121826833&quot; style=&quot;background-color: white;&quot; target=&quot;_blank&quot;&gt;https://plus.google.com/photos/112880147482818240911/albums/5695141113121826833&lt;/a&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/6957532809739732427/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/6957532809739732427' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/6957532809739732427'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/6957532809739732427'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2012/01/blog-post_28.html' title='北海道蜜月'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiinUCN5zagesIKCDq3MwADKYuuW9PRq4_wsWbJ5Wdj0D3D_myIFw8-T3ZCX547xzJQRSYu1sOOnGddxTasgQxOQogLeNtP8eMC9oZAGvaG31YqQHn0kkTJdi0W76K4RcrEJMxN7CohZKc/s72-c/%E5%8C%97%E6%B5%B7%E9%81%930103.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-78545423693516781</id><published>2012-01-28T00:50:00.000+08:00</published><updated>2012-01-28T14:26:08.109+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="結婚"/><title type='text'>喜喜</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioDG07_ZzANAdGPzVvErnyEn4Iqdvqc5J0OMGaDu6Q3FmUC4TvDGeJc-UyUTiK5KjJ5ZKB7uqGMYrIXEbAXjqv2BMGy83SyczNreh9MA_dMH-OE10FGyagU5Nq1RpWlSTXJ1Tmix89Rr4/s1600/%E7%B5%90%E5%A9%9A%E5%AE%B4%E5%AE%A21203.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioDG07_ZzANAdGPzVvErnyEn4Iqdvqc5J0OMGaDu6Q3FmUC4TvDGeJc-UyUTiK5KjJ5ZKB7uqGMYrIXEbAXjqv2BMGy83SyczNreh9MA_dMH-OE10FGyagU5Nq1RpWlSTXJ1Tmix89Rr4/s1600/%E7%B5%90%E5%A9%9A%E5%AE%B4%E5%AE%A21203.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
終於到了緊張的時刻，參加許多次的婚宴，這次的主人輪到我了，真的有種很妙的感覺。看著桌上的謝卡和舞台上螢幕播放的影片，似乎也透過這種方式來加深了我&quot;真的結婚&quot;的潛意識，告訴我，讓我知道，我有個家庭了，我終於從父母親的手上長大成人，要開始獨立過自已的生活了。&lt;br /&gt;
&lt;br /&gt;
結婚，真的要有這些煩雜的過程，才會讓你記在心裡一輩子也不會忘，過程中，很辛苦，但結果很甜蜜！尤其看到許多認識和不認識的人給你祝福，那種甜甜的感覺，是經歷過的人才懂的。</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/78545423693516781/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/78545423693516781' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/78545423693516781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/78545423693516781'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2012/01/blog-post.html' title='喜喜'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEioDG07_ZzANAdGPzVvErnyEn4Iqdvqc5J0OMGaDu6Q3FmUC4TvDGeJc-UyUTiK5KjJ5ZKB7uqGMYrIXEbAXjqv2BMGy83SyczNreh9MA_dMH-OE10FGyagU5Nq1RpWlSTXJ1Tmix89Rr4/s72-c/%E7%B5%90%E5%A9%9A%E5%AE%B4%E5%AE%A21203.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-7768307721829773805</id><published>2011-11-11T22:55:00.000+08:00</published><updated>2012-01-28T14:14:29.712+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="結婚"/><title type='text'>文定之喜</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdp_CmV-7HodPi0EIblbeEkaa4IfU42h7sLrrQPoCj5nxF5RUffmOMfAP2UZClb63CXvFZYLeH_FbFkXWkJ_Gy0NNqqogKvFgDpr9qhZQm8zM7exZjNq8WYkbxZ3dtv9wQsMJjmYIRQFw/s1600/%25E8%25A8%2582%25E5%25A9%259A1029.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdp_CmV-7HodPi0EIblbeEkaa4IfU42h7sLrrQPoCj5nxF5RUffmOMfAP2UZClb63CXvFZYLeH_FbFkXWkJ_Gy0NNqqogKvFgDpr9qhZQm8zM7exZjNq8WYkbxZ3dtv9wQsMJjmYIRQFw/s1600/%25E8%25A8%2582%25E5%25A9%259A1029.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
郭小威，恭喜你呀，這天是你的大日子，準備進入人生的下一個階段了，沒錯，是準備，還沒走進去，12月後才是正式進入&lt;strike&gt;冰河期&lt;/strike&gt;甜蜜期，所以現在是準備期，好好的享受這段時間吧...XD。&lt;br /&gt;
話說，訂婚前的準備，該吵的沒少過，讓一個人成長不是因為經過訂婚這20分鐘，而是這20分鐘前的一個月準備時間，真的會讓人瘋狂兼抓狂，為了讓事情順利進行下去，讓大腦裡的理性大於情緒的經過是必須的，這才是主要讓一個人成長的原因。&lt;br /&gt;
原來能看到上面這張照片，是經過許多次的討論、安排時間、討論、安排時間、討論……就是這樣，所有的一切都是事前的準備，呼，怎麼感觸良多，我想結婚和宴客也一樣，再一個月就完成囉！</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/7768307721829773805/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/7768307721829773805' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7768307721829773805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7768307721829773805'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/11/blog-post.html' title='文定之喜'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhdp_CmV-7HodPi0EIblbeEkaa4IfU42h7sLrrQPoCj5nxF5RUffmOMfAP2UZClb63CXvFZYLeH_FbFkXWkJ_Gy0NNqqogKvFgDpr9qhZQm8zM7exZjNq8WYkbxZ3dtv9wQsMJjmYIRQFw/s72-c/%25E8%25A8%2582%25E5%25A9%259A1029.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-1339792165485298009</id><published>2011-10-11T00:22:00.002+08:00</published><updated>2011-10-11T11:19:55.600+08:00</updated><title type='text'>民國一百年10月10日~~永保安康車票</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjpqWSVXIHnD8DQ5Yk5wNlNO7ru6I7bOtD7U6dU1s6v9zjUULdkeJF7pcimunCiGR0bdxvYVsqkjAIjZjO0KyO3EN5cfbJ3MzV6F6h3ub2YmBSqh5N9rVZxkQSb_w7gb8iHJ6Mxl7tvpU/s1600/%25E4%25B8%2580%25E7%2599%25BE%25E5%25B9%25B410%25E6%259C%258810%25E6%2597%25A5%25E6%25B0%25B8%25E4%25BF%259D%25E5%25AE%2589%25E5%25BA%25B7.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjpqWSVXIHnD8DQ5Yk5wNlNO7ru6I7bOtD7U6dU1s6v9zjUULdkeJF7pcimunCiGR0bdxvYVsqkjAIjZjO0KyO3EN5cfbJ3MzV6F6h3ub2YmBSqh5N9rVZxkQSb_w7gb8iHJ6Mxl7tvpU/s1600/%25E4%25B8%2580%25E7%2599%25BE%25E5%25B9%25B410%25E6%259C%258810%25E6%2597%25A5%25E6%25B0%25B8%25E4%25BF%259D%25E5%25AE%2589%25E5%25BA%25B7.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
我也三八的買了五張車票，映景嘛！100年的10月10號不做些白痴的事怎麼對得起自已…&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj6AVwtpWuxoPE-MQO9QZrijoMcM8Kt2Lv3m89hTz7g7Up-3NoBQagaApUd5kPojQ0QrUavogL4-PDgBFW99r0_Mm0aqwF8VKWwuzPjWTjXdtsB_JlEGk9YggxAe7v5o_3htFuSE-nMTY/s1600/IMG_5390.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhj6AVwtpWuxoPE-MQO9QZrijoMcM8Kt2Lv3m89hTz7g7Up-3NoBQagaApUd5kPojQ0QrUavogL4-PDgBFW99r0_Mm0aqwF8VKWwuzPjWTjXdtsB_JlEGk9YggxAe7v5o_3htFuSE-nMTY/s640/IMG_5390.JPG&quot; width=&quot;425&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;好車票，不買嗎？&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/1339792165485298009/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/1339792165485298009' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/1339792165485298009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/1339792165485298009'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/10/blog-post_11.html' title='民國一百年10月10日~~永保安康車票'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgjpqWSVXIHnD8DQ5Yk5wNlNO7ru6I7bOtD7U6dU1s6v9zjUULdkeJF7pcimunCiGR0bdxvYVsqkjAIjZjO0KyO3EN5cfbJ3MzV6F6h3ub2YmBSqh5N9rVZxkQSb_w7gb8iHJ6Mxl7tvpU/s72-c/%25E4%25B8%2580%25E7%2599%25BE%25E5%25B9%25B410%25E6%259C%258810%25E6%2597%25A5%25E6%25B0%25B8%25E4%25BF%259D%25E5%25AE%2589%25E5%25BA%25B7.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-7058582159635495877</id><published>2011-10-09T10:41:00.000+08:00</published><updated>2011-10-11T00:19:11.711+08:00</updated><title type='text'>高雄隨便拍</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhe9X2eXASXhQE65OcxkeE0Ak3sz6J-fuNfSi0m-YeCTTnY0f_D9kk3NnNEvWF-tkRoP_-R2ZDODWjuFMPAfBQUERj1rYSA6avaP5sjCmy7pP1HTSY019zcY69TVPdIBottUaE8Sv4ofJM/s1600/streetPhoto.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhe9X2eXASXhQE65OcxkeE0Ak3sz6J-fuNfSi0m-YeCTTnY0f_D9kk3NnNEvWF-tkRoP_-R2ZDODWjuFMPAfBQUERj1rYSA6avaP5sjCmy7pP1HTSY019zcY69TVPdIBottUaE8Sv4ofJM/s1600/streetPhoto.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_dE0TV3IY6-pYHEIR1CfWhTWRGEO4QE6s7XxzGl1mBa7svbjNulhg42rTA39Qz3bDg3qd_Ntm_lSLNJEP6Ou0Y3wCnymObXyE61EQk5E_PjsXGBl88dlzx6XC3Reel2OWDgLxf9QB-00/s1600/IMG_5366.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_dE0TV3IY6-pYHEIR1CfWhTWRGEO4QE6s7XxzGl1mBa7svbjNulhg42rTA39Qz3bDg3qd_Ntm_lSLNJEP6Ou0Y3wCnymObXyE61EQk5E_PjsXGBl88dlzx6XC3Reel2OWDgLxf9QB-00/s640/IMG_5366.JPG&quot; width=&quot;425&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;打給誰呢？&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;table cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;float: left; margin-right: 1em; text-align: left;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCeZjt_cn82xMZglwmtTqe2o6k1Z0cIbYCVqiUh9NovIAMzyLh63RVofxnEbyOWorOLkPVnRroEYeb37TzblEnb9O2airgB-w1Qb2dZ8t5od6z7osL0DnmHcGlQi4h3IXQpK4x9aGy8i0/s1600/IMG_5364.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; margin-bottom: 1em; margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;426&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCeZjt_cn82xMZglwmtTqe2o6k1Z0cIbYCVqiUh9NovIAMzyLh63RVofxnEbyOWorOLkPVnRroEYeb37TzblEnb9O2airgB-w1Qb2dZ8t5od6z7osL0DnmHcGlQi4h3IXQpK4x9aGy8i0/s640/IMG_5364.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;城市光廊&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCeZjt_cn82xMZglwmtTqe2o6k1Z0cIbYCVqiUh9NovIAMzyLh63RVofxnEbyOWorOLkPVnRroEYeb37TzblEnb9O2airgB-w1Qb2dZ8t5od6z7osL0DnmHcGlQi4h3IXQpK4x9aGy8i0/s1600/IMG_5364.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCeZjt_cn82xMZglwmtTqe2o6k1Z0cIbYCVqiUh9NovIAMzyLh63RVofxnEbyOWorOLkPVnRroEYeb37TzblEnb9O2airgB-w1Qb2dZ8t5od6z7osL0DnmHcGlQi4h3IXQpK4x9aGy8i0/s1600/IMG_5364.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCeZjt_cn82xMZglwmtTqe2o6k1Z0cIbYCVqiUh9NovIAMzyLh63RVofxnEbyOWorOLkPVnRroEYeb37TzblEnb9O2airgB-w1Qb2dZ8t5od6z7osL0DnmHcGlQi4h3IXQpK4x9aGy8i0/s1600/IMG_5364.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCeZjt_cn82xMZglwmtTqe2o6k1Z0cIbYCVqiUh9NovIAMzyLh63RVofxnEbyOWorOLkPVnRroEYeb37TzblEnb9O2airgB-w1Qb2dZ8t5od6z7osL0DnmHcGlQi4h3IXQpK4x9aGy8i0/s1600/IMG_5364.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;/a&gt;&lt;/div&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCeZjt_cn82xMZglwmtTqe2o6k1Z0cIbYCVqiUh9NovIAMzyLh63RVofxnEbyOWorOLkPVnRroEYeb37TzblEnb9O2airgB-w1Qb2dZ8t5od6z7osL0DnmHcGlQi4h3IXQpK4x9aGy8i0/s1600/IMG_5364.JPG&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/7058582159635495877/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/7058582159635495877' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7058582159635495877'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7058582159635495877'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/10/blog-post.html' title='高雄隨便拍'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhe9X2eXASXhQE65OcxkeE0Ak3sz6J-fuNfSi0m-YeCTTnY0f_D9kk3NnNEvWF-tkRoP_-R2ZDODWjuFMPAfBQUERj1rYSA6avaP5sjCmy7pP1HTSY019zcY69TVPdIBottUaE8Sv4ofJM/s72-c/streetPhoto.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-1078429089494028855</id><published>2011-09-18T23:35:00.002+08:00</published><updated>2011-09-18T23:35:58.406+08:00</updated><title type='text'>2011 Canon攝影馬拉松</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOOH1Wzi_1aqXfnZaPgwUt2S3RzdoaE9PF-rn3n8dSqYuc5U_NSCtZhuc7ipdjyJjWvw-H8BE9eqAJNnHwVHw4cx1RHaZszDhhzXItPUpd0Aoqs9Sjt7vQLX_NNL8kvUKvfvj9wVWoG5Y/s1600/2011Canon%25E6%2594%259D%25E5%25BD%25B1%25E9%25A6%25AC%25E6%258B%2589%25E6%259D%25BE.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOOH1Wzi_1aqXfnZaPgwUt2S3RzdoaE9PF-rn3n8dSqYuc5U_NSCtZhuc7ipdjyJjWvw-H8BE9eqAJNnHwVHw4cx1RHaZszDhhzXItPUpd0Aoqs9Sjt7vQLX_NNL8kvUKvfvj9wVWoG5Y/s1600/2011Canon%25E6%2594%259D%25E5%25BD%25B1%25E9%25A6%25AC%25E6%258B%2589%25E6%259D%25BE.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
9/17這天是期待已久的攝影馬拉松，能成為高雄場350人其中一位的參賽者，真的太幸運啦。第一次拿著單眼參加這種大型的比賽，真是超High的，但也不愧是馬拉松，連續拍個12小時真的很累，尤其在高雄這種熱死人不嘗命的天氣，對參賽者來說，體力真的很重要，而且還需要在特定的時間回去領下一關的拍攝主題，才算完成該關卡，果真到了一個年紀體力還是有差...XD&lt;br /&gt;
&lt;br /&gt;
&lt;a name=&#39;more&#39;&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghfcEGGbllt0VuczEXej6k1B_cEqBmsb7RYE-9AJ3a9-3SGDY_tlig06qpLq5afK0bFvsqVV2m3DC3gPkI2rYzKMxiFngs_YpOJzX5AH0ty8pyo6985cJNfVJy-mRm4cbebwyew-L_dh8/s1600/2011canon-blog03.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEghfcEGGbllt0VuczEXej6k1B_cEqBmsb7RYE-9AJ3a9-3SGDY_tlig06qpLq5afK0bFvsqVV2m3DC3gPkI2rYzKMxiFngs_YpOJzX5AH0ty8pyo6985cJNfVJy-mRm4cbebwyew-L_dh8/s640/2011canon-blog03.jpg&quot; width=&quot;426&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;br /&gt;
這三張就是高雄比賽的任務單，每當我打開任務單時，我的臉就是冏，因為主題都好抽像，超難的啦，從來沒拍過需要有故事性跟主題的照片，尤其是拍到第三關，我整個人腦袋空白，體力在前2關就用得差不多(因為熱)，第3關除了也要體力之外，還更需要腦力，我整個虛掉…開始亂拍…哈哈哈，總之…心得就是難難難。&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5Ds1NctQVHHWfTKnHa5BEWi7DZ7QUJebUN0tmSxGDB-LH0p3w9TjeItnZgxYjoCPAcQr5vh1ypG-3BxP2QoukD-sMpOmY8PBd6EGPPI0s5iPnOPPdhhXhVsT9UUtqYYj3nwlOULJw7AQ/s1600/2011canon-blog02.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5Ds1NctQVHHWfTKnHa5BEWi7DZ7QUJebUN0tmSxGDB-LH0p3w9TjeItnZgxYjoCPAcQr5vh1ypG-3BxP2QoukD-sMpOmY8PBd6EGPPI0s5iPnOPPdhhXhVsT9UUtqYYj3nwlOULJw7AQ/s640/2011canon-blog02.jpg&quot; width=&quot;426&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
這個袋子就是最後交照片拿到的完賽禮，我想參加這次比賽的人，都很期待這次的完賽禮是什麼。拿到袋子後，真的覺得Canon很用心，尤其是袋子和提帶的設計，真的很讚，讓人會想好好的保存下這個袋子，太酷了，外面買不到，捨不得用吶！&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTG6Z5zQKHZhaDjUErIoUMHbQfhC32hChHKfZXijySKyQzfDubrbX-25z7KtLtAiJC6wPS004PCYRf7oolL6tfQBJZs8IBvc6Mdmb9zNc_30u2AsHfCwz9TlZToFetjPAV87eiPhWaeJM/s1600/2011canon-blog04.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTG6Z5zQKHZhaDjUErIoUMHbQfhC32hChHKfZXijySKyQzfDubrbX-25z7KtLtAiJC6wPS004PCYRf7oolL6tfQBJZs8IBvc6Mdmb9zNc_30u2AsHfCwz9TlZToFetjPAV87eiPhWaeJM/s640/2011canon-blog04.jpg&quot; width=&quot;426&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
袋子裡的完賽禮也很用心喔，有一張完賽的證書，照片就是早上報到後，在現場立即拍的，到了晚上主辦單位馬上就印出有照片的證書，真是揪感心耶！累了一整天，拿到這張證書一整個很有成就感，再累也值得啦，哈哈哈。&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbl94qaaOdwRybSTK_STp5D2yLxR5yQcgBpgJ1WrxIBXPb1lwcEzYCMtSQxqVw9SSSO7rT57CvyxOTzt_NDy4xQ6sOnMgtA7zmB1Gveny10wTLCcwoSv1Er6siAVck0p7XDw2a651iKKc/s1600/2011canon-blog05.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;426&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbl94qaaOdwRybSTK_STp5D2yLxR5yQcgBpgJ1WrxIBXPb1lwcEzYCMtSQxqVw9SSSO7rT57CvyxOTzt_NDy4xQ6sOnMgtA7zmB1Gveny10wTLCcwoSv1Er6siAVck0p7XDw2a651iKKc/s640/2011canon-blog05.jpg&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
再來就是每個參賽者都有的一個紙相框，這張照片也是報到後拍的，但是…我沒拍到，因為我遲到啦....&amp;gt;_&amp;lt;，真是有夠冏的，來不及參與大合照，下次一定要給它拍到。這個也很有質感，紙相框，加上合照的照片，又再次的感受到Canon的用心，讚讚讚…&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
後記：&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
能參加這次的攝影比賽真的粉開心，一大群人一起比賽的經驗，很酷，是的，明年繼續參加，有買Canon單眼的捧油，我們一起報吧！&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/1078429089494028855/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/1078429089494028855' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/1078429089494028855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/1078429089494028855'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/09/2011-canon.html' title='2011 Canon攝影馬拉松'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOOH1Wzi_1aqXfnZaPgwUt2S3RzdoaE9PF-rn3n8dSqYuc5U_NSCtZhuc7ipdjyJjWvw-H8BE9eqAJNnHwVHw4cx1RHaZszDhhzXItPUpd0Aoqs9Sjt7vQLX_NNL8kvUKvfvj9wVWoG5Y/s72-c/2011Canon%25E6%2594%259D%25E5%25BD%25B1%25E9%25A6%25AC%25E6%258B%2589%25E6%259D%25BE.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-5306376944774087567</id><published>2011-08-29T17:42:00.001+08:00</published><updated>2011-08-29T17:43:59.351+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="心情"/><title type='text'>高中同學會。大...成...功！</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgekmPp0_DFCqxoutARUssB3cQ8aoPuV52yHXdcAhooOpv7IoeUQj5qctkQiz2Pb9DmI-mevjsyLL-U4e1BfIwaMOCgoqPvzoktMXHj_SmiuOLBTcvU3vUrt5UiNON9GKgIFTYlXE55chM/s1600/%25E6%2596%25B0%25E8%25B1%2590%25E5%2590%258C%25E5%25AD%25B8%25E6%259C%2583%25E5%2590%2588%25E7%2585%25A7.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgekmPp0_DFCqxoutARUssB3cQ8aoPuV52yHXdcAhooOpv7IoeUQj5qctkQiz2Pb9DmI-mevjsyLL-U4e1BfIwaMOCgoqPvzoktMXHj_SmiuOLBTcvU3vUrt5UiNON9GKgIFTYlXE55chM/s1600/%25E6%2596%25B0%25E8%25B1%2590%25E5%2590%258C%25E5%25AD%25B8%25E6%259C%2583%25E5%2590%2588%25E7%2585%25A7.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
第一次辦同學會，算是很新鮮的經驗，而且看到這麼多人捧場來參加，真的很開心，雖然只有幾個小時的聚會，沒辦法一一的跟所有人聊到天，但是能看到這麼多人聚在一起，聊工作的聊工作，打哈哈的打哈哈，身為主辦人的我，真的給它粉開心，尤其是看到結婚帶小孩來的同學，感觸真的很深，再過幾年，應該就有更多小鬼頭出現了。&lt;br /&gt;
&lt;br /&gt;
另外，這次有參加的同學，我又另外設計了一張小卡送給你們，上面放了大家的姓名和畢業冊上的個人照片，方便大家&quot;認人&quot;，沒想到大家還滿喜歡的，看到你們臉上驚喜的表情，再累我也值得啦。&lt;br /&gt;
&lt;br /&gt;
參加過這麼多次的同學會，想說來辦一場不同的同學會，所以就規劃了3攤的活動，好讓大家聊個夠，看來這效果還不錯，下次辦的人或許可以參照這種方式來進行，而不是只是單純吃飯，然後就閃人了，而沒辦法參加的同學，也可以挑一場出現也不錯。&lt;br /&gt;
&lt;br /&gt;
最後，沒出現的同學給我注意一下，我老早一個月前就跟大家講了，一開始說不能來就算了，但是說好又不來，畫一槓了啦！下次再不出現就拖出去...給我注意一點XD&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/5306376944774087567/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/5306376944774087567' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/5306376944774087567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/5306376944774087567'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/08/blog-post.html' title='高中同學會。大...成...功！'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgekmPp0_DFCqxoutARUssB3cQ8aoPuV52yHXdcAhooOpv7IoeUQj5qctkQiz2Pb9DmI-mevjsyLL-U4e1BfIwaMOCgoqPvzoktMXHj_SmiuOLBTcvU3vUrt5UiNON9GKgIFTYlXE55chM/s72-c/%25E6%2596%25B0%25E8%25B1%2590%25E5%2590%258C%25E5%25AD%25B8%25E6%259C%2583%25E5%2590%2588%25E7%2585%25A7.png" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-159941856456740242</id><published>2011-08-03T14:33:00.001+08:00</published><updated>2011-08-03T15:40:32.583+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="心情"/><category scheme="http://www.blogger.com/atom/ns#" term="玩具"/><category scheme="http://www.blogger.com/atom/ns#" term="趣味一下"/><title type='text'>LEGO Ninjago</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLfCRHmzIDogy0rNsTB2U_AdONfkrXfZaqyCHW47gQNOIH1drdV6qKLW18sgy8X7yiqXPDefM7lHuMQWuUHso-QscVnTsylCmvMYjs1WTcDlUMzvF6Ox32m7JyOKe-N61FVLuV6uaWw8M/s1600/%25E6%25A8%2582%25E9%25AB%2598ninjago.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLfCRHmzIDogy0rNsTB2U_AdONfkrXfZaqyCHW47gQNOIH1drdV6qKLW18sgy8X7yiqXPDefM7lHuMQWuUHso-QscVnTsylCmvMYjs1WTcDlUMzvF6Ox32m7JyOKe-N61FVLuV6uaWw8M/s1600/%25E6%25A8%2582%25E9%25AB%2598ninjago.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;都老大不小了，很愛去百貨公司的玩具部看玩具，好像小孩喔，只怕以後會跟小孩一起搶玩具玩，金害金害。&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;這是樂高的新系列Ninjago，&lt;a href=&quot;http://ninjago.lego.com/en-us/Default.aspx&quot;&gt;官網在這&lt;/a&gt;，我很喜歡武俠、忍者系列的玩意兒，這次看到樂高出了忍者系列，害我站在玩具他們面前好久(真的很像小朋友，只差沒有哭鬧而已)，真的有被他們打到我的甜蜜點，好讚呀！而Ninjago和以往的不同，這次加入了卡片和戰鬥陀螺的元素，讓樂高不只是死板板的站在方塊上，還可以和同伴互相競賽，雖然新加入的元素不是讓我購買的衝動之一，但還是值得為樂高鼓勵一下，每次都會想出新的玩法，來騙死笨孩父母的錢，啊不是啦，是未來國家主人翁父母的錢，所以，我就被騙了(我還沒有小孩就被騙，有了就慘了...)。所以就敗了一組回家玩囉！&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;話說，回到家組完才發現，買了一組，會欲罷不能，就跟單眼一樣是個錢井深的世界，會想去買其他配件回來組合，因為單一隻太孤單了嘛，哈哈哈。老婆大人，以後可以讓我買嗎？XD&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/159941856456740242/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/159941856456740242' title='1 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/159941856456740242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/159941856456740242'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/08/lego-ninjago.html' title='LEGO Ninjago'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLfCRHmzIDogy0rNsTB2U_AdONfkrXfZaqyCHW47gQNOIH1drdV6qKLW18sgy8X7yiqXPDefM7lHuMQWuUHso-QscVnTsylCmvMYjs1WTcDlUMzvF6Ox32m7JyOKe-N61FVLuV6uaWw8M/s72-c/%25E6%25A8%2582%25E9%25AB%2598ninjago.jpg" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-3813789305313549935</id><published>2011-07-26T14:42:00.002+08:00</published><updated>2011-07-26T14:44:00.679+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="創業"/><title type='text'>付出越多，回報越多。</title><content type='html'>創業定律：付出越多，回報越多&lt;br /&gt;
&lt;a href=&quot;http://www.hksilicon.com/kb/articles/34640?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+hksiliconkb+%28I.T.+Blogs+-+%E9%A6%99%E6%B8%AF%E7%9F%BD%E8%B0%B7%29&quot;&gt;http://www.hksilicon.com/kb/articles/34640?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+hksiliconkb+%28I.T.+Blogs+-+%E9%A6%99%E6%B8%AF%E7%9F%BD%E8%B0%B7%29&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
這篇文章講的，雖然我現在還沒辦法體驗，但似乎也可以從中悟出一些創業的想法。&lt;br /&gt;
&lt;br /&gt;
常說創業創業，好像都要先有個產品，替這個產品找到使用它的人，然後賣錢，完成這一連串的過程，謂之創業。但反過來想，推出來的產品，不一定真的被人所接受而付錢使用，因為產品可能跟本不完全符合&lt;b&gt;使用者期待&lt;/b&gt;，或是沒有替使用者解決到問題。所以當你開始創業，砸下去第一筆創業基金的開始，你已經開始賠錢了，而且就像把錢丟到無底洞裡，連回音都沒有，與其進行這樣的創業，倒不如把錢拿去投資還好一點。&lt;br /&gt;
&lt;br /&gt;
所以反向思考一下，先找到某些人，用你熟悉的技術替他們解決問題，若能完整解決一小部份人的問題，這個生意就可以持續做下去，因為當你把這小部份人需求給滿足了，把這小部份人乘於100倍、1000倍，甚至是10000倍，再小部份的人，這時候也變成一大堆人了，就連原本沒有這類需求的人，也開始使用產品，正所謂，「&lt;b&gt;商人創造需求&lt;/b&gt;」，使用者的需求，其實是被商人所創造的，不過這一塊又會扯遠了，先不說。&lt;br /&gt;
&lt;br /&gt;
總之，創業也可以視為解決一個問題的過程，好像很多人都懂，但如何發現這個問題、怎麼解決它，似乎不是這麼容易被發現，「&lt;b&gt;射擊後瞄準&lt;/b&gt;」才可能快速的尋找到公司的方向，設定好公司於市場上的定位。&lt;br /&gt;
&lt;br /&gt;
「創業定律：付出越多，回報越多」文章裡說的，或許也是講相同的事情，你幫助別人越多，就越知道別人的問題在那裡，解決了這個問題，就可以找到公司在市場上的定位，間接的滿足更多人的需求，以達創業成功的目的。</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/3813789305313549935/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/3813789305313549935' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3813789305313549935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3813789305313549935'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/07/blog-post_26.html' title='付出越多，回報越多。'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-7472139653898460879</id><published>2011-07-05T15:15:00.009+08:00</published><updated>2011-07-05T18:15:04.005+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="研究生"/><title type='text'>碩論系統問卷調查</title><content type='html'>大家好&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 12pt;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &#39;Times New Roman&#39;; font-size: 12pt;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHn-cFAZRX8OxUpa84bTslmG-qzyMQWaB-QIVIhYVCkU_T3O358oYO5V0dakCZ1ZDt2mJRlC2Q8Je1ZUdknKcivtW3awNz4AMD7T2TsiF80MPrC6bfFYxeaDc9DiBlE5pjM-nfLQUc58o/s1600/device.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHn-cFAZRX8OxUpa84bTslmG-qzyMQWaB-QIVIhYVCkU_T3O358oYO5V0dakCZ1ZDt2mJRlC2Q8Je1ZUdknKcivtW3awNz4AMD7T2TsiF80MPrC6bfFYxeaDc9DiBlE5pjM-nfLQUc58o/s320/device.png&quot; width=&quot;192&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;軟體下載QRCode&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxrj2L5nsPa-VbIVT7tWjcwfeQf60E_a0O5EERY1pSCJ12JYQdyGTa7mBCIG-uLBgqyNi14EGwqK0NdTTGWd-XC7K1_2Fy2ILQou5WqjFhSiK53djkdEAgvcQVnziKBJ7HwsGP0ifDmSY/s1600/img.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgxrj2L5nsPa-VbIVT7tWjcwfeQf60E_a0O5EERY1pSCJ12JYQdyGTa7mBCIG-uLBgqyNi14EGwqK0NdTTGWd-XC7K1_2Fy2ILQou5WqjFhSiK53djkdEAgvcQVnziKBJ7HwsGP0ifDmSY/s1600/img.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;這是小弟的碩士論文，研究中開發了一套智慧型導覽系統，有個後測部份，希望大家幫忙填寫一下問卷。&lt;br /&gt;
我需要有使用Android智慧型手機的人幫我安裝這個軟體在你的手機中，使用完畢，進入以下的問卷連結，填寫問卷，裡頭共有21題，謝謝大家。&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: red;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
如有任何疑問，請在右邊的留言板留下你的建議，或是偷偷的寄Mail給我也可以^^。&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: red;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
1.智慧型導覽系統下載：&lt;a href=&quot;http://dl.dropbox.com/u/19608699/ViewGis.apk&quot;&gt;下載apk&lt;/a&gt;&lt;br /&gt;
2.問卷連結：&lt;a href=&quot;https://spreadsheets.google.com/spreadsheet/viewform?formkey=dEdOOVAtc2U3X2dIYm95MVhHRVRoNVE6MQ&quot;&gt;填寫問卷&lt;/a&gt;&lt;br /&gt;
Mail：&lt;a href=&quot;mailto:guoawei@gmail.com&quot;&gt;guoawei@gmail.com&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: red;&quot;&gt;*額外說明，&lt;/span&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: red;&quot;&gt;因系統部份功能尚在建置中，會有景點資料與選擇的內容不相符的現象，還請大家見諒。&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: red;&quot;&gt;**開啟軟體前，請把GPS關閉&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/7472139653898460879/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/7472139653898460879' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7472139653898460879'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/7472139653898460879'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/07/blog-post.html' title='碩論系統問卷調查'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHn-cFAZRX8OxUpa84bTslmG-qzyMQWaB-QIVIhYVCkU_T3O358oYO5V0dakCZ1ZDt2mJRlC2Q8Je1ZUdknKcivtW3awNz4AMD7T2TsiF80MPrC6bfFYxeaDc9DiBlE5pjM-nfLQUc58o/s72-c/device.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-1255209910287440698</id><published>2011-06-14T00:52:00.000+08:00</published><updated>2011-06-14T00:52:33.799+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="心情"/><category scheme="http://www.blogger.com/atom/ns#" term="研究生"/><title type='text'>倒數計時</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhY3RKN83WkdEbPuHIY8XbCUz9losyovOlr3O-asXrY7LnbEYL050iJemAmcyFDDOeyILY9H0InVJugYGFrOrBHvdiPOoB7jUCFf816-bVsVjQJwwDqtc27KpI2bJoBgzptZLQocT_oDbU/s1600/%25E7%25A0%2594%25E7%25A9%25B6%25E6%2589%2580%25E7%2595%25A2%25E6%25A5%25AD%25E5%2580%2592%25E6%2595%25B8614.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhY3RKN83WkdEbPuHIY8XbCUz9losyovOlr3O-asXrY7LnbEYL050iJemAmcyFDDOeyILY9H0InVJugYGFrOrBHvdiPOoB7jUCFf816-bVsVjQJwwDqtc27KpI2bJoBgzptZLQocT_oDbU/s1600/%25E7%25A0%2594%25E7%25A9%25B6%25E6%2589%2580%25E7%2595%25A2%25E6%25A5%25AD%25E5%2580%2592%25E6%2595%25B8614.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
這段時間真難熬，距離28號，是既開心、又難過…好複雜的心情。開心是因為快結束了，難過是這期間的日子，一天天過，好折磨呀。&lt;br /&gt;
今天6/14，明天6/15，後天6/16，大後天…大大後天…</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/1255209910287440698/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/1255209910287440698' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/1255209910287440698'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/1255209910287440698'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/06/blog-post.html' title='倒數計時'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhY3RKN83WkdEbPuHIY8XbCUz9losyovOlr3O-asXrY7LnbEYL050iJemAmcyFDDOeyILY9H0InVJugYGFrOrBHvdiPOoB7jUCFf816-bVsVjQJwwDqtc27KpI2bJoBgzptZLQocT_oDbU/s72-c/%25E7%25A0%2594%25E7%25A9%25B6%25E6%2589%2580%25E7%2595%25A2%25E6%25A5%25AD%25E5%2580%2592%25E6%2595%25B8614.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-3583328626800292385</id><published>2011-05-28T13:48:00.001+08:00</published><updated>2011-05-28T13:49:17.392+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="研究生"/><title type='text'>這就是研究生</title><content type='html'>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOEEJga7KxCWKpYRq92JzJ5zKNbEYXMgFOlXszBwV-BWcBMuqnsTRsQn2TmIXVDwWIFiwy5P21swdTacteDHWpoG6KZkavJJr8Y7P91XN46pSOSeOM7d_bXItVJQM6mG_Gvn2eE_LWKYo/s1600/ree.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOEEJga7KxCWKpYRq92JzJ5zKNbEYXMgFOlXszBwV-BWcBMuqnsTRsQn2TmIXVDwWIFiwy5P21swdTacteDHWpoG6KZkavJJr8Y7P91XN46pSOSeOM7d_bXItVJQM6mG_Gvn2eE_LWKYo/s1600/ree.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;熬夜了一個星期，終於把研究的系統中，最關鍵的地方搞出來了，真的有累到，不過最後成果還不錯，雖然離目標還有點距離。也在做系統的當中，把所謂的本體論搞清楚了一點，很理論的東西我真的不曉得該怎麼應用到系統上，現在把整條線都連了起來，就容易點了。&lt;br /&gt;
等程式都弄好，就可以開始改論文囉，好趕好趕....&amp;gt;_&amp;lt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/3583328626800292385/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/3583328626800292385' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3583328626800292385'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3583328626800292385'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/05/blog-post.html' title='這就是研究生'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOEEJga7KxCWKpYRq92JzJ5zKNbEYXMgFOlXszBwV-BWcBMuqnsTRsQn2TmIXVDwWIFiwy5P21swdTacteDHWpoG6KZkavJJr8Y7P91XN46pSOSeOM7d_bXItVJQM6mG_Gvn2eE_LWKYo/s72-c/ree.png" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3090143955941944395.post-3442852861208206891</id><published>2011-05-06T12:46:00.003+08:00</published><updated>2011-05-06T12:50:37.643+08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="遊戲"/><title type='text'>從N3DS遊戲聯想出新的手機遊戲互動方式</title><content type='html'>&lt;div style=&quot;text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;349&quot; src=&quot;http://www.youtube.com/embed/YgJ-Vic0lNY&quot; width=&quot;425&quot;&gt;&lt;/iframe&gt;&lt;/div&gt;之前看到「&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: arial, sans-serif; line-height: 25px;&quot;&gt;薩爾達傳說：時之笛 3D-操作新要素」的展示影片，裡面有個玩法我覺得滿特別的。以前往往我都想要把相機跟3軸的功能加入遊戲中，所以遊戲畫面裡都會有真實世界的物件，於是問題就發生在如何把遊戲物件和真實世界的物件做互動，這裡頭有效能的問題，因為手機遊戲做影像辨識的效能還不如電腦好，更何況用電腦都會延遲了，手機不就更慘了嗎…所以這個問題一直在我腦子裡揮之不去，感覺有點死腦筋，非得把相機和3軸放在一起。&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: arial, sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 25px;&quot;&gt;直到後來看到影片之後才發現，其實把相機去掉，效能的問題就可以解決，因為不在使用相機，也可以省去影像辨識這一段，而且也能完整顯示遊戲世界裡的物件，更主要的是，利用3軸，也能做到體感互動，如影片中的遊戲，拿彈弓打怪物，過去我們都是用搖桿操控彈弓的準心，現在，透過3軸感應，可以做到體感互動，直接移動遊戲機來控制，達到相同的目的。&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: arial, sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;line-height: 25px;&quot;&gt;這些功能，手機其實都有了，除了觸控的玩法之外，3軸的控制，我想也是另一個遊戲可以實做的方向之一。&lt;/span&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://orangelab.blogspot.com/feeds/3442852861208206891/comments/default' title='張貼留言'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/3090143955941944395/3442852861208206891' title='0 個意見'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3442852861208206891'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3090143955941944395/posts/default/3442852861208206891'/><link rel='alternate' type='text/html' href='http://orangelab.blogspot.com/2011/05/n3d.html' title='從N3DS遊戲聯想出新的手機遊戲互動方式'/><author><name>橘色實驗室</name><uri>http://www.blogger.com/profile/09673024407449526616</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/YgJ-Vic0lNY/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry></feed>