作者 主題: 艾鍗學院專題分享:無線POS點餐系統(發票列印支援)  (閱讀 8404 次)

0 會員 與 1 訪客 正在閱讀本文。

yawhorng

  • 可愛的小學生
  • *
  • 文章數: 26
    • 檢視個人資料
Android 3.0平板點餐系統(結合POS印表機)


目錄:
一、專題目的
二、學習內容
三、系統架構
四、開發過程
五、運作成果
六、Live Demo影片

1、專題目的:
自Android 3.0平版系統問世以來,有許多原本在手機螢幕上無法發揮的應用得以在平板電腦上實現。而艾鍗學院此次將結合Embedded Linux與 Android應用程式開發兩項課程實作,將Android平版電腦點餐軟體搭配發票列印機運作。APP應用軟體不再僅僅只是跑跑遊戲或是上上網、看看影片,而是可以結合其他硬體進入另一個商用的領域。

另外,由於此專題同時橫跨了APP軟體開發、嵌入式系統開發兩個領域,因此我們將以貼近業界實作專案的角度,來帶領學員了解如何從無到有去建構一個可商品化的專案,如何建構一個專案應有的設計流程、架構分析,到最後的產品驗證與實作驗收,使學員能即早了解與具備進入相關產業應有的工作技能與工作方法。

 
2、學習內容:

 Android 相關:
1.  Android 3.0 程式設計: UI設計、資料庫表單設計、執行緒管理、各元件之間的協調整合。
2.  Android 3.0新元素Fragment元件,用於平版上建立Menu互動頁面。
3.  Android 3.0軟體架構設計、物件導向模式將POS系統各元件模組化至不同的package與Class。
4. Android Adapter實作:繼續Android Adapter元件擴充開發成適合Menu與Product List呈現模式的Adapter元件。
5. Android互動UI元件開發、加入觸控式互動元件(Quick Action元件、Page View元件….),加強軟體的操作流暢性。
6.  Android  Print Driver開發: 將POS Print Protocol整合進Android軟體中。

Embedded Linux相關:
1.    Embedded Linux  WiFi Print Server Porting。
2.    Embedded web services Goahead Porting。
3.    Embedded Linux 系統整合(F/W Upgrade機制、Shell Script系統元件流程撰寫、
 Linux Print Server Porting) 。
4.    POS Print Protocol 實作。
5.    USB Devices 整合開發。
 
 
3、系統架構:


4、開發過程:
Android  à Print Server 端(Android 3.0):
1.  專題發想、功能定義
2.  Android POS UI介面圖面設計(ICON繪製、版型設計、美工繪圖)


3.  SQLite 關連式DataBase設計(正規化)


4.  Android UI Layout (切割UI產生對應的XML佈局檔)






5.  軟體架構設計: 導入Design Pattern設計各元件的溝通介面與抽像類別。


6.  軟體元件設計: 將架構中定義的各Java介面與抽像類別實作完成。
以下為列舉幾個比較重要的類別:

CheckOutAdapter:
將己購買的產品清單資料,以ListView的方式呈現出來,此Adapter將實現ListView中每一條Product的呈現方式。

SqlObject:
為一抽像類別,用於封裝資料庫存取的資料。

ProductPageAdapter:
產品瀏覽頁將以PageView的方式呈現,PageView元件為修改至Gallery而來,將Gallery修改為每滑動一次只顯示一頁。而此Adapter將負責實現將資料庫中取得的資訊呈現在每一Page UI畫面中。

ProductProfile:
SqlObject的實作類別,封裝所有與產品有關的資訊。

DataBaseDefine:
定義所有的SQLite資料表單。

PosDbAdapter:
Database存取的中繼層,以提供Activity頁面較高階的SQL存取API。

CheckOutMenu:
己購買清單元件,負責控制不同元件之間的關連性與資料變化。

GlobalVariable:
繼承至android.app.Application ,用以當做廣域的常數儲存空間。

7.  Android程式碼實作(Activity頁面開發),撰寫與用戶互動的Event Listener事件處理。


8.  Print Protocol設計實作

9.  UI細節調整(色彩配色修整、字體與圖型大小調整,元件空間比列調整)

10. 測試與驗證程式

PrintServer  à POS Print 端(Embedded Linux):


1. 開發平台SDK整合(Toolchain Kernel, rootfs,redboot)

2. CrossCompiler改用uclibc以縮小Code Size.

3.BootCode修改(ram disk 大小變更 , tftp f/w upgrade修改)

4.Flash Tool  implement(Configure Data儲存用 )

5.Printer Services Porting(SMB,LPR)

6.WiFi Driver Porting (Ralink RT2880)

7.Linux啟動與軟體整合流程(Shell Script撰寫)

8. WiFi init 與configure script 撰寫

9. WebServer implement (Goahead)

10.Web UI Page(f/w upgrade, factory tool, tcp/ip setup,admin…)

11.Web F/w Upgrade機制撰寫





5.運作成果




Live Demo影片
http://www.youtube.com/watch?feature=player_embedded&v=Iw0fBoT-bk0

6.更多Android專題
想了解更多Android相關產業應用專題? 請依以下連結至Android專題總覽精華區。
http://sites.powercam.cc/board.php?courseID=143&f=doc&folderID=839&cid=3403