2013年2月27日 星期三

Raspberry Pi 應用之DLNA影音伺服器

上一篇我們既然已經完成了Windows檔案伺服器,接著下來當然要在Raspberry Pi上做個影音伺服器來應用一下。

一般而言,市面上的家庭多媒體網路儲存伺服器在影音分享部分絕大多採用DLNA的規範, 維基百科上這麼寫著:數位生活網路聯盟 (Digital Living Network Alliance ,DLNA) 是一個由消費性電子、行動電話,以及電腦廠商組成的聯盟組織。該組織的目標在於建立一套可以使得各廠商的產品互相連接,互相適應的工業標準,從而為消費者實現數位化生活。

DLNA技術是利用網路用UPnP機制進行影音的傳輸,規範中有幾個角色在家用網路設備中包括數位媒體伺服器(DMS)、數位媒體播放器(DMP)、數位媒體控制器(DMC)、數位媒體撥放器(DMR)及數位媒體印表機(DMPr)等。
而在行動手持裝置上同樣也有規範包括移動式數位媒體伺服器(M-DMS)、移動式數位媒體播放器(M-DMP)、移動式數位媒體上傳器(M-DMU)、移動式數位媒體下載器(M-DMD)及移動式數位媒體控制器(M-DMC)等詳見維基百科。

所以,本篇就來實作一下如何在 Raspberry Pi 上建置DLNA影音伺服器,另外在實作Android手機如何使用所做出來的DLNA影音伺服器。

2013年2月25日 星期一

Raspberry Pi 應用之Windows檔案伺服器


上一篇我們已經設定完成 Raspberry Pi 網路,應該總是得實要做一些服務來應用,想了一下就從檔案分享器開始好了。

一般而言,在Linux上要將檔案分享出來的方法常見有對Unix Like系統的NFS、對Winsows系統的SMB/CIFS、透過網路作磁碟共享的iSCSI、網際網路雲端硬碟的WebDAV...等等。
由於我們在家時經常使用的是Winsows系統,在Linux系統下大該就是使用SAMBA套件了,所以本篇文章就來實作一下如何讓Raspberry Pi當作Windows檔案分享器。

2013年2月23日 星期六

Raspberry Pi 網路設定

上一篇我們在 Raspberry Pi 上學習了如何安裝 Raspbian作業系統,Raspbian 是基於Debian的Linux系統(Raspberry Pi + Debian = Raspbian ),當我在安裝完後第一次使用時覺得跟Ubuntu的系統操作方式一樣,所以說如果你已經有使用過Ubuntu那使用就等於會使用Raspbian。

由於Raspbian跟Ubuntu一樣很多套件資源都在網路上以及如果要把 Raspberry Pi 用來做一些如檔案分享器之類的網路服務,那就得要先設定網路本篇就延續上一篇繼續說明如讓Raspberry Pi連線網路。

2013年2月21日 星期四

Raspberry Pi 第一次接觸


Raspberry Pi是最近一年很熱門的一項產品,維基百科這麼寫著: Raspberry Pi(樹莓派)是一款基於Linux系統...它由英國的樹莓派基金會所開發,目的是以低價硬體及自由軟體刺激在學校的基本的電腦科學教育。
目前網路上已經有人將Raspberry Pi做成家庭劇院媒體播放系統、文書處理機、架設各種網路站台、檔案(NAS)或IP分享器、遊戲機或是智慧家庭系統控制等。
因此,跟著趕流行也在網路上買了一套來玩玩,Raspberry Pi 在台灣有零售代理商網站叫做Raspberry Pi台灣樹莓派,如果是想要比較有保障(保固)的話可以在零售代理商網站上購得(NTD$1833),別忘了連同附屬相關例如SD卡、USB無線網卡、...一併購買可省去麻煩。
除此之外網拍也可以購得,價格大約落在NTD$1500-1600左右,如果連同壓克力盒子及電源供應器、傳輸線等台幣2000元有找(大陸製的)。
另外還需要購買其他相關配件例如:SD記憶卡建議找 class10 4G以上;無線網路建議找EDIMAX EW-7811Un無線網卡(順X約NTD$300),其他如鍵盤、滑鼠、藍牙...等等在RPi VerifiedPeripherals官網都有列出相容清單,購買前最好先做足功課免得買回來不相容。
其他部分別忘了附屬配件如讀卡機、HDMI線、...之類的就不在詳加說明了。

2013年2月9日 星期六

[ Windwos 8 APPs ] 學習Windwos 8 APPs就從Metro UI開始

Metro UI 是Windows 最新人機介面,或許我們可以稱它為Windows UI、Medern UI、Windows 8-style UI,目前已被採用在Windows 8, XBox 360中。Metro UI最主要的訴求是"光滑、快、現代",其靈感來自於機場及地鐵的指示牌。詳細介紹您可以參閱維基百科的Metro UI的說明。
微軟這次在人機介面上改版下了很大決心,我們所熟悉的Icon不見,最小化及最大化也不見,連關閉鈕都不在,而其設計樣子跟乾隆年間盛行的"多寶格"很像,只不過使用軟體來呈現數位多寶格,其框架大小可以無限延伸,自訂大小。有興趣讀者可以閱讀"Metro UI 不是一套Skin"的文章。
在"談 Metro UI 以及 Expression Blend 的未來"文章中說明Metro UI的四個重點:
  1. 矩形大色塊、顏色單一且簡單
  2. 內容為簡單的文字或是圖案
  3. 大量簡潔的空白空間且具設計感
  4. 使用直覺式設計,讓使用者操作無障礙
在"淺談微軟Windows手機的metro UI設計"文章中,強調Metro UI設計是簡潔輕巧開放快速(clean,light,open and fast),設計元素強調動態內容、字型。並說明七大設計要點:
  1. 強調文字/字型設計
  2. 樸素的圖文
  3. 強調畫面的轉變過程
  4. 內容為主角
  5. 改變空間的運用
  6. 大膽使用顏色
  7. 反應快速的動態磚(tile)
在"小喵看Windows Phone的設計理念—Metro UI"文章中,以夜市招牌-賣木瓜牛奶的招牌,強調:
  1. 最精簡的文字
  2. 最簡單的圖示(或圖案)
  3. 沒有多餘的設計
另外對動態磚的設計也有詳細的說明,動態磚包括:一小段文字、一個背景圖、以及背後的標題。
在操控Windows 8 Metro UI可以用十二字訣來說明,那就是
  • 觸控四邊
  • 滑鼠四角
  • 右鍵無敵
讀者可以參考"Windows 8十二字訣,完全搞懂介面設計使用技巧"的文章說明。
"Windows Phone靈魂詮釋:Metro UI界面完全解析"對Metro UI有詳細的說明。
若您對Metro UI的應用有興趣,可以閱讀"未來生活進行時: 數字倫敦2012 —— 從Metro UI 到奧運規劃未來智慧城市的一個範本"文章。

2013年2月8日 星期五

Fragment子類別之WebViewFragment


在Fragment子類別中包括了 ListFragment 、DialogFragment、PreferenceFragment 及 WebViewFragment,前幾篇已經討論過ListFragmentDialogFragmentPreferenceFragment 接著繼續探討WebViewFragment應用。
WebViewFragment可以把網頁顯示在Fragment中的功能,它跟WebView(網頁視圖)功能相同,主要是用來當作瀏覽器顯示網頁畫面;例如點選類似新聞或RSS列表後進入新聞網頁畫面功能。

2013年2月5日 星期二

Fragment子類別之PreferenceFragment


在Fragment子類別中包括了 ListFragment 、DialogFragment、PreferenceFragment 及 WebViewFragment,我們已經討論過ListFragmentDialogFragment接著繼續探討PreferenceFragment應用。

Preference稱之為"偏好設定",顧名思義如果使用在程式內容中代表你可以儲存一些資訊給程式來使用。在 Android中常見使用在程式參數設定、網頁資源(帳號、密碼之類)儲存或是新聞RSS更新時間儲存等等應用;這類的開發方法常見有 SharedPreferences 、 PreferenceActivity 及 OnPreferenceChangeListener等類別,如果使用Fragment的話就是使用PreferenceFragment類別。

Fragment子類別之DialogFragment


在Fragment子類別中包括了 ListFragment 、DialogFragment、PreferenceFragment 及 WebViewFragment,上一篇已經討論過ListFragment接著繼續探討DialogFragment應用。

DialogFragment是一個浮動在Activity上對話框形的Fragment,它有著類似Dialog(對話框)同樣的功能,經常使用在與使用者互動的畫面上;例如輸入帳號密碼、問題訊問回答、...等詳見Dialogs官方網頁說明。

另外,在另一個Dialogs官網上有建議AlertDialog(告警、詢問)、DatePickerDialog (年、月、日)及 TimePickerDialog(時間)等對話框(Dialog)建議改採繼承 DialogFragment 方式完成。

2013年2月1日 星期五

Fragment子類別之ListFragment


在Fragment子類別中包括了 ListFragment 、DialogFragment、PreferenceFragment 及 WebViewFragment。在探討Fragment與Activity間的資料傳遞時,官網範例使用了ListFragment類別,所以今天我們就從ListFragment開始探討如何應用。

ListFragment就是包含了ListView的Fragment,他會顯示來自你所指定的陣列或Cursor資料。ListFragment經常會使用在類似新聞或RSS列表的資訊顯示。


Fragment與Activity間的資料傳遞

上篇討論了Fragment間的資料傳遞後,接著來討論Fragment與Activity間的資料傳遞。
HelloFragment這篇文章中的第二段提及了一個新聞列表及新聞內容範例。

上圖分別代表兩個Fragment,假如我們要寫出類似這個程式出來在資料的傳遞上該如何做呢? 以下提出兩個方法:
1. 當使用者點選新聞列表(Fragment 1)後資料直接傳遞到新聞內容(Fragment 2)顯示。
2. 當使用者點選新聞列表(Fragment 1)後Fragment 1把使用者所選擇的項目或標題告訴Activity;然後Activity再告訴Fragment 2,接著新聞內容(Fragment 2)顯示新聞資訊。