<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>蛙齋</title>
	<atom:link href="http://wazai.net/feed" rel="self" type="application/rss+xml" />
	<link>http://wazai.net</link>
	<description>記錄資訊相關問題、知識以及技術分享。</description>
	<lastBuildDate>Thu, 10 May 2012 02:15:24 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>VPS安裝記錄</title>
		<link>http://wazai.net/2223/vps%e5%ae%89%e8%a3%9d%e8%a8%98%e9%8c%84</link>
		<comments>http://wazai.net/2223/vps%e5%ae%89%e8%a3%9d%e8%a8%98%e9%8c%84#comments</comments>
		<pubDate>Wed, 09 May 2012 13:00:39 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[心得記錄]]></category>
		<category><![CDATA[DirectSpace]]></category>
		<category><![CDATA[Dropbox]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[VPS]]></category>
		<category><![CDATA[中文亂碼]]></category>
		<category><![CDATA[心得]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2223</guid>
		<description><![CDATA[最近重灌VPS的次數有點多，總覺得要一直做同樣的事情很麻煩 &#8230; 記錄下來，雖然之後重灌也還是要下一堆指令，不過至少可以直接 copy paste ^__^ 省了一些麻煩事。這是小蛙自己的VPS設定，最痛苦的第一次已經過去了，也忘的差不多了，小蛙透過定期備份WordPress到Dropbox做備份，因此之後的安裝(包括 lightppd.conf, my.cnf, php.ini &#8230; 等設定檔)就沿用舊的資料(要設定這些東西真的是太困難了 &#8230;)，這篇文章只記錄安裝套件、環境的操作及設定。 因為讓人又愛又恨的DirectSpace提到的OOXX的原因，使得最近重灌Linux的次數已經超過小蛙研究所畢業前灌Linux的次數了(實際上也算不出到底有幾次，有時候設定錯了，又懶得找回復的方法，就 &#8230; reinstall &#8230; 好孩子不要學)！記得小蛙友一個朋友講過一句話，「如果每次遇到問題就重灌，就永遠學不會Linux」，難怪小蛙只要碰到Linux，就要花上好多時間，還不一定可以解決 &#8230; 以下就用小蛙本身重灌時的設定順序來記錄。 &#160; VPS顯示及輸入中文 小蛙的VPS安裝完之後所有的設定都是偏向英語系國家，需做以下設定來讓從遠端透過Pietty登入的小蛙可以呈現及輸入正體中文字，這部分小蛙試了很多奇奇怪怪的方法，但下面的方法一次就搞定！ ############## 顯示中文問題 ################## // 編輯自己家目錄下的 bash 環境 vim .bashrc export LANGUAGE=&#34;zh_TW.UTF-8&#34; export LANG=&#34;zh_TW.UTF-8&#34; export LC_ALL=&#34;zh_TW.UTF-8&#34; // 使用 source 讓設定檔生效時，發生以下錯誤 source .bashrc -bash: warning: setlocale: LC_ALL: cannot change locale (zh_TW.UTF-8) // 透過 locale-gen <a href='http://wazai.net/2223/vps%e5%ae%89%e8%a3%9d%e8%a8%98%e9%8c%84'>[...]</a><table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="蛙齋第一篇 - VPS 心得" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1099%2F%25E8%259B%2599%25E9%25BD%258B%25E7%25AC%25AC%25E4%25B8%2580%25E7%25AF%2587-vps-%25E5%25BF%2583%25E5%25BE%2597&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785257.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">蛙齋第一篇 - VPS 心得</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="讓人又愛又恨的DirectSpace" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">讓人又愛又恨的DirectSpace</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="網頁壓縮亂碼 - Lighttpd gzip php, js, css, html, plain" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1748%2F%25E7%25B6%25B2%25E9%25A0%2581%25E5%25A3%2593%25E7%25B8%25AE%25E4%25BA%2582%25E7%25A2%25BC-lighttpd-gzip-php-js-css-html-plain&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785395.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">網頁壓縮亂碼 - Lighttpd gzip php, js, css, html, plain</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Ubuntu - 基本指令備忘(持續更新)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1697%2Fubuntu-%25E5%259F%25BA%25E6%259C%25AC%25E6%258C%2587%25E4%25BB%25A4%25E5%2582%2599%25E5%25BF%2598%25E6%258C%2581%25E7%25BA%258C%25E6%259B%25B4%25E6%2596%25B0&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785511.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Ubuntu - 基本指令備忘(持續更新)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="定期備份WordPress到Dropbox" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/13/17061965.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">定期備份WordPress到Dropbox</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>最近重灌VPS的次數有點多，總覺得要一直做同樣的事情很麻煩 &#8230; 記錄下來，雖然之後重灌也還是要下一堆指令，不過至少可以直接 copy paste ^__^ 省了一些麻煩事。這是小蛙自己的VPS設定，最痛苦的第一次已經過去了，也忘的差不多了，小蛙透過<span style="color: #ff0000;"><strong><a href="http://wazai.net/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox" target="_blank">定期備份WordPress到Dropbox</a></strong></span>做備份，因此之後的安裝(包括 lightppd.conf, my.cnf, php.ini &#8230; 等設定檔)就沿用舊的資料(要設定這些東西真的是太困難了 &#8230;)，這篇文章只記錄安裝套件、環境的操作及設定。</p>
<p><span id="more-2223"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>因為<span style="color: #ff0000;"><strong><a href="http://wazai.net/2217/%e8%ae%93%e4%ba%ba%e5%8f%88%e6%84%9b%e5%8f%88%e6%81%a8%e7%9a%84directspace" target="_blank"><span style="color: #ff0000;">讓人又愛又恨的DirectSpace</span></a></strong></span>提到的OOXX的原因，使得最近重灌Linux的次數已經超過小蛙研究所畢業前灌Linux的次數了(實際上也算不出到底有幾次，有時候設定錯了，又懶得找回復的方法，就 &#8230; reinstall &#8230; 好孩子不要學)！記得小蛙友一個朋友講過一句話，「如果每次遇到問題就重灌，就永遠學不會Linux」，難怪小蛙只要碰到Linux，就要花上好多時間，還不一定可以解決 &#8230; 以下就用小蛙本身重灌時的設定順序來記錄。</p>
<p>&nbsp;</p>
<ul>
<li>
<h3>VPS顯示及輸入中文</h3>
</li>
</ul>
<p>小蛙的VPS安裝完之後所有的設定都是偏向英語系國家，需做以下設定來讓從遠端透過Pietty登入的小蛙可以呈現及輸入正體中文字，這部分小蛙試了很多奇奇怪怪的方法，但下面的方法一次就搞定！</p>
<pre>############## 顯示中文問題 ##################
// 編輯自己家目錄下的 bash 環境
vim .bashrc
export LANGUAGE=&quot;zh_TW.UTF-8&quot;
export LANG=&quot;zh_TW.UTF-8&quot;
export LC_ALL=&quot;zh_TW.UTF-8&quot;

// 使用 source 讓設定檔生效時，發生以下錯誤
source .bashrc
-bash: warning: setlocale: LC_ALL: cannot change locale (zh_TW.UTF-8)

// 透過 locale-gen 產生 zh_TW.UTF-8 的語系
sudo locale-gen zh_TW.UTF-8
sudo update-locale LANG=zh_TW.UTF-8
// 完成後重新登入即可</pre>
<p>中文環境顯示設定參考資料 &lt;<strong><a href="http://changyy.pixnet.net/blog/post/28633165--bash%3A-warning%3A-setlocale%3A-lc_ctype%3A-cannot-change-locale-@-" target="_blank">-bash: warning: setlocale: LC_CTYPE: cannot change locale @ Ubuntu 10.04 @ 第二十四個夏天後</a></strong>&gt;</p>
<p>&nbsp;</p>
<ul>
<li>
<h3>移除apache2</h3>
</li>
</ul>
<p>中文環境有了讓人感覺比較安心，至少不用再看到奇奇怪怪的符號及亂碼，接下來由於小蛙想降低記憶體使用量，因此把肥大的apache2刪除，改安裝lighttpd。</p>
<pre>############# 移除 apache2 ############
dpkg -l | grep apache2 查看套件
apt-get remove apache2*</pre>
<p>參考資料 &lt;<strong><a href="http://fcamel-life.blogspot.com/2011/06/ubuntu-apache2.html" target="_blank">Ubuntu 移除 apache2 的方法 @ fcamel 技術隨手記</a></strong>&gt;，內容提到使用aptitude，但小蛙沒有安裝該套件，就用apt-get remove來移除(應該是沒問題才對，如果有錯請留言跟小蛙說一聲，感恩！)</p>
<p>&nbsp;</p>
<ul>
<li>
<h3>安裝lighttpd, php5, mysql, phpmyadmin</h3>
</li>
</ul>
<p>繼續安裝 lighttpd, php5, mysql, phpmyadmin &#8230; 等網頁及資料庫相關套件，這裡應該沒什麼問題才對，使用的資料庫別及密碼別弄錯就好，還有「Configure database for phpmyadmin with dbconfig-common?」要回答「Yes」。</p>
<pre>############# 安裝 mysql, php5, lighttpd, phpmyadmin ############
apt-get install lighttpd php5-cgi php5-mysql mysql-server phpmyadmin
輸入 mysql root password
再次輸入 mysql root password
選擇使用的 http server : lighttpd

Configure database for phpmyadmin with dbconfig-common? Yes
database administrator&#039;s password : (輸入剛剛的 root 密碼)
phpadmin password : phpmyadmin 的密碼
re type phpmyadmin password :</pre>
<p>&nbsp;</p>
<ul>
<li>
<h3>安裝Dropbox</h3>
</li>
</ul>
<p>對小蛙來說最重要的東西Dropbox，如果沒有這東西，之前的設定檔通通消失，全部要重新設定，簡直是噩夢！參考資料 &lt;<strong><a href="http://www.arthurtoday.com/2010/09/ubuntu-add-apt-repository.html" target="_blank">Ubuntu 為什麼找不到 add-apt-repository 的指令 ? @ 阿舍的隨手記記、隨手寫寫&#8230;</a></strong>&gt;、&lt;<strong><a href="http://raphaelhertzog.com/2011/06/06/official-debian-ubuntu-packages-for-nautilus-dropbox/" target="_blank">Official Debian/Ubuntu packages for Dropbox</a></strong>&gt;，這邊要額外安裝<strong>python-software-properties</strong>。</p>
<pre>############# 安裝 dropbox ############
apt-get install python-software-properties
$ sudo add-apt-repository ppa:hertzog/nautilus-dropbox
$ sudo apt-get update
$ sudo apt-get install nautilus-dropbox
如果沒有出現確認的 link，dropbox start 就會出現了，
點了確認連結後開啟瀏覽器(小蛙用 pietty 遠端到 VPS)</pre>
<p>&nbsp;</p>
<ul>
<li>
<h3>安裝Git</h3>
</li>
</ul>
<p>小蛙的VPS兼職當Git Server</p>
<pre>############# 安裝 Git ############
apt-get install git-core</pre>
<p>&nbsp;</p>
<ul>
<li>
<h3>安裝JDK, JRE</h3>
</li>
</ul>
<p>接著安裝JDK、JRE，參考資料 &lt;<strong><a href="http://weiwei.pixnet.net/blog/post/29999353-ubuntu-11.10-%E6%89%8B%E5%8B%95%E5%AE%89%E8%A3%9D-sun-java-6-jdk" target="_blank">Ubuntu 11.10 手動安裝 Sun Java 6 JDK @ 維維 練肖喂～～</a></strong>&gt;，感覺裝了一大堆東西進去，在空間不吃緊的情況下，暫且先這樣吧！</p>
<pre>############# 安裝 JDK ############
sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk
sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts</pre>
<p>&nbsp;</p>
<ul>
<li>
<h3>設定系統時間</h3>
</li>
</ul>
<p>最後設定系統時間，讓 crontab 以及 php5 能塞入正常時間的設定。</p>
<pre>############# 重新設定時區 ############
dpkg-reconfigure tzdata

vim /etc/php5/cgi/php.ini
date.timezone=Asia/Taipei</pre>
<p>&nbsp;</p>
<ul>
<li>
<h3>解壓縮bz2</h3>
</li>
</ul>
<p>接著就是等 dropbox 把之前備份的檔案抓回來，例如：lighttpd, php5, mysql, crontab, mysqldump, /var/www &#8230; 等備份，解壓縮之前備份的 backup.tar.bz2</p>
<pre># tar -jxv -f 壓縮檔名稱 -C 解壓縮到
tar -jxv -f tt.tar.bz2 -C /root</pre>
<p>&nbsp;</p>
<ul>
<li>
<h3>還原 mysqldump 備份資料</h3>
</li>
</ul>
<p>還原mysqldump的資料</p>
<pre>mysql -u root -p &lt; backup.sql</pre>
<p>&nbsp;</p>
<ul>
<li>
<h3>還原 crontab 備份資料</h3>
</li>
</ul>
<p>還原crontab內容</p>
<pre>crontab backup_file</pre>
<p>到這邊重新安裝VPS大功告成！接下來就測試一下各功能有沒有問題囉！</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="0">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="蛙齋第一篇 - VPS 心得" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1099%2F%25E8%259B%2599%25E9%25BD%258B%25E7%25AC%25AC%25E4%25B8%2580%25E7%25AF%2587-vps-%25E5%25BF%2583%25E5%25BE%2597&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785257.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">蛙齋第一篇 - VPS 心得</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="讓人又愛又恨的DirectSpace" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">讓人又愛又恨的DirectSpace</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="網頁壓縮亂碼 - Lighttpd gzip php, js, css, html, plain" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1748%2F%25E7%25B6%25B2%25E9%25A0%2581%25E5%25A3%2593%25E7%25B8%25AE%25E4%25BA%2582%25E7%25A2%25BC-lighttpd-gzip-php-js-css-html-plain&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785395.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">網頁壓縮亂碼 - Lighttpd gzip php, js, css, html, plain</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Ubuntu - 基本指令備忘(持續更新)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1697%2Fubuntu-%25E5%259F%25BA%25E6%259C%25AC%25E6%258C%2587%25E4%25BB%25A4%25E5%2582%2599%25E5%25BF%2598%25E6%258C%2581%25E7%25BA%258C%25E6%259B%25B4%25E6%2596%25B0&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785511.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Ubuntu - 基本指令備忘(持續更新)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="定期備份WordPress到Dropbox" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox&from=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/13/17061965.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">定期備份WordPress到Dropbox</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2223/vps%e5%ae%89%e8%a3%9d%e8%a8%98%e9%8c%84/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>讓人又愛又恨的DirectSpace</title>
		<link>http://wazai.net/2217/%e8%ae%93%e4%ba%ba%e5%8f%88%e6%84%9b%e5%8f%88%e6%81%a8%e7%9a%84directspace</link>
		<comments>http://wazai.net/2217/%e8%ae%93%e4%ba%ba%e5%8f%88%e6%84%9b%e5%8f%88%e6%81%a8%e7%9a%84directspace#comments</comments>
		<pubDate>Tue, 08 May 2012 09:37:12 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[心得記錄]]></category>
		<category><![CDATA[DirectSpace]]></category>
		<category><![CDATA[VPS]]></category>
		<category><![CDATA[心得]]></category>
		<category><![CDATA[折價]]></category>
		<category><![CDATA[虛擬主機]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2217</guid>
		<description><![CDATA[DirestSpace是小蛙第一個使用的VPS(第一篇文章)，中間有曾經跳過別的，但是後來因為介面不太熟悉而又跳回來，DirectSpace價格便宜，速度也還OK，用到現在快半年了，最嚴重的問題是某一次大概超過三四天Server整個掛掉，直到修復之後才收到一封令人驚嚇的信，內容大概是有安全性漏洞，他們發現有駭客攻擊，部分用戶的資料「永久遺失且無法回覆」 &#8230; 如果要推薦VPS，小蛙還是蠻推DirectSpace的，但是心臟要夠大顆(沒有VPS公司能保證一定不會發生意外吧！) 小蛙寫了一些Crawler程式想要在VPS上面跑，但發現Crawler要把整個網頁撈下來造成記憶體用量大增，原本的VPS不敷使用&#8230;在這裡看到永久半價的折價券後開始精打細算了起來，小蛙原本的方案是 VPS.1 CPU : 1 x 3.3G RAM : 512MB Burst : 1024MB HDD : 20GB Bandwidth : 1T IP : 2 IPv4 / 2 IPv6 每個月必須花上 $5 美金來養這個最便宜的VPS，看著 DirectSpace 的方案越來越貴，當時心裡還有點慶幸自己已經先買了，直到上面提到的網頁「DirectSpace永久半價優惠」，永久？這真的是令人覺得不可思議，重點是目前VPS.1已經漲到$8，如果有這個折價券就會變成每個月只要 $4，心中不免不開心了起來(雖然才差 $1，老客戶就不是人嗎？)，為什麼新用戶可以用比較低的價錢，那 &#8230; 如果老用戶變成新用戶呢？ 心裡抱著這個疑惑發了Ticket給客服人員，得到的回應是，這些折扣是為了要衝用戶數(打開更大的市場)，老客戶自然就不適用。小蛙提到另一個點是，那既然小蛙現在有這個折價券，如果把原本的VPS停掉，再申請一個新的+折價券，那是不是小蛙每個月就可以省下一塊錢美金，既然官方不照顧老客戶，小蛙就只好當小人了&#8230;但想到要重新安裝及設定一堆東西，就覺得很麻煩，為了避免自己偷懶，直接下訂單！等機器開好，就只能硬著頭皮上了，小蛙在訂購的時候，打進promotion code後，果真50% off，老客戶阿 ~~ 唉 ~ 另一個讓小蛙想要這樣做的原因是 VPS.2 目前的價格是 $10，如果用了折價券後變成只要 $5，也就是說如果以小蛙每個月付 $5，跟一個新客戶每個月付 $5，新客戶可以享用到的資源將近舊客戶的 2 倍，真的是 &#8230; 以下是VPS.2的規格。 <a href='http://wazai.net/2217/%e8%ae%93%e4%ba%ba%e5%8f%88%e6%84%9b%e5%8f%88%e6%81%a8%e7%9a%84directspace'>[...]</a><table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="蛙齋第一篇 - VPS 心得" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1099%2F%25E8%259B%2599%25E9%25BD%258B%25E7%25AC%25AC%25E4%25B8%2580%25E7%25AF%2587-vps-%25E5%25BF%2583%25E5%25BE%2597&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785257.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">蛙齋第一篇 - VPS 心得</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="VPS安裝記錄" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">VPS安裝記錄</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="小米系統(MIUI ROM)使用心得" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2017%2F%25E5%25B0%258F%25E7%25B1%25B3%25E7%25B3%25BB%25E7%25B5%25B1miui-rom%25E4%25BD%25BF%25E7%2594%25A8%25E5%25BF%2583%25E5%25BE%2597&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589890.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">小米系統(MIUI ROM)使用心得</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="JavaScript列印頁面及mailto寄信亂碼" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1704%2Fjavascript%25E5%2588%2597%25E5%258D%25B0%25E9%25A0%2581%25E9%259D%25A2%25E5%258F%258Amailto%25E5%25AF%2584%25E4%25BF%25A1%25E4%25BA%2582%25E7%25A2%25BC&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785981.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">JavaScript列印頁面及mailto寄信亂碼</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586379.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p><strong><a href="http://directspace.net/" target="_blank">DirestSpace</a></strong>是小蛙第一個使用的VPS(<a href="http://wazai.net/1099" target="_blank">第一篇文章</a>)，中間有曾經跳過別的，但是後來因為介面不太熟悉而又跳回來，DirectSpace價格便宜，速度也還OK，用到現在快半年了，最嚴重的問題是某一次大概超過三四天Server整個掛掉，直到修復之後才收到一封令人驚嚇的信，內容大概是有安全性漏洞，他們發現有駭客攻擊，部分用戶的資料「永久遺失且無法回覆」 &#8230; 如果要推薦VPS，小蛙還是蠻推DirectSpace的，但是心臟要夠大顆(沒有VPS公司能保證一定不會發生意外吧！)<span id="more-2217"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>小蛙寫了一些Crawler程式想要在VPS上面跑，但發現Crawler要把整個網頁撈下來造成記憶體用量大增，原本的VPS不敷使用&#8230;在<a href="http://www.bzlba.com/free-host-domain/discount-coupon/directspace-vps-50off.html" target="_blank">這裡</a>看到永久半價的折價券後開始精打細算了起來，小蛙原本的方案是</p>
<pre>VPS.1
CPU :       1 x 3.3G
RAM :       512MB
Burst :     1024MB
HDD :       20GB
Bandwidth : 1T
IP :        2 IPv4 / 2 IPv6</pre>
<p>每個月必須花上 $5 美金來養這個最便宜的VPS，看著 DirectSpace 的方案越來越貴，當時心裡還有點慶幸自己已經先買了，直到上面提到的網頁「DirectSpace永久半價優惠」，永久？這真的是令人覺得不可思議，重點是目前VPS.1已經漲到$8，如果有這個折價券就會變成每個月只要 $4，心中不免不開心了起來(雖然才差 $1，老客戶就不是人嗎？)，為什麼新用戶可以用比較低的價錢，那 &#8230; 如果老用戶變成新用戶呢？</p>
<p>心裡抱著這個疑惑發了Ticket給客服人員，得到的回應是，這些折扣是為了要衝用戶數(打開更大的市場)，老客戶自然就不適用。小蛙提到另一個點是，那既然小蛙現在有這個折價券，如果把原本的VPS停掉，再申請一個新的+折價券，那是不是小蛙每個月就可以省下一塊錢美金，既然官方不照顧老客戶，小蛙就只好當小人了&#8230;但想到要重新安裝及設定一堆東西，就覺得很麻煩，為了避免自己偷懶，直接下訂單！等機器開好，就只能硬著頭皮上了，小蛙在訂購的時候，打進promotion code後，果真50% off，老客戶阿 ~~ 唉 ~</p>
<p>另一個讓小蛙想要這樣做的原因是 VPS.2 目前的價格是 $10，如果用了折價券後變成只要 $5，也就是說如果以小蛙每個月付 $5，跟一個新客戶每個月付 $5，新客戶可以享用到的資源將近舊客戶的 2 倍，真的是 &#8230; 以下是VPS.2的規格。</p>
<pre>VPS.2
CPU :       2 x 3.3G
RAM :       1024MB
Burst :     1536MB
HDD :       30GB
Bandwidth : 2T
IP :        2 IPv4 / 2 IPv6</pre>
<p>看看規格，跟上面的VPS.1比起來，一樣的花費卻是不一樣的享受 &#8230; 令人不開心。好吧！小蛙承認這篇文章是移機之後第一篇測試的文章，之後會把VPS裝機過程POST上來，總覺得最近重新安裝的機率真的太高了&#8230; = = 有要購買DirectSpace的網友，別忘了到<a href="http://www.bzlba.com/free-host-domain/discount-coupon/directspace-vps-50off.html" target="_blank">這裡</a>看看有沒有最新優惠唷！(小蛙不禁想到，如果是完全不知道有優惠券這件事的新用戶，不就成了名符其實的冤大頭？！)</p>
<p>補充：<br />
小蛙在購買了額外的512RAM後才發現有折價券這件事，但卡已經刷下去了，於是回報給DirectSpace看能不能退費，結論是「<span style="color: #ff0000;"><strong>只有Server類的服務可以三日內退費，附加功能型的服務是沒有辦法退費的</strong></span>」，花了 $3 學到這件事，讓小蛙生氣的事情來了，客服說無法退費後，小蛙就跟客服說要退掉這個服務，問題是小蛙購買後根本完全沒有使用到這多出來的記憶體，錢已經刷下去了，卻又因為跟客服講了要終止服務，就這樣「花了$3，完全沒有使用到這多出來的記憶體後，卻又被客服終止服務&#8230;」，請問這是哪招？</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script><br />
</span></p>
<table width="98%" border="0">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td></td>
</tr>
</tbody>
</table>
<p><span style="color: #ff0000;"> </span></p>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="蛙齋第一篇 - VPS 心得" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1099%2F%25E8%259B%2599%25E9%25BD%258B%25E7%25AC%25AC%25E4%25B8%2580%25E7%25AF%2587-vps-%25E5%25BF%2583%25E5%25BE%2597&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785257.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">蛙齋第一篇 - VPS 心得</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="VPS安裝記錄" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">VPS安裝記錄</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="小米系統(MIUI ROM)使用心得" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2017%2F%25E5%25B0%258F%25E7%25B1%25B3%25E7%25B3%25BB%25E7%25B5%25B1miui-rom%25E4%25BD%25BF%25E7%2594%25A8%25E5%25BF%2583%25E5%25BE%2597&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589890.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">小米系統(MIUI ROM)使用心得</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/11/16936562.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Picasa 3教學 - 免費相簿的基本介紹與使用方式</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="中華電信 mcool 49, 299 吃到飽 (Transparent Proxy)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1359%2F%25E4%25B8%25AD%25E8%258F%25AF%25E9%259B%25BB%25E4%25BF%25A1-mcool-49-299-%25E5%2590%2583%25E5%2588%25B0%25E9%25A3%25BD-transparent-proxy&from=http%3A%2F%2Fwazai.net%2F2217%2F%25E8%25AE%2593%25E4%25BA%25BA%25E5%258F%2588%25E6%2584%259B%25E5%258F%2588%25E6%2581%25A8%25E7%259A%2584directspace">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586484.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">中華電信 mcool 49, 299 吃到飽 (Transparent Proxy)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2217/%e8%ae%93%e4%ba%ba%e5%8f%88%e6%84%9b%e5%8f%88%e6%81%a8%e7%9a%84directspace/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Android SDK r17 NoClassDefFoundError</title>
		<link>http://wazai.net/2199/android-sdk-r17-noclassdeffounderror</link>
		<comments>http://wazai.net/2199/android-sdk-r17-noclassdeffounderror#comments</comments>
		<pubDate>Wed, 28 Mar 2012 13:01:03 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Android SDK r17]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[NoClassDefFoundError]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2199</guid>
		<description><![CDATA[小蛙前天看到Android SDK r17，想說來升級一下好了，看看有沒有什麼新的feature，結果沒升還好，一升就花去了好長一段時間，真是令人不開心 &#8230; 如果有網友在升級r17後也遇到「NoClassDefFoundError」的情況，這篇文章也許可以幫到您。 升級完r17後是悲劇的開始，原本還能使用的東西，升級完就通通都不能用了，一度懷疑是自己把code改壞了，但沒來由的每一個專案都壞吧！於是矛頭指向SDK r17，再把專案重新建立，一個檔案一個檔案擺進去看看，時好時壞…還是找不到邏輯可言&#62;_&#60;因為小蛙的軟體有使用到Application，而錯誤訊息的第一行就是找不到Application的錯誤，誤導了小蛙的方向，一直以為是Application造成的問題，也嘗試了StackOverflow有人回答Application的android:name="ApplicationBanner"拿掉，問題依舊。 甚至更改了JDK的版本看看，因為之前小蛙開發的環境太舊了，想說換回舊版本的會不會就可以運作，結果也還是一樣，更出現了「VerifyError」的錯誤，搞的小蛙一頭霧水… 根據「android sdk r17 error」當關鍵字google後終於找到了答案…竟然是這麼…令人無言的問題，小蛙最後是跟著How to fix the “NoClassDefFoundError” with ADT 17 @ Foxykeep on Android這篇文章裡面提到的方法做，就解決了「NoClassDefFoundError」的問題，更多細節網友可以連過去看看。小蛙就簡短記錄一下解決方法。 更新完android sdk r17 + ADT 17後，從Eclipse可以看到原本從外部引入的套件會在Package Explorer裡面Referenced Libraries中，而新版本的則是放在Android Dependencies裡面。小蛙的資料夾結構是在專案下建立一個lib的資料夾，這時候新增到Build Path的JAR檔都會跑到Reference Libraries造成錯誤，解決的方法只要把lib更改名稱成libs，所有libs下的JAR檔會自動被引入到Android Dependencies，試著重跑專案看看，終於不會再出現NoClassDefFoundError的錯誤了！真是…沒事還是別亂升級的好…不然就是先做好功課，看看升級之後的版本有沒有什麼災情傳出才好！ 相關資源： How to fix the “NoClassDefFoundError” with ADT 17 @ Foxykeep on Android Ksoap2 Error after Updating Android SDK and <a href='http://wazai.net/2199/android-sdk-r17-noclassdeffounderror'>[...]</a><table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android使用Facebook SDK(申請篇)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1921%2Fandroid%25E4%25BD%25BF%25E7%2594%25A8facebook-sdk%25E7%2594%25B3%25E8%25AB%258B%25E7%25AF%2587&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785095.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android使用Facebook SDK(申請篇)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Conversion to Dalvik format failed with error 1" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1755%2Fconversion-to-dalvik-format-failed-with-error-1&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16786116.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Conversion to Dalvik format failed with error 1</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Error about StartActivityForResult from camera intent" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/01/06/13561641.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Error about StartActivityForResult from camera intent</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android Tabhost with FragmentActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16783857.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Tabhost with FragmentActivity</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>小蛙前天看到<span style="color: #ff0000;"><strong>Android SDK r17</strong></span>，想說來升級一下好了，看看有沒有什麼新的feature，結果沒升還好，一升就花去了好長一段時間，真是令人不開心 &#8230; 如果有網友在升級r17後也遇到「<strong><span style="color: #ff0000;">NoClassDefFoundError</span></strong>」的情況，這篇文章也許可以幫到您。</p>
<p><span id="more-2199"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>升級完r17後是悲劇的開始，原本還能使用的東西，升級完就通通都不能用了，一度懷疑是自己把code改壞了，但沒來由的每一個專案都壞吧！於是矛頭指向SDK r17，再把專案重新建立，一個檔案一個檔案擺進去看看，時好時壞…還是找不到邏輯可言&gt;_&lt;因為小蛙的軟體有使用到Application，而錯誤訊息的第一行就是找不到Application的錯誤，誤導了小蛙的方向，一直以為是Application造成的問題，也嘗試了StackOverflow有人回答Application的<strong><span style="color: #ff0000;">android:name="ApplicationBanner"</span></strong>拿掉，問題依舊。</p>
<p>甚至更改了JDK的版本看看，因為之前小蛙開發的環境太舊了，想說換回舊版本的會不會就可以運作，結果也還是一樣，更出現了「VerifyError」的錯誤，搞的小蛙一頭霧水…</p>
<p>根據「<strong><span style="color: #ff0000;">android sdk r17 error</span></strong>」當關鍵字google後終於找到了答案…竟然是這麼…令人無言的問題，小蛙最後是跟著<a href="http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17" target="_blank"><strong>How to fix the “NoClassDefFoundError” with ADT 17 @ Foxykeep on Android</strong></a>這篇文章裡面提到的方法做，就解決了「<strong><span style="color: #ff0000;">NoClassDefFoundError</span></strong>」的問題，更多細節網友可以連過去看看。小蛙就簡短記錄一下解決方法。</p>
<p>更新完android sdk r17 + ADT 17後，從Eclipse可以看到原本從外部引入的套件會在<strong>Package Explorer</strong>裡面<strong><span style="color: #ff0000;">Referenced Libraries</span></strong>中，而新版本的則是放在<strong><span style="color: #ff0000;">Android Dependencies</span></strong>裡面。小蛙的資料夾結構是在專案下建立一個<strong><span style="color: #ff0000;">lib</span></strong>的資料夾，這時候新增到Build Path的JAR檔都會跑到Reference Libraries造成錯誤，解決的方法只要把lib更改名稱成<strong><span style="color: #ff0000;">libs</span></strong>，所有libs下的JAR檔會自動被引入到Android Dependencies，試著重跑專案看看，終於不會再出現NoClassDefFoundError的錯誤了！真是…沒事還是別亂升級的好…不然就是先做好功課，看看升級之後的版本有沒有什麼災情傳出才好！</p>
<p>相關資源：<br />
<strong><a href="http://android.foxykeep.com/dev/how-to-fix-the-classdefnotfounderror-with-adt-17" target="_blank">How to fix the “NoClassDefFoundError” with ADT 17 @ Foxykeep on Android</a><br />
<a href="http://stackoverflow.com/questions/9862835/ksoap2-error-after-updating-android-sdk-and-adt" target="_blank">Ksoap2 Error after Updating Android SDK and ADT @ StackOverflow</a><br />
<a href="http://stackoverflow.com/questions/9847443/noclassdeffounderror-when-running-instrumentation-test-with-ant" target="_blank">NoClassDefFoundError when running Instrumentation test with ant @ StackOverflow</a><br />
<a href="http://stackoverflow.com/questions/9828722/verifyerror-in-android-test-project-build-tools-v17" target="_blank">VerifyError in android test-project build tools v17 @ StackOverflow</a><br />
<a href="http://tools.android.com/recent/dealingwithdependenciesinandroidprojects" target="_blank">Dealing with dependencies in Android projects @ Android Tools Project Site</a></strong></p>
<p>&nbsp;</p>
<p><strong><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span><br />
</strong></p>
<table width="98%" border="0">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android使用Facebook SDK(申請篇)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1921%2Fandroid%25E4%25BD%25BF%25E7%2594%25A8facebook-sdk%25E7%2594%25B3%25E8%25AB%258B%25E7%25AF%2587&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785095.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android使用Facebook SDK(申請篇)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Conversion to Dalvik format failed with error 1" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1755%2Fconversion-to-dalvik-format-failed-with-error-1&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16786116.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Conversion to Dalvik format failed with error 1</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Error about StartActivityForResult from camera intent" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/01/06/13561641.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Error about StartActivityForResult from camera intent</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android Tabhost with FragmentActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity&from=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16783857.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Tabhost with FragmentActivity</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2199/android-sdk-r17-noclassdeffounderror/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Error about StartActivityForResult from camera intent</title>
		<link>http://wazai.net/2191/error-about-startactivityforresult-from-camera-intent</link>
		<comments>http://wazai.net/2191/error-about-startactivityforresult-from-camera-intent#comments</comments>
		<pubDate>Tue, 20 Mar 2012 15:58:00 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[android:configChanges]]></category>
		<category><![CDATA[MediaStore.ACTION_IMAGE_CAPTURE]]></category>
		<category><![CDATA[NullPointerException]]></category>
		<category><![CDATA[onActivityResult]]></category>
		<category><![CDATA[startActivityForResult]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2191</guid>
		<description><![CDATA[之前在開發「照照明星臉」的時候，遇到最多問題的部分就在呼叫內部相機來讓使用者拍照，並在拍照後取得照片來做後續處理。小蛙在[Android] 照照明星臉 &#8211; 開發心得 @ 過去蛙齋也有提到在處理相機時由於行為模式不同而有所差異，但找了很久卻仍舊找不到問題所在，就在這幾天盛哥開發UShare for Android的時候也恰巧遇到這個問題，於是跟盛哥一起研究這個問題。 小蛙先把事情發生的經過說明清楚，照照明星臉中需要使用到「相機」功能，而最快又方便的方法就是透過MediaStore.ACTION_IMAGE_CAPTURE這種Intent的方式呼叫Android內部相機提供拍照功能(可以不用大費周章自己寫一個相機功能出來)，而運作的方式是由主程式以startActivityForResult啟動一個相機Intent，接著在照完相之後在onActivityResult把照片的位置以及一些資訊接收回來做後續處理。(使用的方法小蛙這邊不贅述了，以「MediaStore.ACTION_IMAGE_CAPTURE」當關鍵字就可以google出一堆教學)。 詭異的地方在於startActivityForResult啟動相機到拍完照片都正常，等回到主程式onActivityResult要處理相片時卻發生之前設定的Uri、tmpFile &#8230; 等等資料全部都變成null，到相簿中查看相片明明就在，可是卻沒辦法從主程式中得到設定好的相片位置(是null)。上網查了一些資料，使用的方式明明就沒錯，不知道為什麼回來後的資料通通消失。 盛哥跑來找小蛙討論，但盛哥竟然忘了之前小蛙開發明星臉的時候，也問過他一個一模一樣的問題，盛哥才猛然想起並問小蛙最後是怎麼解決的，其實小蛙也不知道是怎麼解決的，也許根本就還沒有解決 &#8230; = = &#8230; 小蛙跟盛哥把生命周期都印出來，看看運行的狀況，發現在小蛙的Desire下，運作一切正常；但在盛哥的Galaxy I9000上卻會發生主程式運行了onDestory()，也因為這樣才造成所有的資料通通被清空，但兩個人想了很久還是沒有任何結論，只知道I9000做了這件事，卻對於為什麼I9000會做這件事沒有頭緒。 Activity會莫名其妙被摧毀的原因，小蛙的笨腦袋想的到的就是記憶體不足，導致系統砍程式，但盛哥說根本沒裝軟體(開發機)，從應用程式頁面進去看到記憶體也還有127MB，顯然問題不在這。 想了很久，小蛙突然想到一個Activity被destory的情況，就是之前在測試以下這幾篇文章的時候： Android TabHost Without TabActivity Android TabHost中切換Activity Android Tabhost with FragmentActivity 雖然很早之前就知道Android在螢幕轉向的時候Activity會歷經一次生死，系統會先將原本的Activity刪除，再新增一個轉換過方向的Activity出來，但是在測試這三篇的時候才知道(遲鈍阿&#8230;)，原來可以直接透過設定android:configChanges來讓Activity躲過一次生死輪迴(可參考Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle)。 經過一番測試之後，盛哥已經抱著砍掉重練的想法了，小蛙也想死馬當活馬醫，試試看會不會是因為螢幕轉向的問題造成的，於是拿了I9000仔細查看每個步驟，I9000的相機畫面是「橫的」，包括按鍵及設定介面都是「橫的」，而主程式設定是「直的」，心想會不會是因為這樣子造成的。記得開發明星臉的時候，有「某些」機型無法使用(雖然不完全正常，但相對來說正常些)，以及「同機型的某些手機」可以使用，但「同機型的某些手機」卻不能使用(這個極度不正常，可能的原因太多了，包括刷機以及版本)。 跟盛哥說了這個想法之後，反正也沒有什麼其他辦法了，就試試這個方法看看，結果 &#8230; 會寫這篇文章，當然就是有結果囉！果然跟小蛙想的一樣，是因為「螢幕轉向」造成這個問題，小蛙找了好久都沒有找到類似的相關文章，希望這篇文章可以幫到一些跟小蛙有著相同問題的開發者！Android碰到的問題常常不只一種原因，但在無計可施的情況下，這方法可以試試看喔！<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="onSaveInstanceState, onRestoreInstanceState使用" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1892%2Fonsaveinstancestate-onrestoreinstancestate%25E4%25BD%25BF%25E7%2594%25A8&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784827.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">onSaveInstanceState, onRestoreInstanceState使用</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android權限列表(Manifest.permission)及使用者疑慮" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1996%2Fandroid%25E6%25AC%258A%25E9%2599%2590%25E5%2588%2597%25E8%25A1%25A8manifest-permission%25E5%258F%258A%25E4%25BD%25BF%25E7%2594%25A8%25E8%2580%2585%25E7%2596%2591%25E6%2585%25AE&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784494.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android權限列表(Manifest.permission)及使用者疑慮</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android使用Facebook SDK(申請篇)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1921%2Fandroid%25E4%25BD%25BF%25E7%2594%25A8facebook-sdk%25E7%2594%25B3%25E8%25AB%258B%25E7%25AF%2587&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785095.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android使用Facebook SDK(申請篇)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>之前在開發「<span style="color: #ff0000;"><strong>照照明星臉</strong></span>」的時候，遇到最多問題的部分就在呼叫內部相機來讓使用者拍照，並在拍照後取得照片來做後續處理。小蛙在<strong><a href="http://blog.yam.com/carl44/article/43066648" target="_blank">[Android] 照照明星臉 &#8211; 開發心得 @ 過去蛙齋</a></strong>也有提到在處理相機時由於<strong>行為模式</strong>不同而有所差異，但找了很久卻仍舊找不到問題所在，就在這幾天盛哥開發<strong><a href="http://ushare.cts.com.tw/" target="_blank">UShare</a></strong> for Android的時候也恰巧遇到這個問題，於是跟盛哥一起研究這個問題。</p>
<p><span id="more-2191"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>小蛙先把事情發生的經過說明清楚，照照明星臉中需要使用到「<strong>相機</strong>」功能，而最快又方便的方法就是透過<span style="color: #ff0000;"><strong>MediaStore.ACTION_IMAGE_CAPTURE</strong></span>這種Intent的方式呼叫Android內部相機提供拍照功能(可以不用大費周章自己寫一個相機功能出來)，而運作的方式是由主程式以<span style="color: #ff0000;"><strong>startActivityForResult</strong></span>啟動一個相機Intent，接著在照完相之後在<span style="color: #ff0000;"><strong>onActivityResult</strong></span>把照片的位置以及一些資訊接收回來做後續處理。(使用的方法小蛙這邊不贅述了，以「<strong>MediaStore.ACTION_IMAGE_CAPTURE</strong>」當關鍵字就可以google出一堆教學)。</p>
<p>詭異的地方在於startActivityForResult啟動相機到拍完照片都正常，等回到主程式onActivityResult要處理相片時卻發生之前設定的Uri、tmpFile &#8230; 等等資料全部都變成null，到相簿中查看相片明明就在，可是卻沒辦法從主程式中得到設定好的相片位置(是null)。上網查了一些資料，使用的方式明明就沒錯，不知道為什麼回來後的資料通通消失。</p>
<p>盛哥跑來找小蛙討論，但盛哥竟然忘了之前小蛙開發明星臉的時候，也問過他一個一模一樣的問題，盛哥才猛然想起並問小蛙最後是怎麼解決的，其實小蛙也不知道是怎麼解決的，也許根本就還沒有解決 &#8230; = = &#8230; 小蛙跟盛哥把生命周期都印出來，看看運行的狀況，發現在小蛙的Desire下，運作一切正常；但在盛哥的Galaxy I9000上卻會發生主程式運行了onDestory()，也因為這樣才造成所有的資料通通被清空，但兩個人想了很久還是沒有任何結論，只知道I9000做了這件事，卻對於為什麼I9000會做這件事沒有頭緒。</p>
<p>Activity會莫名其妙被摧毀的原因，小蛙的笨腦袋想的到的就是<strong>記憶體不足</strong>，導致系統砍程式，但盛哥說根本沒裝軟體(開發機)，從應用程式頁面進去看到記憶體也還有127MB，顯然問題不在這。</p>
<p>想了很久，小蛙突然想到一個Activity被destory的情況，就是之前在測試以下這幾篇文章的時候：<br />
<strong><a href="http://wazai.net/2109/android-tabhost-without-tabactivity" target="_blank">Android TabHost Without TabActivity</a></strong><br />
<strong><a href="http://wazai.net/2114/android-tabhost%e4%b8%ad%e5%88%87%e6%8f%9bactivity" target="_blank">Android TabHost中切換Activity</a></strong><br />
<strong><a href="http://wazai.net/2125/android-tabhost-with-fragmentactivity" target="_blank">Android Tabhost with FragmentActivity</a></strong></p>
<p>雖然很早之前就知道Android在螢幕轉向的時候Activity會歷經一次生死，系統會先將原本的Activity刪除，再新增一個轉換過方向的Activity出來，但是在測試這三篇的時候才知道(遲鈍阿&#8230;)，原來可以直接透過設定<span style="color: #ff0000;"><a href="http://developer.android.com/guide/topics/manifest/activity-element.html#config" target="_blank"><span style="color: #ff0000;"><strong><code>android:configChanges</code></strong></span></a></span>來讓Activity躲過一次生死輪迴(<strong><a href="http://wazai.net/2120/android-screen-orientation-event%e8%9e%a2%e5%b9%95%e6%96%b9%e5%90%91%e8%99%95%e7%90%86acitivity-liftcycle" target="_blank">可參考Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</a></strong>)。</p>
<p>經過一番測試之後，盛哥已經抱著砍掉重練的想法了，小蛙也想死馬當活馬醫，試試看會不會是因為螢幕轉向的問題造成的，於是拿了I9000仔細查看每個步驟，I9000的相機畫面是「橫的」，包括按鍵及設定介面都是「橫的」，而主程式設定是「直的」，心想會不會是因為這樣子造成的。記得開發明星臉的時候，有「某些」機型無法使用(雖然不完全正常，但相對來說正常些)，以及「同機型的某些手機」可以使用，但「同機型的某些手機」卻不能使用(這個極度不正常，可能的原因太多了，包括刷機以及版本)。</p>
<p>跟盛哥說了這個想法之後，反正也沒有什麼其他辦法了，就試試這個方法看看，結果 &#8230; 會寫這篇文章，當然就是有結果囉！果然跟小蛙想的一樣，是因為「螢幕轉向」造成這個問題，小蛙找了好久都沒有找到類似的相關文章，希望這篇文章可以幫到一些跟小蛙有著相同問題的開發者！Android碰到的問題常常不只一種原因，但在無計可施的情況下，這方法可以試試看喔！</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="1">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="onSaveInstanceState, onRestoreInstanceState使用" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1892%2Fonsaveinstancestate-onrestoreinstancestate%25E4%25BD%25BF%25E7%2594%25A8&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784827.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">onSaveInstanceState, onRestoreInstanceState使用</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android權限列表(Manifest.permission)及使用者疑慮" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1996%2Fandroid%25E6%25AC%258A%25E9%2599%2590%25E5%2588%2597%25E8%25A1%25A8manifest-permission%25E5%258F%258A%25E4%25BD%25BF%25E7%2594%25A8%25E8%2580%2585%25E7%2596%2591%25E6%2585%25AE&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784494.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android權限列表(Manifest.permission)及使用者疑慮</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android使用Facebook SDK(申請篇)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1921%2Fandroid%25E4%25BD%25BF%25E7%2594%25A8facebook-sdk%25E7%2594%25B3%25E8%25AB%258B%25E7%25AF%2587&from=http%3A%2F%2Fwazai.net%2F2191%2Ferror-about-startactivityforresult-from-camera-intent">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785095.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android使用Facebook SDK(申請篇)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2191/error-about-startactivityforresult-from-camera-intent/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ISecurity.exe &#8211; W32 Blaster.Worm病毒</title>
		<link>http://wazai.net/2174/isecurity-w32-blaster-worm%e7%97%85%e6%af%92</link>
		<comments>http://wazai.net/2174/isecurity-w32-blaster-worm%e7%97%85%e6%af%92#comments</comments>
		<pubDate>Wed, 14 Mar 2012 14:03:29 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[心得記錄]]></category>
		<category><![CDATA[isecurity.exe]]></category>
		<category><![CDATA[taskkill.exe]]></category>
		<category><![CDATA[trojan killer]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2174</guid>
		<description><![CDATA[今天小蛙打開電腦的時候就莫名其妙什麼程式都打不開了，通知欄一直不停跳出isecurity.exe的警告訊息，開啟Firefox出現有Blaster.Worm風險無法開啟，開啟IE、Chrome、工作管理員…等通通都是，有沒有那麼神啊！ 這東西真的是浪費小蛙的時間，用手機上網查了一下「isecurity.exe」，果然是病毒沒錯，解決的方式也算容易的了，也順便安裝了掃木馬的程式，網上木馬何其多…建議大家還是別偷懶，別以為防毒軟體裝著就沒事，已經好久沒中毒的小蛙也嚇了一跳(也可能其實一直都是中毒狀態，只是防毒軟體沒跳出來，就以為一切正常)。 其實需要詳細資料的話，可以直接連到《Isecurity.exe — — 互聯網安全惡意軟體的病毒進程 @ Trojan Killer》，裡面有很詳細的介紹這個惡意的流氓軟體以及解毒方法，小蛙就在這邊記錄自己的做法。 小蛙第一個找到的做法是先把電腦開機到安全模式(也就是開機過程中，按下F8鍵會跳出開機選單，選擇「安全模式(含網路功能)」這個選項)，進到安全模式之後，直接把C:\ProgramData\isecurity.exe刪掉就好，重新啟動電腦後，果然isecurity.exe就沒有再跑出來騷擾人了，接著下載Trojan Killer這套軟體，本來小蛙想略過這個步驟，想說檔案都刪除了應該沒事了吧！但又覺得怕怕的，於是下載來掃描木馬，結果…電腦裡面還藏了依些東西…幸好有做這個動作，對於這種安全性的東西還是別鐵齒比較好！ 看了上面那邊文章後發現其實根本不用開機到安全模式，還學到一個指令 taskkill.exe /F /IM isecurity.exe 原本isecurity.exe跳出來騷擾的時候，相信很多人的動作跟小蛙一樣，想直接開啟「工作管理員」來把這個process殺掉，isecurity.exe也不是省油的燈，當然把「工作管理員」一併封鎖了(好樣的)，原來可以直接透過開始功能表中的「執行」來下刪除process的指令，以後就算「工作管理員」被封鎖掉，也還是可以透過指令的方式來執行。 如果你受到這個isecurity.exe的騷擾，只需要： (1) 開始功能表 -&#62; 執行 –&#62; taskkill.exe /F /IM isecurity.exe   (Win7只要在開始功能表上面的放大鏡輸入即可)。 (2) 把C:\ProgramData\isecurity.exe刪除。 (3) 下載Trojan Killer執行完整掃描。 參考內容《Isecurity.exe — — 互聯網安全惡意軟體的病毒進程 @ Trojan Killer》 包含了惡意軟體說明、軟體畫面、解除軟體步驟、以及step by step解除isecurity.exe影片教學。 可惡的 isecurity.exe ~ 還小蛙時間來 ~~~~~~~~~<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="SWT Class -&gt; JAR -&gt; EXE" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1255%2Fswt-class-jar-exe&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586592.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">SWT Class -&gt; JAR -&gt; EXE</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="SQLite 圖形化操作軟體 - SQLite Expert Personal (2)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1558%2Fsqlite-%25E5%259C%2596%25E5%25BD%25A2%25E5%258C%2596%25E6%2593%258D%25E4%25BD%259C%25E8%25BB%259F%25E9%25AB%2594-sqlite-expert-personal-2&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16588719.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">SQLite 圖形化操作軟體 - SQLite Expert Personal (2)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="網頁壓縮亂碼 - Lighttpd gzip php, js, css, html, plain" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1748%2F%25E7%25B6%25B2%25E9%25A0%2581%25E5%25A3%2593%25E7%25B8%25AE%25E4%25BA%2582%25E7%25A2%25BC-lighttpd-gzip-php-js-css-html-plain&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785395.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">網頁壓縮亂碼 - Lighttpd gzip php, js, css, html, plain</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="取消 WordPress Multi Site (WPMU) 設定" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1328%2F%25E5%258F%2596%25E6%25B6%2588-wordpress-multi-site-%25E8%25A8%25AD%25E5%25AE%259A&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785832.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">取消 WordPress Multi Site (WPMU) 設定</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="JSP將資料匯出成Excel直接下載 by JExcelApi (jxl)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1732%2Fjsp%25E5%25B0%2587%25E8%25B3%2587%25E6%2596%2599%25E5%258C%25AF%25E5%2587%25BA%25E6%2588%2590excel%25E7%259B%25B4%25E6%258E%25A5%25E4%25B8%258B%25E8%25BC%2589-by-jexcelapi-jxl&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785631.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">JSP將資料匯出成Excel直接下載 by JExcelApi (jxl)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>今天小蛙打開電腦的時候就莫名其妙什麼程式都打不開了，通知欄一直不停跳出isecurity.exe的警告訊息，開啟Firefox出現有<strong><span style="color: #ff0000;">Blaster.Worm</span></strong>風險無法開啟，開啟IE、Chrome、工作管理員…等通通都是，有沒有那麼神啊！</p>
<p><span id="more-2174"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>這東西真的是浪費小蛙的時間，用手機上網查了一下「<strong><span style="color: #ff0000;">isecurity.exe</span></strong>」，果然是病毒沒錯，解決的方式也算容易的了，也順便安裝了掃木馬的程式，網上木馬何其多…建議大家還是別偷懶，別以為防毒軟體裝著就沒事，已經好久沒中毒的小蛙也嚇了一跳(也可能其實一直都是中毒狀態，只是防毒軟體沒跳出來，就以為一切正常)。</p>
<p>其實需要詳細資料的話，可以直接連到《<a href="http://trojan-killer.net/zh-tw/isecurity-exe-virus/" target="_blank"><strong>Isecurity.exe — — 互聯網安全惡意軟體的病毒進程 @ Trojan Killer</strong></a>》，裡面有很詳細的介紹這個惡意的流氓軟體以及解毒方法，小蛙就在這邊記錄自己的做法。</p>
<p>小蛙第一個找到的做法是先把電腦開機到<strong>安全模式</strong>(也就是開機過程中，按下<span style="color: #ff0000;"><strong>F8</strong></span>鍵會跳出開機選單，選擇「<strong><span style="color: #ff0000;">安全模式(含網路功能)</span></strong>」這個選項)，進到安全模式之後，直接把<strong><span style="color: #ff0000;">C:\ProgramData\isecurity.exe</span></strong>刪掉就好，重新啟動電腦後，果然isecurity.exe就沒有再跑出來騷擾人了，接著下載Trojan Killer這套軟體，本來小蛙想略過這個步驟，想說檔案都刪除了應該沒事了吧！但又覺得怕怕的，於是下載來掃描木馬，結果…電腦裡面還藏了依些東西…幸好有做這個動作，對於這種安全性的東西還是別鐵齒比較好！</p>
<p>看了上面那邊文章後發現其實根本不用開機到安全模式，還學到一個指令</p>
<p><strong>taskkill.exe /F /IM isecurity.exe</strong></p>
<p>原本isecurity.exe跳出來騷擾的時候，相信很多人的動作跟小蛙一樣，想直接開啟「<strong>工作管理員</strong>」來把這個process殺掉，isecurity.exe也不是省油的燈，當然把「<strong>工作管理員</strong>」一併封鎖了(好樣的)，原來可以直接透過開始功能表中的「<strong>執行</strong>」來下刪除process的指令，以後就算「<strong>工作管理員</strong>」被封鎖掉，也還是可以透過指令的方式來執行。</p>
<p>如果你受到這個isecurity.exe的騷擾，只需要：<br />
(1) 開始功能表 -&gt; 執行 –&gt; taskkill.exe /F /IM isecurity.exe   (Win7只要在開始功能表上面的放大鏡輸入即可)。<br />
(2) 把C:\ProgramData\isecurity.exe刪除。<br />
(3) 下載Trojan Killer執行完整掃描。</p>
<p>參考內容《<a href="http://trojan-killer.net/zh-tw/isecurity-exe-virus/" target="_blank"><strong>Isecurity.exe — — 互聯網安全惡意軟體的病毒進程 @ Trojan Killer</strong></a>》<br />
包含了惡意軟體說明、軟體畫面、解除軟體步驟、以及step by step解除isecurity.exe影片教學。</p>
<p>可惡的 isecurity.exe ~ 還小蛙時間來 ~~~~~~~~~</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="1">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="4"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="SWT Class -&gt; JAR -&gt; EXE" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1255%2Fswt-class-jar-exe&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586592.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">SWT Class -&gt; JAR -&gt; EXE</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="JSP將資料匯出成Excel直接下載 by JExcelApi (jxl)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1732%2Fjsp%25E5%25B0%2587%25E8%25B3%2587%25E6%2596%2599%25E5%258C%25AF%25E5%2587%25BA%25E6%2588%2590excel%25E7%259B%25B4%25E6%258E%25A5%25E4%25B8%258B%25E8%25BC%2589-by-jexcelapi-jxl&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785631.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">JSP將資料匯出成Excel直接下載 by JExcelApi (jxl)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Ubuntu - 調整系統時間與時區設定" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1693%2Fubuntu-%25E8%25AA%25BF%25E6%2595%25B4%25E7%25B3%25BB%25E7%25B5%25B1%25E6%2599%2582%25E9%2596%2593%25E8%2588%2587%25E6%2599%2582%25E5%258D%2580%25E8%25A8%25AD%25E5%25AE%259A&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16588732.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Ubuntu - 調整系統時間與時區設定</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="SQLite 圖形化操作軟體 - SQLite Expert Personal (2)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1558%2Fsqlite-%25E5%259C%2596%25E5%25BD%25A2%25E5%258C%2596%25E6%2593%258D%25E4%25BD%259C%25E8%25BB%259F%25E9%25AB%2594-sqlite-expert-personal-2&from=http%3A%2F%2Fwazai.net%2F2174%2Fisecurity-w32-blaster-worm%25E7%2597%2585%25E6%25AF%2592">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16588719.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">SQLite 圖形化操作軟體 - SQLite Expert Personal (2)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="4" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2174/isecurity-w32-blaster-worm%e7%97%85%e6%af%92/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>定期備份WordPress到Dropbox</title>
		<link>http://wazai.net/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox</link>
		<comments>http://wazai.net/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox#comments</comments>
		<pubDate>Mon, 12 Mar 2012 15:00:55 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[add-apt-repository]]></category>
		<category><![CDATA[crontab]]></category>
		<category><![CDATA[Dropbox]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[shell script]]></category>
		<category><![CDATA[定期備份]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2166</guid>
		<description><![CDATA[(2012-04-17 更新)上個星期蛙齋主機被跟Linux很不熟的小蛙弄到完全沒有辦法開機，只好放出最後大絕-reinstall &#62;&#60;，重新安裝新系統之後發現…之前把VPS裝起來的過程是跌跌撞撞，有很多文件都沒有留下來…只能硬著頭皮慢慢把系統建回去，還好上一次找了一堆資料，寫了定期備份WordPress資料庫以及/var/www的shell script，所以才能在一兩天內讓VPS可以正常運作！(否則以小蛙Linux的程度不知道要弄多久才會好 &#8230;)，這篇文章備份一下小蛙自己的備份的shell script，免得又遇到什麼不測風雲&#8230; 小蛙必須先寫在前面，小蛙對於Linux可以說是完全不熟悉，只會一些常常用到的操作，因此小蛙寫的script可能也會有不少問題，神經夠大條又懶得去找其他資料的網友可以「參考」小蛙的寫法，至少搭配上crontab後，這些script也是很盡職的做好備份的工作，當然如果有Linux強者有更好寫法的話，也歡迎留言讓小蛙以及其他網友參考！ Ubuntu 11.04安裝Dropbox 工欲善其事必先利其器，先把Dropbox裝上去吧！小蛙要裝這個dropbox也找了很久…明明第一次裝的時候並沒有那麼麻煩，感覺一下就裝好了…小蛙參考 Official Debian/Ubuntu packages for Dropbox 這篇文章，其中有一些介紹，有興趣的網友可以點過去看看。 小蛙試過自己下載壓縮檔來執行，但總是會出現一堆奇奇怪怪的問題，最後使用上面那篇文章提到的方法，只有簡單三個指令 $ sudo add-apt-repository ppa:hertzog/nautilus-dropbox $ sudo apt-get update $ sudo apt-get install nautilus-dropbox 如果這三個指令都過的了，就真的是太恭喜了，但小蛙偏偏第一個指令就卡住了「command not found」，以小蛙對Linux粗淺的了解，只要發現某個指令出現command not found，就試試看apt-get install 指令，搞不好就剛好可以裝到需要的套件(不知道這樣說對不對)，問題又來了，照著輸入之後出現下面的問題 # apt-get install add-apt-repository 正在讀取套件清單... 完成 正在重建相依關係 正在讀取狀態資料... 完成 E: 找不到套件 add-apt-repository 喔耶！事情果然不像笨蛙所想的那樣簡單，上網查了一下原來「add-apt-repository」這個東東跟Python有關係，要使用這個指令必須先安裝 # apt-get install python-software-properties 安裝完成後再執行剛剛上面提到的三個指令，就完成Dropbox的安裝囉！直接透過「dropbox <a href='http://wazai.net/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox'>[...]</a><table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="VPS安裝記錄" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">VPS安裝記錄</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="crontab -e相關使用及問題" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2000%2Fcrontab-e%25E7%259B%25B8%25E9%2597%259C%25E4%25BD%25BF%25E7%2594%25A8%25E5%258F%258A%25E5%2595%258F%25E9%25A1%258C&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784347.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">crontab -e相關使用及問題</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="取消 WordPress Multi Site (WPMU) 設定" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1328%2F%25E5%258F%2596%25E6%25B6%2588-wordpress-multi-site-%25E8%25A8%25AD%25E5%25AE%259A&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785832.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">取消 WordPress Multi Site (WPMU) 設定</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="在 WordPress 使用 Facebook 留言板 (Facebook Social Plugins Comments)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1197%2F%25E5%259C%25A8-wordpress-%25E4%25BD%25BF%25E7%2594%25A8-facebook-social-plugins-comments&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586488.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">在 WordPress 使用 Facebook 留言板 (Facebook Social Plugins Comments)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="WordPress 使用 Gravatar 大頭貼" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1409%2Fwordpress-%25E4%25BD%25BF%25E7%2594%25A8-gravatar-%25E5%25A4%25A7%25E9%25A0%25AD%25E8%25B2%25BC&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16590886.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">WordPress 使用 Gravatar 大頭貼</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>(2012-04-17 更新)上個星期蛙齋主機被跟Linux很不熟的小蛙弄到完全沒有辦法開機，只好放出最後大絕-<strong><span style="color: #ff0000;">reinstall</span></strong> &gt;&lt;，重新安裝新系統之後發現…之前把VPS裝起來的過程是跌跌撞撞，有很多文件都沒有留下來…只能硬著頭皮慢慢把系統建回去，還好上一次找了一堆資料，寫了<strong>定期備份WordPress資料庫以及/var/www的shell script</strong>，所以才能在一兩天內讓VPS可以正常運作！(否則以小蛙Linux的程度不知道要弄多久才會好 &#8230;)，這篇文章備份一下小蛙自己的備份的shell script，免得又遇到什麼不測風雲&#8230;</p>
<p><span id="more-2166"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>小蛙必須先寫在前面，小蛙對於Linux可以說是完全不熟悉，只會一些常常用到的操作，因此小蛙寫的script可能也會有不少問題，神經夠大條又懶得去找其他資料的網友可以「<strong>參考</strong>」小蛙的寫法，至少搭配上crontab後，這些script也是很盡職的做好備份的工作，當然如果有Linux強者有更好寫法的話，也歡迎留言讓小蛙以及其他網友參考！</p>
<ul>
<li>
<h3>Ubuntu 11.04安裝Dropbox</h3>
</li>
</ul>
<p>工欲善其事必先利其器，先把<span style="color: #ff0000;"><strong>Dropbox</strong></span>裝上去吧！小蛙要裝這個dropbox也找了很久…明明第一次裝的時候並沒有那麼麻煩，感覺一下就裝好了…小蛙參考 <a href="http://raphaelhertzog.com/2011/06/06/official-debian-ubuntu-packages-for-nautilus-dropbox/" target="_blank"><strong>Official Debian/Ubuntu packages for Dropbox</strong></a> 這篇文章，其中有一些介紹，有興趣的網友可以點過去看看。</p>
<p>小蛙試過自己下載壓縮檔來執行，但總是會出現一堆奇奇怪怪的問題，最後使用上面那篇文章提到的方法，只有簡單三個指令</p>
<pre class="brush: bash; gutter: true">$ sudo add-apt-repository ppa:hertzog/nautilus-dropbox
$ sudo apt-get update
$ sudo apt-get install nautilus-dropbox</pre>
<p>如果這三個指令都過的了，就真的是太恭喜了，但小蛙偏偏第一個指令就卡住了「<strong>command not found</strong>」，以小蛙對Linux粗淺的了解，只要發現某個指令出現command not found，就試試看<strong><span style="color: #ff0000;">apt-get instal</span><span style="color: #ff0000;">l</span></strong> 指令，搞不好就剛好可以裝到需要的套件(不知道這樣說對不對)，問題又來了，照著輸入之後出現下面的問題</p>
<pre class="brush: bash; gutter: true"># apt-get install add-apt-repository
正在讀取套件清單... 完成
正在重建相依關係
正在讀取狀態資料... 完成
E: 找不到套件 add-apt-repository</pre>
<p>喔耶！事情果然不像笨蛙所想的那樣簡單，上網查了一下原來「<strong>add-apt-repository</strong>」這個東東跟<strong>Python</strong>有關係，要使用這個指令必須先安裝</p>
<pre class="brush: bash; gutter: true"># apt-get install python-software-properties</pre>
<p>安裝完成後再執行剛剛上面提到的三個指令，就完成Dropbox的安裝囉！直接透過「<strong><span style="color: #ff0000;">dropbox start</span></strong>」啟動Dropbox、「<strong><span style="color: #ff0000;">dropbox stop</span></strong>」來停止Dropbox，第一次啟動會跳出一個連結，點選該連結後輸入dropbox的帳號密碼後就可以正常使用了。</p>
<p>安裝Dropbox時小蛙遇到兩個問題也順便記錄下來：</p>
<p>(1) 小蛙的Dropbox被安裝到<strong>/root/Dropbox</strong>目錄下，如果移動該目錄會造成Dropbox卡在Connecting而無法使用。</p>
<p>(2) 有一次很奇怪的沒有出現認證連結，輸入dropbox start &gt;&gt; xxx，不知道為什麼把訊息輸出到xxx檔案中卻又出現連結 = = (2012-04-17 只要連續執行兩次以上 dropbox start 就會出現連結)</p>
<ul>
<li>
<h3>備份Shell Script</h3>
</li>
</ul>
<p><span style="color: #ff0000;"><strong>backupProcess.sh</strong></span> (注意要有執行權限，ex. <strong>chmod 744 backupProcess.sh</strong>)，.sh檔最上面一定要加上#!/bin/bash，否則會發生時間到卻一動也不動的情況(可參考<strong><a href="http://wazai.net/2000" target="_blank">crontab -e相關使用及問題 @ 蛙齋</a></strong>)。</p>
<pre class="brush: shell; gutter: true"># 備份所有資料庫，不壓縮(也可以加入壓縮指令)
function backupDB(){
    mysqldump -u資料庫帳號 -p資料庫密碼 --all-databases &gt; /root/Dropbox/vpsbackup/vps-databases-$(date +%Y%m%d).sql
}

# 備份 /var/www 目錄，並且壓縮(如果要備份其他的資料夾，也可以此類推)
function backupWWW(){
    tar -jpc -f /root/Dropbox/vpsbackup/www-$(date +%Y%m%d).tar.bz2 /var/www
}

# 備份 /etc 目錄
function backupEtc(){
    tar -jpc -f /root/Dropbox/vpsbackup/etc-$(date +%Y%m%d).tar.bz2 /etc
}

# 備份 /root 目錄，並且排除Dropbox資料夾
function backupRoot(){
    tar -jpc -f /root/Dropbox/vpsbackup/root-$(date +%Y%m%d).tar.bz2 /root --exclude=Dropbox
}

case  in
    &quot;db&quot;)
        #執行備份db動作
        backupDB;
        ;;
    &quot;www&quot;)
        #備份www資料夾
        backupWWW;
        ;;
    &quot;etc&quot;)
        #備份/etc資料夾
        backupEtc;
        ;;
    &quot;root&quot;)
        #備份/root/shell資料夾
        backupRoot;
        ;;
    *)
        #印出錯誤訊息及使用方式
        echo &quot;&quot;
        echo &quot;Usage  : ./backupProcess.sh [db | www]&quot;
        echo &quot;&quot;
        echo &quot;  db   : backup all databases.&quot;
        echo &quot;  www  : backup /var/www data.&quot;
        echo &quot;  etc  : backup /etc/data.&quot;
        echo &quot;  root : backup /root/shell data.&quot;
        echo &quot;&quot;
        ;;
esac</pre>
<ul>
<li>
<h3>crontab定期執行備份動作</h3>
</li>
</ul>
<p>shell script寫完再來就是讓crontab定期執行囉！以下是小蛙的排程。</p>
<pre class="brush: shell; gutter: true"># crontab –e

# 每天早上三點五分備份/etc
5   3 * * *     /root/backupProcess.sh etc &gt;&gt; /root/log/etc.log
# 每天早上三點十分備份/root
10  3 * * *     /root/backupProcess.sh root &gt;&gt; /root/log/root.log
# 每天早上三點十五分備份database
15  3 * * *     /root/backupProcess.sh db &gt;&gt; /root/log/db.log
# 每個星期天上午三點半備份 /var/www 目錄
30  3 * * 0     /root/backupProcess.sh www &gt;&gt; /root/log/www.log
# 每天早上四點開啟dropbox
0   4 * * *     dropbox start &gt;&gt; /root/log/dropbox.log
# 每天早上四點三十分關閉dropbox
30  4 * * *     dropbox stop &gt;&gt; /root/log/dropbox.log</pre>
<p>呼 ~ 希望這些備份檔可以備而不用！對Linux不熟悉的小蛙來說，重灌Linux真是一大夢魘。(2012-04-17 DirectSpace主機有安全性漏洞遭受攻擊，結果造成部分用戶資料全部遺失 &#8230; 太恐怖了)</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="1">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="VPS安裝記錄" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2223%2Fvps%25E5%25AE%2589%25E8%25A3%259D%25E8%25A8%2598%25E9%258C%2584&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">VPS安裝記錄</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="crontab -e相關使用及問題" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2000%2Fcrontab-e%25E7%259B%25B8%25E9%2597%259C%25E4%25BD%25BF%25E7%2594%25A8%25E5%258F%258A%25E5%2595%258F%25E9%25A1%258C&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784347.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">crontab -e相關使用及問題</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="取消 WordPress Multi Site (WPMU) 設定" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1328%2F%25E5%258F%2596%25E6%25B6%2588-wordpress-multi-site-%25E8%25A8%25AD%25E5%25AE%259A&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/09/16785832.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">取消 WordPress Multi Site (WPMU) 設定</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="在 WordPress 使用 Facebook 留言板 (Facebook Social Plugins Comments)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1197%2F%25E5%259C%25A8-wordpress-%25E4%25BD%25BF%25E7%2594%25A8-facebook-social-plugins-comments&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586488.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">在 WordPress 使用 Facebook 留言板 (Facebook Social Plugins Comments)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="WordPress 使用 Gravatar 大頭貼" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1409%2Fwordpress-%25E4%25BD%25BF%25E7%2594%25A8-gravatar-%25E5%25A4%25A7%25E9%25A0%25AD%25E8%25B2%25BC&from=http%3A%2F%2Fwazai.net%2F2166%2F%25E5%25AE%259A%25E6%259C%259F%25E5%2582%2599%25E4%25BB%25BDwordpress%25E5%2588%25B0dropbox">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16590886.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">WordPress 使用 Gravatar 大頭貼</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2166/%e5%ae%9a%e6%9c%9f%e5%82%99%e4%bb%bdwordpress%e5%88%b0dropbox/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Picasa 3教學 &#8211; 免費相簿的基本介紹與使用方式</title>
		<link>http://wazai.net/2134/picasa-3%e6%95%99%e5%ad%b8-%e5%85%8d%e8%b2%bb%e7%9b%b8%e7%b0%bf%e7%9a%84%e5%9f%ba%e6%9c%ac%e4%bb%8b%e7%b4%b9%e8%88%87%e4%bd%bf%e7%94%a8%e6%96%b9%e5%bc%8f</link>
		<comments>http://wazai.net/2134/picasa-3%e6%95%99%e5%ad%b8-%e5%85%8d%e8%b2%bb%e7%9b%b8%e7%b0%bf%e7%9a%84%e5%9f%ba%e6%9c%ac%e4%bb%8b%e7%b4%b9%e8%88%87%e4%bd%bf%e7%94%a8%e6%96%b9%e5%bc%8f#comments</comments>
		<pubDate>Sun, 11 Mar 2012 06:57:55 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Image]]></category>
		<category><![CDATA[google相簿]]></category>
		<category><![CDATA[Picasa]]></category>
		<category><![CDATA[免費相簿]]></category>
		<category><![CDATA[免費資源]]></category>
		<category><![CDATA[教學]]></category>
		<category><![CDATA[相簿]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2134</guid>
		<description><![CDATA[說到Google相簿 &#8211; Google Picasa，相信對大家來說已經是舊聞了，但還是有一些跟Google不太熟的網友們不曉得有這麼方便又好用的工具(像小蛙的姊姊)，小蛙今天要來介紹Picasa的基本使用方式，只要有一個Google帳號，就可以免費使用Google相簿喔(有條件的免費，但這些條件很夠誠意囉！) 當小蛙要挑選網路空間或是相簿的時候，除了考慮到空間、速度、費用…之外，也要考慮到背後的大老闆，免費的服務有很大部分上線不久，經過大量的濫用造成公司沒辦法負擔維護費用而終止，有良心的公司還會提前通知使用者備份資料，但大多數都是莫名其妙就消失了。如果您使用的是Picasa，最起碼(不敢保證)是由「感覺快要統治全宇宙的Google」所推出的，壽命及穩定性方面也都有相當程度的保障。 Picasa安裝 開始使用Picasa之前，還沒有Gmail帳號的話先去註冊一個吧！註冊好後連到Picasa官網，如果已經是登入狀態就會看到下面的畫面，點選左下角的「好，建立我的Google個人資料」(小蛙不確定是不是一定要點這個，可以試試看點取消帳戶建立) 下一個畫面成功進到Picasa相簿囉！Picasa有兩種上傳照片的方式：(1) 透過Web上傳；(2) 透過Picasa軟體上傳。 如果要透過網頁上傳，只要點選上方的「上載」即可。小蛙建議可以下載Picasa軟體，Picasa軟體除了方便使用者上傳照片外，還包括了許多便利的圖像處理工具喔！如果已經登入可以看到以下畫面，透過右邊的「全新改良的相片上傳程式」下載Picasa軟體。 沒登入的情況下也可以直接透過Picasa首頁下載。 安裝過程沒什麼特別需要調整的，下一步到最後。 安裝完成後執行Picasa3，第一次使用會詢問是否要搜尋電腦中的圖片，如果照片跟小蛙一樣試放在自訂資料夾的話，建議選擇搜尋所有圖片(但可能一些不想曝光的照片也都會被搜尋到喔！Picasa軟體也提供過濾功能，進到軟體後可以再設定不想顯示)。 再來是設定檔案關連，選擇要用Picasa相片檢視器開啟的檔案格式，之後擊點兩下要開啟的相片就會直接使用Picasa相片檢視器開啟了。 Picasa編輯器 進到Picasa軟體後，Picasa會開始搜尋電腦裡的圖片。 在想編輯/檢視的照片上點選滑鼠左鍵兩下開始編輯。 Picasa提供了很多方便的濾鏡及圖片編及工具。像是：剪裁、紅眼、對比、LOMO、柔化、銳化、黑白…等。以下是全部Picasa提供的濾鏡。 Picasa上傳照片 Picasa軟體除了提供簡易的濾鏡工具外，還有最重要的上傳部份，使用Picasa上傳照片也非常簡單，在要上傳的照片本身或是照片資料夾中點選滑鼠右鍵-&#62;上傳到Picasa網路相簿。 用剛剛註冊的Gmail帳號登入吧！ 上傳時可以設定要上傳到哪個相簿、或是新增相簿，相簿描述、相簿瀏覽權限、相片大小以及要分享的對象&#8230;等等資訊。 上傳中的畫面。 上傳完成後透過網頁連到Picasa網頁就可以看到剛剛上傳的相簿囉！ 而Picasa軟體上面也可以很方便的讓使用者知道照片是不是已經上傳，是個很貼心的設計。上傳過的照片會在右下角出現往上的綠色箭頭。 直接透過網頁版Picasa也可以上傳照片，可以點選上方的「上載」，或是進到相簿中有個「新增相片」。 上傳方式也很簡單，直接把圖片拖進去放再點選右下角的確定就可以囉！ Picasa相簿分享 上傳到Picasa後如果想要分享給其他朋友，進入到相簿頁面後，右側有「分享」選項，如果相簿設定為公開，只要其他網友連結到自己的頁面就可以看到公開的相簿，也可以透過右側的「連結」來分享自己的相簿；如果是設定成僅限自己，就沒有辦法分享給其他人看了。Picasa還提供了另外一種權限叫做「僅限知道連結的使用者」，如果是這種分享方式的話，就可以自己設定要給哪些朋友看到這個相簿！ 點選「分享」按鈕後，可以寄發mail給要分享的對象。 選擇「內嵌投影播放」讓使用者可以把相簿內嵌在部落格或是網站上。 而小蛙最常用的功能還是單張照片的嵌入功能，為了減輕小蛙VPS的負擔，只好把圖片全部都外連到Picasa，也就是最常聽到的「外連圖片」。 最後一定要提一下Picasa佛心的部分，先來張圖 紅色框框的部份寫著： 如果有使用Google+，只要相片大小低於 2048x 2048 像素，影片長度少於 15 分鐘，就不會計入免費儲存空間配額。 如果沒有使用Google+，只要相片大小低於 800x 800 像素，影片長度少於 15 分鐘，就不會計入免費儲存空間配額。 意思就是只要在上傳圖片的時候設定符合這兩個規格以內，就可以擁有永遠塞不滿的Picasa相簿喔！是不是很佛心來的呢？<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="ORON 空間下載 - 本站連結下載教學" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1469%2Foron-%25E7%25A9%25BA%25E9%2596%2593%25E4%25B8%258B%25E8%25BC%2589&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586497.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">ORON 空間下載 - 本站連結下載教學</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="免費WIFI介紹–iTaiwan, TPE-free, *CHT-wifi(限中華電信用戶)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2099%2F%25E5%2585%258D%25E8%25B2%25BBwifi%25E4%25BB%258B%25E7%25B4%25B9itaiwan-tpe-free-cht-wifi%25E9%2599%2590%25E4%25B8%25AD%25E8%258F%25AF%25E9%259B%25BB%25E4%25BF%25A1%25E7%2594%25A8%25E6%2588%25B6&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586356.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">免費WIFI介紹–iTaiwan, TPE-free, *CHT-wifi(限中華電信用戶)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Firefox搜尋列使用Google Search" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1767%2Ffirefox%25E6%2590%259C%25E5%25B0%258B%25E5%2588%2597%25E4%25BD%25BF%25E7%2594%25A8google-search&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586665.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Firefox搜尋列使用Google Search</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdWhirl with kuAD" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1832%2Fgoogle-adwhirl-with-kuad&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586494.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdWhirl with kuAD</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdWhirl with Vpon" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1864%2Fgoogle-adwhirl-with-vpon&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586568.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdWhirl with Vpon</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>說到Google相簿 &#8211; <strong><span style="color: #ff0000;">Google Picasa</span></strong>，相信對大家來說已經是舊聞了，但還是有一些跟Google不太熟的網友們不曉得有這麼方便又好用的工具(像小蛙的姊姊)，小蛙今天要來<strong>介紹Picasa的基本使用方式</strong>，只要有一個Google帳號，就可以免費使用Google相簿喔(有條件的免費，但這些條件很夠誠意囉！)</p>
<p><span id="more-2134"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>當小蛙要挑選網路空間或是相簿的時候，除了考慮到<strong>空間</strong>、<strong>速度</strong>、<strong>費用</strong>…之外，也要考慮到背後的大老闆，免費的服務有很大部分上線不久，經過大量的濫用造成公司沒辦法負擔維護費用而終止，有良心的公司還會提前通知使用者備份資料，但大多數都是莫名其妙就消失了。如果您使用的是<strong><span style="color: #ff0000;">Picasa</span></strong>，最起碼(不敢保證)是由「<strong><span style="color: #ff0000;">感覺快要統治全宇宙的Google</span></strong>」所推出的，壽命及穩定性方面也都有相當程度的保障。</p>
<h2><span style="font-weight: bold;">Picasa安裝</span></h2>
<p>開始使用Picasa之前，還沒有Gmail帳號的話先去<a href="https://accounts.google.com/NewAccount?continue=https%3A%2F%2Faccounts.google.com%2FManageAccount&amp;followup=https%3A%2F%2Faccounts.google.com%2FManageAccount" target="_blank"><strong><span style="color: #0000ff;">註冊</span></strong></a>一個吧！註冊好後連到<a href="http://picasaweb.google.com" target="_blank"><strong><span style="color: #0000ff;">Picasa官網</span></strong></a>，如果已經是登入狀態就會看到下面的畫面，點選左下角的「<strong>好，建立我的Google個人資料</strong>」(小蛙不確定是不是一定要點這個，可以試試看點取消帳戶建立)</p>
<p><a href="https://lh4.googleusercontent.com/-jWSDls_etXU/T1w2_PMHFoI/AAAAAAAAAB0/Fnm4VjFu7ao/s800/picasa-16.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh4.googleusercontent.com/-jWSDls_etXU/T1w2_PMHFoI/AAAAAAAAAB0/Fnm4VjFu7ao/s800/picasa-16.png" alt="" /></a></p>
<p>下一個畫面成功進到Picasa相簿囉！Picasa有兩種上傳照片的方式：(1) <strong>透過Web上傳</strong>；(2) <strong>透過Picasa軟體上傳</strong>。</p>
<p><a href="https://lh5.googleusercontent.com/-HfKGAqguhwI/T1w2_DXYxZI/AAAAAAAAABw/uo3Gmb9liYI/s800/picasa-17.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh5.googleusercontent.com/-HfKGAqguhwI/T1w2_DXYxZI/AAAAAAAAABw/uo3Gmb9liYI/s800/picasa-17.png" alt="" /></a></p>
<p>如果要透過網頁上傳，只要點選上方的「<strong>上載</strong>」即可。小蛙建議可以下載Picasa軟體，Picasa軟體除了方便使用者上傳照片外，還包括了許多便利的圖像處理工具喔！如果已經登入可以看到以下畫面，透過右邊的「<strong>全新改良的相片上傳程式</strong>」下載Picasa軟體。</p>
<p><a href="https://lh6.googleusercontent.com/-NvfxpG7dKZI/T1w29kPHxaI/AAAAAAAAABQ/MIRS2zGhxPk/s800/picasa-1.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh4.googleusercontent.com/-fDxSlZe184w/T1w3JyPItgI/AAAAAAAAAEU/0Nrks1lZNBM/s800/picasa-6.png" alt="" /></a></p>
<p>沒登入的情況下也可以直接透過Picasa首頁下載。</p>
<p><a href="https://lh6.googleusercontent.com/-NvfxpG7dKZI/T1w29kPHxaI/AAAAAAAAABQ/MIRS2zGhxPk/s800/picasa-1.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh6.googleusercontent.com/-NvfxpG7dKZI/T1w29kPHxaI/AAAAAAAAABQ/MIRS2zGhxPk/s800/picasa-1.png" alt="" /></a></p>
<p>安裝過程沒什麼特別需要調整的，下一步到最後。</p>
<p><a href="https://lh4.googleusercontent.com/-O1AYK5AVJ2Q/T1w3AMsDkMI/AAAAAAAAACI/VJHmXc7rAIQ/s800/picasa-2.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh4.googleusercontent.com/-O1AYK5AVJ2Q/T1w3AMsDkMI/AAAAAAAAACI/VJHmXc7rAIQ/s800/picasa-2.png" alt="" /></a></p>
<p>安裝完成後執行Picasa3，第一次使用會詢問是否要搜尋電腦中的圖片，如果照片跟小蛙一樣試放在自訂資料夾的話，建議選擇搜尋所有圖片(但可能一些不想曝光的照片也都會被搜尋到喔！Picasa軟體也提供過濾功能，進到軟體後可以再設定不想顯示)。</p>
<p><a href="https://lh6.googleusercontent.com/-j1k_w92HZVI/T1w3F0tetqI/AAAAAAAAADo/uJEmnmMZExI/s800/picasa-3.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="margin: 2px auto 5px; display: block; float: none;" src="https://lh6.googleusercontent.com/-j1k_w92HZVI/T1w3F0tetqI/AAAAAAAAADo/uJEmnmMZExI/s800/picasa-3.png" alt="" /></a></p>
<p>再來是設定檔案關連，選擇要用Picasa相片檢視器開啟的檔案格式，之後擊點兩下要開啟的相片就會直接使用Picasa相片檢視器開啟了。</p>
<p><a href="https://lh3.googleusercontent.com/-2GvhyLASBcc/T1w3GTa92EI/AAAAAAAAADg/gLIiG8orzWw/s800/picasa-4.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/-2GvhyLASBcc/T1w3GTa92EI/AAAAAAAAADg/gLIiG8orzWw/s800/picasa-4.png" alt="" /></a></p>
<h3>Picasa編輯器</h3>
<p>進到Picasa軟體後，Picasa會開始搜尋電腦裡的圖片。</p>
<p><a href="https://lh3.googleusercontent.com/-4XiA5Y6mMUU/T1w3HHO2XYI/AAAAAAAAADw/VpZ3lQs6ccs/s800/picasa-5.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/-4XiA5Y6mMUU/T1w3HHO2XYI/AAAAAAAAADw/VpZ3lQs6ccs/s800/picasa-5.png" alt="" /></a></p>
<p>在想編輯/檢視的照片上點選滑鼠左鍵兩下開始編輯。</p>
<p><a href="https://lh3.googleusercontent.com/-csqjDOvUH3M/T1xC4t7gYBI/AAAAAAAAAFI/5Ouh6pVO-bM/s800/picasa-30.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/-csqjDOvUH3M/T1xC4t7gYBI/AAAAAAAAAFI/5Ouh6pVO-bM/s800/picasa-30.png" alt="" /></a></p>
<p>Picasa提供了很多方便的濾鏡及圖片編及工具。像是：剪裁、紅眼、對比、LOMO、柔化、銳化、黑白…等。以下是全部Picasa提供的濾鏡。</p>
<p><a href="https://lh5.googleusercontent.com/-hq9O69B-zlU/T1w3IcSzdcI/AAAAAAAAAEA/kUFZKQvmEM4/s800/picasa-9.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh5.googleusercontent.com/-hq9O69B-zlU/T1w3IcSzdcI/AAAAAAAAAEA/kUFZKQvmEM4/s800/picasa-9.png" alt="" /></a></p>
<p><a href="https://lh4.googleusercontent.com/-f_6NXg2KuV8/T1w2-ZcGPXI/AAAAAAAAABc/BzMUEwkySJ8/s800/picasa-12.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh4.googleusercontent.com/-4nsSrRNnBqw/T1w29p7Fw7I/AAAAAAAAABY/oElWH0R7Kgo/s800/picasa-10.png" alt="" /></a></p>
<p><a href="https://lh4.googleusercontent.com/-f_6NXg2KuV8/T1w2-ZcGPXI/AAAAAAAAABc/BzMUEwkySJ8/s800/picasa-12.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh5.googleusercontent.com/-E4Icphm1kj4/T1w29p5SXYI/AAAAAAAAABU/1kh4j2_M4II/s800/picasa-11.png" alt="" /></a></p>
<p><a href="https://lh4.googleusercontent.com/-f_6NXg2KuV8/T1w2-ZcGPXI/AAAAAAAAABc/BzMUEwkySJ8/s800/picasa-12.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh4.googleusercontent.com/-f_6NXg2KuV8/T1w2-ZcGPXI/AAAAAAAAABc/BzMUEwkySJ8/s800/picasa-12.png" alt="" /></a></p>
<p><a href="https://lh3.googleusercontent.com/-17tMomZrUxY/T1w3IN3C5YI/AAAAAAAAAEE/3jwrgxSYhME/s800/picasa-8.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/-17tMomZrUxY/T1w3IN3C5YI/AAAAAAAAAEE/3jwrgxSYhME/s800/picasa-8.png" alt="" /></a></p>
<h3>Picasa上傳照片</h3>
<p>Picasa軟體除了提供簡易的濾鏡工具外，還有最重要的上傳部份，使用Picasa上傳照片也非常簡單，在要上傳的照片本身或是照片資料夾中點選<strong>滑鼠右鍵</strong>-&gt;<strong>上傳到Picasa網路相簿</strong>。</p>
<p><a href="https://lh4.googleusercontent.com/-nc_nbEVnF3E/T1w2-cbuf_I/AAAAAAAAABg/KdEKHeSi3Fs/s800/picasa-13.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh4.googleusercontent.com/-nc_nbEVnF3E/T1w2-cbuf_I/AAAAAAAAABg/KdEKHeSi3Fs/s800/picasa-13.png" alt="" /></a></p>
<p>用剛剛註冊的Gmail帳號登入吧！</p>
<p><a href="https://lh3.googleusercontent.com/--Zv8hsg2xcY/T1w2-neMz0I/AAAAAAAAABk/EIbS_HaUGpo/s800/picasa-14.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/--Zv8hsg2xcY/T1w2-neMz0I/AAAAAAAAABk/EIbS_HaUGpo/s800/picasa-14.png" alt="" /></a></p>
<p>上傳時可以設定要上傳到哪個相簿、或是新增相簿，相簿描述、相簿瀏覽權限、相片大小以及要分享的對象&#8230;等等資訊。</p>
<p><a href="https://lh3.googleusercontent.com/-l4sTRdfB3rE/T1w2_NKmuDI/AAAAAAAAABs/fJt58_pgnJw/s800/picasa-15.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/-l4sTRdfB3rE/T1w2_NKmuDI/AAAAAAAAABs/fJt58_pgnJw/s800/picasa-15.png" alt="" /></a></p>
<p>上傳中的畫面。</p>
<p><a href="https://lh6.googleusercontent.com/--wig-cJiv-A/T1w3BozXpRI/AAAAAAAAACQ/RKbIRoolEE8/s800/picasa-19.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh6.googleusercontent.com/--wig-cJiv-A/T1w3BozXpRI/AAAAAAAAACQ/RKbIRoolEE8/s800/picasa-19.png" alt="" /></a></p>
<p>上傳完成後透過網頁連到Picasa網頁就可以看到剛剛上傳的相簿囉！</p>
<p><a href="https://lh5.googleusercontent.com/-qWvgxh1hbEA/T1w3BVRjwPI/AAAAAAAAACc/685-k7RbVOg/s800/picasa-20.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh5.googleusercontent.com/-qWvgxh1hbEA/T1w3BVRjwPI/AAAAAAAAACc/685-k7RbVOg/s800/picasa-20.png" alt="" /></a></p>
<p>而Picasa軟體上面也可以很方便的讓使用者知道照片是不是已經上傳，是個很貼心的設計。上傳過的照片會在右下角出現往上的<strong>綠色箭頭</strong>。</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh5.googleusercontent.com/-w_stg4YO4PE/T1w3Fv_qizI/AAAAAAAAADQ/Yy6-QAlFT7w/s800/picasa-28.png" alt="" /></p>
<p>直接透過網頁版Picasa也可以上傳照片，可以點選上方的「<strong>上載</strong>」，或是進到相簿中有個「<strong>新增相片</strong>」。</p>
<p><a href="https://lh3.googleusercontent.com/-r6RILh6Hcy0/T1w3D4rz-dI/AAAAAAAAAC8/BNOQahl46P8/s800/picasa-26.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/-r6RILh6Hcy0/T1w3D4rz-dI/AAAAAAAAAC8/BNOQahl46P8/s800/picasa-26.png" alt="" /></a></p>
<p>上傳方式也很簡單，直接把圖片拖進去放再點選右下角的確定就可以囉！</p>
<p><a href="https://lh6.googleusercontent.com/-esUfyaHMhxA/T1w3EoRTxqI/AAAAAAAAADE/1-Y310XekZg/s800/picasa-27.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh6.googleusercontent.com/-esUfyaHMhxA/T1w3EoRTxqI/AAAAAAAAADE/1-Y310XekZg/s800/picasa-27.png" alt="" /></a></p>
<h3>Picasa相簿分享</h3>
<p>上傳到Picasa後如果想要分享給其他朋友，進入到相簿頁面後，右側有「<strong>分享</strong>」選項，如果相簿設定為公開，只要其他網友連結到自己的頁面就可以看到公開的相簿，也可以透過右側的「<strong>連結</strong>」來分享自己的相簿；如果是設定成僅限自己，就沒有辦法分享給其他人看了。Picasa還提供了另外一種權限叫做「<strong><span style="color: #ff0000;">僅限知道連結的使用者</span></strong>」，如果是這種分享方式的話，就可以自己設定要給哪些朋友看到這個相簿！</p>
<p><a href="https://lh6.googleusercontent.com/-orH06DPST0Q/T1w3CGrRUcI/AAAAAAAAACg/oHHrSf0zx3Y/s800/picasa-22.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh6.googleusercontent.com/-orH06DPST0Q/T1w3CGrRUcI/AAAAAAAAACg/oHHrSf0zx3Y/s800/picasa-22.png" alt="" /></a></p>
<p>點選「<span style="color: #ff0000;"><strong>分享</strong></span>」按鈕後，可以寄發mail給要分享的對象。</p>
<p><a href="https://lh6.googleusercontent.com/-GrnAoO6W9tY/T1w3F32iP6I/AAAAAAAAADU/QX0eEWQa2vQ/s800/picasa-25.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh6.googleusercontent.com/-GrnAoO6W9tY/T1w3F32iP6I/AAAAAAAAADU/QX0eEWQa2vQ/s800/picasa-25.png" alt="" /></a></p>
<p>選擇「<strong>內嵌投影播放</strong>」讓使用者可以把相簿內嵌在部落格或是網站上。</p>
<p><a href="https://lh3.googleusercontent.com/-oJIHEuwo4wI/T1w3BmdI3MI/AAAAAAAAACk/jT1gC0_v2nQ/s800/picasa-21.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh3.googleusercontent.com/-oJIHEuwo4wI/T1w3BmdI3MI/AAAAAAAAACk/jT1gC0_v2nQ/s800/picasa-21.png" alt="" /></a></p>
<p>而小蛙最常用的功能還是單張照片的嵌入功能，為了減輕小蛙VPS的負擔，只好把圖片全部都外連到Picasa，也就是最常聽到的「外連圖片」。</p>
<p><a href="https://lh4.googleusercontent.com/-ds9gTK4J9_A/T1w3Cgf101I/AAAAAAAAACw/NqwET4rw4fI/s800/picasa-23.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh4.googleusercontent.com/-ds9gTK4J9_A/T1w3Cgf101I/AAAAAAAAACw/NqwET4rw4fI/s800/picasa-23.png" alt="" /></a></p>
<p>最後一定要提一下Picasa佛心的部分，先來張圖</p>
<p><a href="https://lh6.googleusercontent.com/-AW9NZOrv7Mc/T1w6lmsjakI/AAAAAAAAAE0/LHScxDptkLQ/s800/picasa-29.png" target="_blank" rel="lightbox[2134]" title="Picasa 3教學 - 免費相簿的基本介紹與使用方式"><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh6.googleusercontent.com/-AW9NZOrv7Mc/T1w6lmsjakI/AAAAAAAAAE0/LHScxDptkLQ/s800/picasa-29.png" alt="" /></a></p>
<p>紅色框框的部份寫著：</p>
<blockquote><p>如果有使用Google+，只要相片大小低於 2048x 2048 像素，影片長度少於 15 分鐘，就不會計入免費儲存空間配額。</p>
<p>如果沒有使用Google+，只要相片大小低於 800x 800 像素，影片長度少於 15 分鐘，就不會計入免費儲存空間配額。</p></blockquote>
<p>意思就是只要在上傳圖片的時候設定符合這兩個規格以內，就可以擁有永遠塞不滿的Picasa相簿喔！是不是很佛心來的呢？</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="1">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="ORON 空間下載 - 本站連結下載教學" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1469%2Foron-%25E7%25A9%25BA%25E9%2596%2593%25E4%25B8%258B%25E8%25BC%2589&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586497.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">ORON 空間下載 - 本站連結下載教學</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="免費WIFI介紹–iTaiwan, TPE-free, *CHT-wifi(限中華電信用戶)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2099%2F%25E5%2585%258D%25E8%25B2%25BBwifi%25E4%25BB%258B%25E7%25B4%25B9itaiwan-tpe-free-cht-wifi%25E9%2599%2590%25E4%25B8%25AD%25E8%258F%25AF%25E9%259B%25BB%25E4%25BF%25A1%25E7%2594%25A8%25E6%2588%25B6&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586356.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">免費WIFI介紹–iTaiwan, TPE-free, *CHT-wifi(限中華電信用戶)</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Firefox搜尋列使用Google Search" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1767%2Ffirefox%25E6%2590%259C%25E5%25B0%258B%25E5%2588%2597%25E4%25BD%25BF%25E7%2594%25A8google-search&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586665.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Firefox搜尋列使用Google Search</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdWhirl with kuAD" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1832%2Fgoogle-adwhirl-with-kuad&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586494.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdWhirl with kuAD</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdWhirl with Vpon" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1864%2Fgoogle-adwhirl-with-vpon&from=http%3A%2F%2Fwazai.net%2F2134%2Fpicasa-3%25E6%2595%2599%25E5%25AD%25B8-%25E5%2585%258D%25E8%25B2%25BB%25E7%259B%25B8%25E7%25B0%25BF%25E7%259A%2584%25E5%259F%25BA%25E6%259C%25AC%25E4%25BB%258B%25E7%25B4%25B9%25E8%2588%2587%25E4%25BD%25BF%25E7%2594%25A8%25E6%2596%25B9%25E5%25BC%258F">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586568.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdWhirl with Vpon</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2134/picasa-3%e6%95%99%e5%ad%b8-%e5%85%8d%e8%b2%bb%e7%9b%b8%e7%b0%bf%e7%9a%84%e5%9f%ba%e6%9c%ac%e4%bb%8b%e7%b4%b9%e8%88%87%e4%bd%bf%e7%94%a8%e6%96%b9%e5%bc%8f/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android Tabhost with FragmentActivity</title>
		<link>http://wazai.net/2125/android-tabhost-with-fragmentactivity</link>
		<comments>http://wazai.net/2125/android-tabhost-with-fragmentactivity#comments</comments>
		<pubDate>Wed, 29 Feb 2012 15:26:55 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Fragment]]></category>
		<category><![CDATA[FragmentActivity]]></category>
		<category><![CDATA[onConfigurationChanged]]></category>
		<category><![CDATA[screenOrientation]]></category>
		<category><![CDATA[TabHost]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2125</guid>
		<description><![CDATA[(2012-05-07 更新)接續Android TabHost中切換Activity記錄了使用ActivityGroup達到在TabHost中切換Activity的方法，也在Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle記錄了當螢幕方向改變時的處理，這篇小蛙繼續記錄用FragmentActivity取代ActivityGroup，透過FragmentActivity內建的BackStack來管理倒退歷程。 這個程式碼小蛙很早之前就實作完成，但礙於螢幕方向改變時的處理一直還找不到解決辦法，所以一直拖到現在，不囉嗦直接進程式碼。 MainTabActivity.java : 主要的Tabhost Activity。 public class MainTabActivity extends Activity { private TabHost mHost; // 在Activity中使用Tabhost必須要有LocalActivityManager物件來設定 LocalActivityManager lam; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); // main layout採用預設的Tabhost mHost = (TabHost) findViewById(android.R.id.tabhost); lam = new LocalActivityManager(MainTabActivity.this, false); lam.dispatchCreate(savedInstanceState); mHost.setup(lam); mHost.addTab(mHost.newTabSpec(&#34;Tab1&#34;).setIndicator(&#34;Tab1&#34;).setContent(new Intent(MainTabActivity.this, FragmentActivity1.class))); mHost.addTab(mHost.newTabSpec(&#34;Tab2&#34;).setIndicator(&#34;Tab2&#34;).setContent(new Intent(MainTabActivity.this, FragmentActivity2.class))); } @Override <a href='http://wazai.net/2125/android-tabhost-with-fragmentactivity'>[...]</a><table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586379.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost中切換Activity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586378.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost中切換Activity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="簽署你的Android應用程式(.keystore)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1916%2F%25E7%25B0%25BD%25E7%25BD%25B2%25E4%25BD%25A0%25E7%259A%2584android%25E6%2587%2589%25E7%2594%25A8%25E7%25A8%258B%25E5%25BC%258F-keystore&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586510.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">簽署你的Android應用程式(.keystore)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>(2012-05-07 更新)接續<a href="http://wazai.net/2114" target="_blank"><strong>Android TabHost中切換Activity</strong></a>記錄了使用<strong>ActivityGroup達到在TabHost中切換Activity</strong>的方法，也在<a href="http://wazai.net/2120" target="_blank"><strong>Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</strong></a>記錄了當螢幕方向改變時的處理，這篇小蛙繼續記錄<strong>用FragmentActivity取代ActivityGroup</strong>，透過<strong><span style="color: #ff0000;">FragmentActivity</span></strong>內建的<strong>BackStack</strong>來管理倒退歷程。</p>
<p><span id="more-2125"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>這個程式碼小蛙很早之前就實作完成，但礙於螢幕方向改變時的處理一直還找不到解決辦法，所以一直拖到現在，不囉嗦直接進程式碼。</p>
<p><strong>MainTabActivity.java</strong> : 主要的Tabhost Activity。</p>
<pre class="brush: java; gutter: true">public class MainTabActivity extends Activity {
    private TabHost mHost;
    // 在Activity中使用Tabhost必須要有LocalActivityManager物件來設定
    LocalActivityManager lam;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        // main layout採用預設的Tabhost
        mHost = (TabHost) findViewById(android.R.id.tabhost);

        lam = new LocalActivityManager(MainTabActivity.this, false);
        lam.dispatchCreate(savedInstanceState);

        mHost.setup(lam);
        mHost.addTab(mHost.newTabSpec(&quot;Tab1&quot;).setIndicator(&quot;Tab1&quot;).setContent(new Intent(MainTabActivity.this, FragmentActivity1.class)));
        mHost.addTab(mHost.newTabSpec(&quot;Tab2&quot;).setIndicator(&quot;Tab2&quot;).setContent(new Intent(MainTabActivity.this, FragmentActivity2.class)));
    }
    @Override
    protected void onPause() {
        // 漏掉這行一定出錯
        lam.dispatchPause(isFinishing());
        super.onPause();
    }
    @Override
    protected void onResume() {
        // 漏掉這行一定出錯
        lam.dispatchResume();
        super.onResume();
    }
}</pre>
<p><strong>FragmentActivity1.java</strong> : 第一個Tab中用來管理Fragment的FragmentActivity。(2012-05-07更新)經由Jay留言後，小蛙詳細測了一下，發現FragmentActivity主畫面中的Button是沒辦法消失的(因為FragmentActivity的目的關係)，因此改成這樣，讓FragmentActivity純粹當成容器，主要的內容還是以Fragment為主。(這個方法不是唯一，但是一個可行的方法，應該也有更好的做法！)</p>
<pre class="brush: java; gutter: true">public class FragmentActivity1 extends FragmentActivity {
    public static FragmentManager fm;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fragment_activity_1);
        fm = getSupportFragmentManager();
        // 只當容器，主要內容已Fragment呈現
        initFragment(new Fragment1());
    }
    // 切換Fragment
    public static void changeFragment(Fragment f){
        changeFragment(f, false);
    }
    // 初始化Fragment(FragmentActivity中呼叫)
    public static void initFragment(Fragment f){
        changeFragment(f, true);
    }
    private static void changeFragment(Fragment f, boolean init){
        FragmentTransaction ft = fm.beginTransaction();
        ft.replace(R.id.simple_fragment, f);
        if(!init)
            ft.addToBackStack(null);
        ft.commit();
    }
}</pre>
<p><strong>Fragment1.java</strong> : 真正使用到的Fragment。</p>
<pre class="brush: java; gutter: true">public class Fragment1 extends Fragment {
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.fragment_1, container, false);
        Button tv = (Button)v.findViewById(R.id.button2);
        tv.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 直接呼叫FragmentActivity1的靜態方法來做切換
                FragmentActivity1.changeFragment(new Fragment2());
            }
        });
        return v;
    }
}</pre>
<p><strong>fragment_acitivity_1.xml</strong> : FragmentActivity layout。(2012-05-07修改) FragmentActivity只用來當容器，而不真正呈現內容(僅把Fragment內容載入)。</p>
<pre class="brush: xml; gutter: true">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
&lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    android:layout_width=&quot;fill_parent&quot;
    android:layout_height=&quot;fill_parent&quot;
    android:orientation=&quot;vertical&quot;
    android:id=&quot;@+id/simple_fragment&quot;&gt;
&lt;/LinearLayout&gt;</pre>
<p><strong>fragment1.xml</strong>：Fragment layout，FragmentActivity載入的真正內容。</p>
<pre class="brush: actionscript3; gutter: true">&lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&gt;
&lt;LinearLayout xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot;
    android:layout_width=&quot;fill_parent&quot;
    android:layout_height=&quot;fill_parent&quot;
    android:orientation=&quot;vertical&quot;&gt;
    &lt;Button
        android:id=&quot;@+id/button2&quot;
        android:layout_width=&quot;wrap_content&quot;
        android:layout_height=&quot;wrap_content&quot;
        android:text=&quot;Button&quot; /&gt;
&lt;/LinearLayout&gt;</pre>
<p>最後別忘了在AndroidManifest.xml中加入<strong>android:configChanges="orientation"</strong>設定。這樣就成功的使用<strong><span style="color: #ff0000;">在Activity中使用Tabhost並且透過FragmentActivity來管理Fragment</span></strong>囉！</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="1">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td><span style="color: #ff0000;"></span></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586379.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost中切換Activity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586378.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost中切換Activity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="簽署你的Android應用程式(.keystore)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1916%2F%25E7%25B0%25BD%25E7%25BD%25B2%25E4%25BD%25A0%25E7%259A%2584android%25E6%2587%2589%25E7%2594%25A8%25E7%25A8%258B%25E5%25BC%258F-keystore&from=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16586510.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">簽署你的Android應用程式(.keystore)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2125/android-tabhost-with-fragmentactivity/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</title>
		<link>http://wazai.net/2120/android-screen-orientation-event%e8%9e%a2%e5%b9%95%e6%96%b9%e5%90%91%e8%99%95%e7%90%86acitivity-liftcycle</link>
		<comments>http://wazai.net/2120/android-screen-orientation-event%e8%9e%a2%e5%b9%95%e6%96%b9%e5%90%91%e8%99%95%e7%90%86acitivity-liftcycle#comments</comments>
		<pubDate>Wed, 29 Feb 2012 12:30:06 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[event]]></category>
		<category><![CDATA[lifecycle]]></category>
		<category><![CDATA[onConfigurationChanged]]></category>
		<category><![CDATA[screenOrientation]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2120</guid>
		<description><![CDATA[前幾篇文章中介紹了使用Activity取代TabActivity以及透過ActivityGroup達到TabHost中切換Activity。之後會再補上使用FragmentActivity + Fragment + TabHost的作法(Google建議使用Fragment)。這篇文章小蛙要記錄當使用者螢幕方向改變時的處理方式。 在發表完上面兩篇文章後，小蛙馬上實作看看使用FragmentActivity的方法，實作上面跟ActivityGroup差不多，勝過ActivityGroup的部分在於有自動維護的BackStack，不用再自行建立ArrayList&#60;View&#62; history來管理BackStack。至於為什麼沒有馬上發表文章呢？是因為小蛙想要把螢幕方向這件事情一起處理掉再發表，目前的情況是這樣的： 問題1. 使用者在portrait時切換到Tab 2，翻轉螢幕成landscape時卻回到Tab 1(應該要停在Tab 2)。 問題2. 軟體啟動時為portrait(A)，使用者在Tab 1先後運行了Page1-1、Page1-2、Page1-3，在Tab2也同樣運行了Page2-1 ~ Page2-4，這時候使用者翻轉螢幕變成landscape(B)，BackStack全部被清光光，使用者看到的畫面變成軟體剛啟動時的空白畫面。 針對問題1小蛙直接使用onSaveInstanceState, onRestoreInstanceState使用這個方法複寫了onRestoreInstanceState及onSaveInstanceState兩個方法。 @Override protected void onSaveInstanceState(Bundle outState) { // 發生翻轉動作的時候將目前頁籤儲存到Bundle中 outState.putInt(&#34;which&#34;, tabHost.getCurrentTab()); super.onSaveInstanceState(outState); } @Override protected void onRestoreInstanceState(Bundle savedInstanceState) {     // 把剛剛存的取出來     if(savedInstanceState != null) tabHost.setCurrentTab(savedInstanceState.getInt(&#34;which&#34;));     super.onRestoreInstanceState(savedInstanceState); } 但是今天發現了一個新的東西叫作「android:configChanges」，這應該算是一個蠻基礎的設定，小蛙真是太失敗了&#8230;下面這個設定方法可以一併解決上述問題1,2，也就是說上面的方法不需要用到。用小蛙簡單白話的說明就是： 當使用者翻轉螢幕時，就歷經了一次舊Activity的死亡及新Activity的誕生，透過android:configChanges可以使得翻轉螢幕的動作不用歷經這一個過程，取而代之的是呼叫onConfigurationChanged方法。 好吧！總而言之就是只要在AndroidManifest.xml的Activity敘述中加入android:configChanges="orientation"，如此一來，當發生螢幕翻轉事件的時候，就可以保留各個Tab的狀態以及BackStack囉！另外可以透過複寫onConfigurationChanged方法來做更進一步的處理。例如官方範例： @Override public <a href='http://wazai.net/2120/android-screen-orientation-event%e8%9e%a2%e5%b9%95%e6%96%b9%e5%90%91%e8%99%95%e7%90%86acitivity-liftcycle'>[...]</a><table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android Tabhost with FragmentActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16783857.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Tabhost with FragmentActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="onSaveInstanceState, onRestoreInstanceState使用" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1892%2Fonsaveinstancestate-onrestoreinstancestate%25E4%25BD%25BF%25E7%2594%25A8&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784827.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">onSaveInstanceState, onRestoreInstanceState使用</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android使用Facebook SDK(申請篇)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1921%2Fandroid%25E4%25BD%25BF%25E7%2594%25A8facebook-sdk%25E7%2594%25B3%25E8%25AB%258B%25E7%25AF%2587&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785095.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android使用Facebook SDK(申請篇)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>前幾篇文章中介紹了<strong><a href="http://wazai.net/2109" target="_blank">使用Activity取代TabActivity</a></strong>以及<strong><a href="http://wazai.net/2114" target="_blank">透過ActivityGroup達到TabHost中切換Activity</a></strong>。之後會再補上使用<strong>FragmentActivity + Fragment + TabHost</strong>的作法(Google建議使用Fragment)。這篇文章小蛙要記錄當使用者螢幕方向改變時的處理方式。</p>
<p><span id="more-2120"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>在發表完上面兩篇文章後，小蛙馬上實作看看使用<strong>FragmentActivity</strong>的方法，實作上面跟<strong>ActivityGroup</strong>差不多，勝過ActivityGroup的部分在於有<strong>自動維護的BackStack</strong>，不用再自行建立ArrayList&lt;View&gt; history來管理BackStack。至於為什麼沒有馬上發表文章呢？是因為小蛙想要把螢幕方向這件事情一起處理掉再發表，目前的情況是這樣的：</p>
<p><a href="https://lh3.googleusercontent.com/-G5xDZcMB46k/T03qTlq7ANI/AAAAAAAAEMo/oZaTRQIRWeA/s800/orientation.PNG" rel="lightbox[2120]" title="Android orientation"><img class="aligncenter" title="Android orientation" src="https://lh3.googleusercontent.com/-G5xDZcMB46k/T03qTlq7ANI/AAAAAAAAEMo/oZaTRQIRWeA/s800/orientation.PNG" alt="" width="611" height="284" /></a></p>
<p>問題1.<br />
使用者在portrait時切換到Tab 2，翻轉螢幕成landscape時卻回到Tab 1(應該要停在Tab 2)。</p>
<p>問題2.<br />
軟體啟動時為portrait(A)，使用者在Tab 1先後運行了Page1-1、Page1-2、Page1-3，在Tab2也同樣運行了Page2-1 ~ Page2-4，這時候使用者翻轉螢幕變成landscape(B)，BackStack全部被清光光，使用者看到的畫面變成軟體剛啟動時的空白畫面。</p>
<p>針對問題1小蛙直接使用<strong><a href="http://wazai.net/1892" target="_blank">onSaveInstanceState, onRestoreInstanceState使用</a></strong>這個方法複寫了<strong>onRestoreInstanceState</strong>及<strong>onSaveInstanceState</strong>兩個方法。</p>
<pre class="brush: java; gutter: true">@Override
protected void onSaveInstanceState(Bundle outState) {
    // 發生翻轉動作的時候將目前頁籤儲存到Bundle中
    outState.putInt(&quot;which&quot;, tabHost.getCurrentTab());
    super.onSaveInstanceState(outState);
}

@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
    // 把剛剛存的取出來
    if(savedInstanceState != null)
        tabHost.setCurrentTab(savedInstanceState.getInt(&quot;which&quot;));
    super.onRestoreInstanceState(savedInstanceState);
}</pre>
<p>但是今天發現了一個新的東西叫作「<a href="http://developer.android.com/guide/topics/manifest/activity-element.html#config" target="_blank"><span style="color: #ff0000;"><strong><code>android:configChanges</code></strong></span></a>」，這應該算是一個蠻基礎的設定，小蛙真是太失敗了&#8230;下面這個設定方法可以一併解決上述問題1,2，也就是說上面的方法不需要用到。用小蛙簡單白話的說明就是：</p>
<blockquote><p>當使用者翻轉螢幕時，就歷經了一次舊Activity的死亡及新Activity的誕生，透過android:configChanges可以使得翻轉螢幕的動作不用歷經這一個過程，取而代之的是呼叫onConfigurationChanged方法。</p></blockquote>
<p>好吧！總而言之就是只要在<strong>AndroidManifest.xml</strong>的Activity敘述中加入<strong>android:configChanges="orientation"</strong>，如此一來，當發生螢幕翻轉事件的時候，就可以保留各個Tab的狀態以及BackStack囉！另外可以透過複寫onConfigurationChanged方法來做更進一步的處理。例如官方範例：</p>
<pre class="brush: java; gutter: true">@Override
public void onConfigurationChanged(Configuration newConfig) {
    super.onConfigurationChanged(newConfig);

    // Checks the orientation of the screen
    if (newConfig.orientation == Configuration.ORIENTATION_LANDSCAPE) {
        Toast.makeText(this, &quot;landscape&quot;, Toast.LENGTH_SHORT).show();
    } else if (newConfig.orientation == Configuration.ORIENTATION_PORTRAIT){
        Toast.makeText(this, &quot;portrait&quot;, Toast.LENGTH_SHORT).show();
    }
}</pre>
<p>附上Android Activity Lifecycle圖(圖片來源：<a href="http://developer.android.com/reference/android/app/Activity.html" target="_blank">http://developer.android.com/reference/android/app/Activity.html</a>)。<br />
<a href="https://lh6.googleusercontent.com/-7Pj4WcuPH_A/T03yugNy6xI/AAAAAAAAEM0/bPKsMNREUNs/s800/activity_lifecycle.png" rel="lightbox[2120]" title="Activity Lifecycle"><img class="aligncenter" title="Activity Lifecycle" src="https://lh6.googleusercontent.com/-7Pj4WcuPH_A/T03yugNy6xI/AAAAAAAAEM0/bPKsMNREUNs/s800/activity_lifecycle.png" alt="" width="523" height="673" /></a></p>
<p>由於小蛙看到<a href="http://android.tgbus.com/Android/tutorial/201103/346550.shtml" target="_blank">横竖屏切换时候Activity的生命周期 @ Android开发教程</a>及<a href="http://www.cnblogs.com/charley_yang/archive/2011/04/17/2018940.html" target="_blank">【亲测】Activity中的 ConfigChanges 属性以及横竖屏切换时候 Activity 的生命周期 @ 漫步云端</a>這兩篇文章中的Lifecycle感覺有點奇怪，於是自己測了一下，所得到的結果似乎不太一樣，可能是模擬器的行為跟手機的不同，也有可能是Android版本不同(小蛙是用HTC Desire + MIUI2.3測試的，android:minSdkVersion="4&#8243;)，以下是測試結果供參考。</p>
<pre class="brush: text; gutter: true">// 正常啟動Activity
onCreate
onStart
onResume

// 結束Activity
onPause
onStop
onDestroy

// 翻轉螢幕(直轉橫、橫轉直)
onSaveInstanceState
onPause
onStop
onDestroy
onCreate
onStart
onRestoreInstanceState
onResume

// 翻轉螢幕(直轉橫、橫轉直)
// 以及android:configChanges=&quot;orientation&quot;
onConfigurationChanged</pre>
<p>今天用模擬器測試了一下，android:configChanges="orientation"在模擬器上沒法正常使用，必須要改成android:configChanges="orientation|keyboardHidden"，有遇到問題的網友不妨試試看。</p>
<p>最後memo一下，小蛙在<a href="http://developer.android.com/guide/topics/resources/runtime-changes.html" target="_blank">官網連結</a>中看到<span style="color: #ff0000;"><strong>onRetainNonConfigurationInstance</strong></span>這個東西，查了三篇文章大概看了一下內容看起來應該蠻實用的，之後有空實作完再把結果Post上來。<br />
<strong><a href="http://chipin01.blogspot.com/2009/04/android.html" target="_blank">[Android] 煩人的螢幕旋轉 @ 生活藝術 ● 藝術生活</a></strong><br />
<a href="http://chengbs.iteye.com/blog/1156167" target="_blank"><strong>activity状态的保存和保持(onRetainNonConfigurationInstance和getLastNonConfigurationInstance) @ chengbs</strong></a><br />
<a href="http://blog.yam.com/ipray/article/29768416" target="_blank"><strong>[Android] 比較onSaveInstanceState() 與 onRetainNonConfigurationInstance() 函式 @ 我思故我在</strong></a></p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="1">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td><span style="color: #ff0000;"></span></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android Tabhost with FragmentActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16783857.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Tabhost with FragmentActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="onSaveInstanceState, onRestoreInstanceState使用" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1892%2Fonsaveinstancestate-onrestoreinstancestate%25E4%25BD%25BF%25E7%2594%25A8&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784827.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">onSaveInstanceState, onRestoreInstanceState使用</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android使用Facebook SDK(申請篇)" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1921%2Fandroid%25E4%25BD%25BF%25E7%2594%25A8facebook-sdk%25E7%2594%25B3%25E8%25AB%258B%25E7%25AF%2587&from=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16785095.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android使用Facebook SDK(申請篇)</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2120/android-screen-orientation-event%e8%9e%a2%e5%b9%95%e6%96%b9%e5%90%91%e8%99%95%e7%90%86acitivity-liftcycle/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android TabHost中切換Activity</title>
		<link>http://wazai.net/2114/android-tabhost%e4%b8%ad%e5%88%87%e6%8f%9bactivity</link>
		<comments>http://wazai.net/2114/android-tabhost%e4%b8%ad%e5%88%87%e6%8f%9bactivity#comments</comments>
		<pubDate>Sat, 25 Feb 2012 07:03:29 +0000</pubDate>
		<dc:creator>Hans</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Activity]]></category>
		<category><![CDATA[ActivityGroup]]></category>
		<category><![CDATA[back stack]]></category>
		<category><![CDATA[TabHost]]></category>
		<category><![CDATA[切換activity]]></category>

		<guid isPermaLink="false">http://wazai.net/?p=2114</guid>
		<description><![CDATA[上一篇文章Android TabHost Without TabActivity提到如何以Activity取代過期的TabActivity來操作TabHost，官方文件中建議以Fragment取代TabActivity，但小蛙還沒試出來使用Fragment的方式(同事盛哥那邊有試出來，之後徵詢盛哥同意後再把Fragment的做法分享出來)，小蛙在這邊記錄使用Activity + TabHost + 頁籤中切換Activity，並且保存各個頁籤的Back Stack。注意：官方建議使用Fragment，除非是想跟小蛙一樣懶惰到不想動到整體架構，想要進行「最少修改」，還是聽從官方建議使用Fragment比較好喔！ 上個星期跟盛哥試了一段時間使用Fragment後還是不得其門而入(兩個人對Fragment都還不太熟悉)，卡住的原因是現在有兩個Tab，當Tab1進入到第二個畫面，Tab2進到第三個畫面，但使用者切回Tab1的時候，Tab1的狀態無法被保留(第二畫面)，這個影響就是如果使用者透過Tab1已經搜尋到想要的資料後，因為某些原因切到Tab2，這時候想點回Tab1時，資料卻已經消失，這對使用者體驗來說是非常差的。 前天看到盛哥留言已經解決了上述問題，而在看到盛哥解決之前，小蛙也在 Android: TabActivity Nested Activities @ Henrik Larsen Toft、 Android : How to have multiple activities under a single tab of TabActivity @ GammaPoint 這兩篇文章中找到曙光，要讓Activity彼此切換，在這邊使用到了ActivityGroup去管理各個Activity切換的動作，並且額外設置了一個ArrayList&#60;View&#62; history當作Back Stack來使用。但小蛙照著做卻還是沒辦法使用，所以修改了一些東西。 做法從上圖可以看得出來(也有可能畫得太爛造成大家看不太懂)，首先小蛙在MainActivity中建立了3個Tab，分別是Tab1、Tab2、Tab3，而Tab1中會有兩次切換Activity的動作(既然是兩次為什麼會有3個Activity？等等後面小蛙會說明)，以此類推Tab2也相同，Tab3則是很單純的直接顯示一個Activity7。 會使用到同一頁籤中切換Activity的所有Activity都必須透過ActivityGroup來做管理，也就是圖中的Activity1、Activity2、Activity3都是可以透過ActivityGroup1來管理，同理可說明ActivityGroup2，每個ActivityGroup又另外設置了個別的Back Stack來管理當使用者按下Back鍵時的行為(例如：該退出程式還是回到上一個Activity、切換Tab時該Tab原本停留的狀態)，至於Activity7因為只有單一頁面所以不需要這麼麻煩。介紹完架構家族之後，進到程式碼的部份。 承上篇文章Android TabHost Without TabActivity，在MainActivity中的TabHost加入頁籤。 mHost.addTab(mHost.newTabSpec(getString(R.string.tab_two_name)) .setIndicator(getString(R.string.tab_two_name)) .setContent(new Intent(this, ActivityGroup1.class))); 小蛙在測試了上面兩篇文章的方法後發現，必須要在ActivityGroup1中直接先載入Activity1(也就是ActivityGroup僅用來"操作"這些Activity，並沒有實質的內容呈現，如果讓ActivityGroup在這邊有自己的內容呈現，會造成Back Stack運作錯誤，也有可能是小蛙實作上出了問題，如果照著上面兩篇文章試不出來的網友，不妨參照小蛙的做法)，以下是ActivityGroup1的程式碼： public class ActivityGroup1 extends <a href='http://wazai.net/2114/android-tabhost%e4%b8%ad%e5%88%87%e6%8f%9bactivity'>[...]</a><table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android Tabhost with FragmentActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16783857.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Tabhost with FragmentActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android SDK r17 NoClassDefFoundError" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android SDK r17 NoClassDefFoundError</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586379.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></description>
			<content:encoded><![CDATA[<p>上一篇文章<a href="http://wazai.net/2109" target="_blank"><strong>Android TabHost Without TabActivity</strong></a>提到如何以Activity取代過期的TabActivity來操作TabHost，官方文件中建議以Fragment取代TabActivity，但小蛙還沒試出來使用Fragment的方式(同事盛哥那邊有試出來，之後徵詢盛哥同意後再把Fragment的做法分享出來)，小蛙在這邊記錄<strong><span style="color: #ff0000;">使用Activity + TabHost + 頁籤中切換Activity，並且保存各個頁籤的Back Stack</span></strong>。注意：<span style="color: #000000;"><strong>官方建議使用Fragment，除非是想跟小蛙一樣懶惰到不想動到整體架構，想要進行「最少修改」，還是聽從官方建議使用Fragment比較好喔！</strong></span></p>
<p><span id="more-2114"></span></p>
<p style="text-align: center;"><span style="color: #ff0000;"> <table width="98%" border="0">
  <tbody>
    <tr valign="top">
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
      <td><script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*336x280 */
google_ad_slot = "7156801492";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></td>
    </tr>
  </tbody>
</table>
<script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/*728x15*/
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<p>上個星期跟盛哥試了一段時間使用Fragment後還是不得其門而入(兩個人對Fragment都還不太熟悉)，卡住的原因是現在有兩個Tab，當Tab1進入到第二個畫面，Tab2進到第三個畫面，但使用者切回Tab1的時候，Tab1的狀態無法被保留(第二畫面)，這個影響就是如果使用者透過Tab1已經搜尋到想要的資料後，因為某些原因切到Tab2，這時候想點回Tab1時，資料卻已經消失，這對<strong>使用者體驗</strong>來說是非常差的。</p>
<p>前天看到盛哥留言已經解決了上述問題，而在看到盛哥解決之前，小蛙也在<br />
<a href="http://web.archive.org/web/20100816175634/http://blog.henriklarsentoft.com/2010/07/android-tabactivity-nested-activities/" target="_blank"><strong>Android: TabActivity Nested Activities @ Henrik Larsen Toft</strong></a>、<br />
<a href="http://gamma-point.com/content/android-how-have-multiple-activities-under-single-tab-tabactivity" target="_blank"><strong>Android : How to have multiple activities under a single tab of TabActivity @ GammaPoint</strong></a><br />
這兩篇文章中找到曙光，要讓Activity彼此切換，在這邊使用到了<strong><span style="color: #ff0000;">ActivityGroup</span></strong>去管理各個Activity切換的動作，並且額外設置了一個<strong>ArrayList&lt;View&gt; history</strong>當作<span style="color: #ff0000;"><strong>Back Stack</strong></span>來使用。但小蛙照著做卻還是沒辦法使用，所以修改了一些東西。</p>
<p><img style="display: block; float: none; margin-left: auto; margin-right: auto;" src="https://lh5.googleusercontent.com/-oBDLDoyZ5yk/T0iAADc8TNI/AAAAAAAAEMc/ocNlEoroHZA/s800/TabHost.jpg" alt="" width="392" height="353" /></p>
<p>做法從上圖可以看得出來(也有可能畫得太爛造成大家看不太懂)，首先小蛙在MainActivity中建立了3個Tab，分別是Tab1、Tab2、Tab3，而Tab1中會有兩次切換Activity的動作(既然是兩次為什麼會有3個Activity？等等後面小蛙會說明)，以此類推Tab2也相同，Tab3則是很單純的直接顯示一個Activity7。</p>
<p>會使用到同一頁籤中切換Activity的所有Activity都必須透過ActivityGroup來做管理，也就是圖中的Activity1、Activity2、Activity3都是可以透過ActivityGroup1來管理，同理可說明ActivityGroup2，每個ActivityGroup又另外設置了個別的<strong>Back Stack</strong>來管理當使用者按下Back鍵時的行為(例如：該退出程式還是回到上一個Activity、切換Tab時該Tab原本停留的狀態)，至於Activity7因為只有單一頁面所以不需要這麼麻煩。介紹完架構家族之後，進到程式碼的部份。</p>
<p>承上篇文章<a href="http://wazai.net/2109" target="_blank"><strong>Android TabHost Without TabActivity</strong></a>，在MainActivity中的TabHost加入頁籤。</p>
<pre class="brush: java; gutter: true">mHost.addTab(mHost.newTabSpec(getString(R.string.tab_two_name))
                .setIndicator(getString(R.string.tab_two_name))
                .setContent(new Intent(this, ActivityGroup1.class)));</pre>
<p>小蛙在測試了上面兩篇文章的方法後發現，必須要在ActivityGroup1中直接先載入Activity1(也就是ActivityGroup僅用來"操作"這些Activity，並沒有實質的內容呈現，如果讓ActivityGroup在這邊有自己的內容呈現，會造成Back Stack運作錯誤，也有可能是小蛙實作上出了問題，如果照著上面兩篇文章試不出來的網友，不妨參照小蛙的做法)，以下是ActivityGroup1的程式碼：</p>
<pre class="brush: java; gutter: true">public class ActivityGroup1 extends ActivityGroup{
    /** 設定成 static 讓其他的子 Activity 可以存取 */
    public static MonitorGroup group;
    /** Back Stack */
    private ArrayList&lt;View&gt; history;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        this.history = new ArrayList&lt;View&gt;();
        group = this;

        // ActivityGroup1 只是一個外框，在這個外框中載入其他要用的 Activity
        // 如果沒有這個外框會發生錯誤
        View view = getLocalActivityManager()
                  .startActivity(&quot;Activity1&quot;,
                                  new Intent(ActivityGroup1.this, Activity1.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))
                  .getDecorView();
        // 馬上載入真正要執行的 Activity
        replaceView(view);
    }

    /**
     * 在 ActivityGroup 中切換 Activity
     * @param v
     */
    public void replaceView(View v) {
        // 可在這插入換頁動畫
        history.add(v);
        setContentView(v);
    }

    /**
     * 當使用者按下 back 的時候，把之前存起來的 stack 撈回來顯示
     */
    public void back() {
        // 原本的範例是寫 &gt; 0，但會發生錯誤
        if(history.size() &gt; 1) {
            history.remove(history.size()-1);
            View v = history.get(history.size()-1);
            // 可在這插入換頁動畫
            setContentView(v);
        }else {
            // back stack 沒有其他頁面可顯示，直接結束
            finish();
        }
    }
    /**
     * 複寫聆聽按下 back 事件，呼叫 back()
     */
    // 由於我的股票精算師是使用1.6+，因此採用onKeyDown來監聽
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        switch (keyCode) {
            case KeyEvent.KEYCODE_BACK:
                back();
                break;
        }
        return true;
    }
}</pre>
<p>至於在Activity1中的設定如下：</p>
<pre class="brush: java; gutter: true">public class Activity1 extends Activity{
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity1);
        Button button = (Button) findViewById(R.id.button1);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // 如果沒有這個外框會發生錯誤
                View view = ActivityGroup1.group.getLocalActivityManager().startActivity(&quot;Activity2&quot;, new Intent(Activity1.this, Activity2.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)).getDecorView();
                // 載入真正要執行的 Activity
                ActivityGroup1.group.replaceView(view);
            }
        });
}</pre>
<p>基本上到這邊就已經可以正常運作囉！有什麼問題可以留言在這邊，小蛙會盡可能的協助解決。</p>
<p><span style="color: #ff0000;"> <script type="text/javascript"><!--
google_ad_client = "ca-pub-1015500033033785";
/* 728x15 */
google_ad_slot = "7758881599";
google_ad_width = 728;
google_ad_height = 15;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></span></p>
<table width="98%" border="1">
<tbody>
<tr valign="top">
<td><span style="color: #ff0000;"> <embed name='BlogAD732' pluginspage='http://www.macromedia.com/go/getflashplayer' src='http://www.blogad.com.tw/images/732_108.swf?P=s9134131&BM_ID=233703&C=G&BS=dotted&BT=180&BA=left' width='732' height='108' wmode='transparent'></embed><img width=0 height=0 src='http://www.blogad.com.tw/Transfer/TrackH.aspx?BM_ID=233703&M=732'></span></td>
<td><span style="color: #ff0000;"></span></td>
</tr>
</tbody>
</table>
<table class="wumii-related-items" cellspacing="0" cellpadding="3" border="0"  style="clear: both;">
    
    <tr>
        <td colspan="5"><b><font size="-1"  style="display: block !important; padding: 20px 0 5px !important;">您可能有興趣的文章：</font></b></td>
    </tr>
    
        <tr>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important;">
                    <a target="_blank" title="Android Tabhost with FragmentActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2125%2Fandroid-tabhost-with-fragmentactivity&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16783857.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Tabhost with FragmentActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android TabHost Without TabActivity" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2109%2Fandroid-tabhost-without-tabactivity&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/08/16784090.jpg" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android TabHost Without TabActivity</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Google AdMob for Android" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F1758%2Fgoogle-admob-for-android&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/06/16589961.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Google AdMob for Android</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android SDK r17 NoClassDefFoundError" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2199%2Fandroid-sdk-r17-noclassdeffounderror&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/images/blogWidget/wordpress_default.gif" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android SDK r17 NoClassDefFoundError</font>
                    </a>
                </td>
                <td width="102" valign="top" style="padding: 5px !important; margin: 0 !important; border-left: 1px solid #DDDDDD !important;">
                    <a target="_blank" title="Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle" style="text-decoration: none !important; cursor: pointer !important;" href="http://app.wumii.com/ext/redirect?url=http%3A%2F%2Fwazai.net%2F2120%2Fandroid-screen-orientation-event%25E8%259E%25A2%25E5%25B9%2595%25E6%2596%25B9%25E5%2590%2591%25E8%2599%2595%25E7%2590%2586acitivity-liftcycle&from=http%3A%2F%2Fwazai.net%2F2114%2Fandroid-tabhost%25E4%25B8%25AD%25E5%2588%2587%25E6%258F%259Bactivity">
                        <img style="margin: 0 !important; padding: 2px !important; border: 1px solid #DDDDDD !important; width: 96px !important; height: 96px !important;" src="http://static.wumii.com/site_images/2012/03/05/16586379.png" width="96px" height="96px" /><br />
                        <font size="-1" color="#333333" style="display: block !important; line-height: 15px !important; width: 102px !important; font: 12px/15px arial !important; height: 60px !important; margin: 3px 0 0 0 !important; padding: 0 !important; overflow: hidden !important;">Android Screen Orientation Event螢幕方向處理+Acitivity Liftcycle</font>
                    </a>
                </td>
        </tr>
    
    <tr>
        <td colspan="5" align="right">
            <a style="text-decoration: none !important;" href="http://www.wumii.com/widget/relatedItems" target="_blank" title="无觅相关文章插件">
                <font size="-1" color="#bbbbbb" style="display: block !important; font-family: arial !important; padding: 5px 0 !important; font-size: 12px !important; color: #bbb !important;">无觅</font>
            </a>
        </td>
    </tr>
</table>]]></content:encoded>
			<wfw:commentRss>http://wazai.net/2114/android-tabhost%e4%b8%ad%e5%88%87%e6%8f%9bactivity/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>

