摘 要:隨著智能手機的廣泛使用,手機接入互聯網是一種趨勢和潮流。傳統的電子設備完全可以移植到智能手機。本文就是研究如何使用Android智能手機拍攝學生作品,并上傳到服務器,解決相機拍攝收藏學生作品的復雜工作程序。
關鍵詞:Android平臺 美術作品收藏 智能手機
中圖分類號:G642文獻標識碼:A文章編號:1673-9795(2011)07(b)-0189-01
本文介紹了一種基于Android的美術作品收藏系統,在系統中Android手機利用周圍無線網絡資源與其他設備進行自發交互,例如進行遠程無線鼠標、無線鍵盤、文件共享、文件傳輸操作,遠程遙控UPnP設備等,為智能空間中其他具有傳感和計算能力的設備識別豐富的上下文提供了可能,又為實現計算對人的注意力的透明提供了重要的途徑。
1 Android系統結構
Android操作系統自頂向下分成4個層次,即應用層、應用框架層、組件庫層和虛擬機和Linux內核層其構架。
(1)應用層Android操作系統同一系列核心應用程序包一起發布,其核心應用程序包括E-mail、客戶端、SMS(短信)序、日歷、Google、地圖、網頁瀏覽器、聯系簿等,目前所有的應用都是使用Java語言編寫的。
(2)應用框架層開發者通過使用核心應用程序來調用Android框架提供的API,這個應用程序結構被設計成方便復用的組件、任何的應用程序都可以公布它的功能,其他的應用程序可以使用這些功能。
(3)在組件庫層。Android包含了一套C/C++函數庫,主要包括libc、MediaFramework、WebKit、SGLOpenGLES、FreeType、SQLite等,它們被應用于Android系統的各種組件中,這些功能通過Android應用框架展現給開發人員。
(4)運行時環境Android包括了一個核心庫,該核心庫提供了Java編程語言核心庫的大多數功能。每一個Android應用程序都在它自己的進程中運行,擁有一個獨立的Dalvik虛擬機實例。Dalvik被設計成可以同時高效地運行多個虛擬系統。
(5)Linux內核層Android底層是一個基于Linux2.6.23內核開發的獨立操作系統主要是添加了一個名為Goldfish的虛擬CPU以及Android運行所需的特定驅動代碼。該層用來提供系統的底層服務,包括安全機制、內存管理、進程管理、網絡堆棧及一系列的驅動模塊。作為一個虛擬的中間層,該層位于硬件與其他的軟件層之間。
2 系統總體設計
系統的總體設計思路是在智能空間中部署一臺PC,負責提供服務并與用戶的Android手機通信。手機作為管理其他設備的管理器,提供管理界面,例如遠程控制設備、文件操作。這實際上是一個C/S結構的系統,PC作為服務器,Android手機作為客戶端系統的總體結構下圖1所示。
在該系統中,OSGI智能網關連接了內部網絡和外部網絡,所有的內部設備與該網關相連,它主要由OSGI Framework以及各種Bundle組成,Bundle之間互相通信,使設備能夠了解彼此的狀態,并進行相互的操作。用戶攜帶Android智能手機進入空間后,手機端連入網絡,動態獲取一個IP地址,搜索網絡中的可用設備服務,發現可用服務后與之進行交互。Android手機與PC之間通過Socket進行通信。
3 系統具體實現
3.1 Android收集終端模塊的設計
當程序啟動時,首先會進行身份驗證。用戶輸入用戶名和密碼,通過創建Http Post對象與服務器進行通信。服務器會將用戶的驗證結果返回。當用戶成功驗證之后,程序正式登錄,并進入登錄頁面,在該頁面可以進行拍攝的操作,當拍攝完畢之后,可以選擇上傳的按鈕,對相片進行上傳(如圖1)。
publicvoiduploadFile2Svr(){
……
try{List
nameValuePairs.add(newBasicNameValuePair(\"filename\",(\"IMAGE.jpg\")));
FileaFile=newFile(photoPath);
Log.i(\"info--photoPath:\",photoPath);
FileEntityfileEty=newFileEntity(aFile,\"binary/octet-stream\");
httppost.setEntity(fileEty);
httppost.addHeader(\"filename\",/*(\"IMAGE.jpg\")*/aFile.getName());
HttpResponseresponse;
response=httpclient.execute(httppost);
Header[]headers=response.getAllHeaders();
headers=response.getHeaders(\"resultcode\");
if(headers[0].getValue().equals(\"0\")){
uploadMsg=\"上傳照片成功!\";}
…………….
}
該系統的Android終端的主要功能包括:用戶登錄,照片的拍攝,和圖片的上傳的功能模塊。
3.2 Server端的模塊的設計
服務器端主要的功能包括:接收客戶端發過來的照片,并保存與服務器,并在數據庫中進行保存。服務器可以提供響應的服務,可以完成圖片的web瀏覽,可以對圖片進行傳輸。
4 實現結果
通過對Android的架構和應用開發進行初步研究,并開發了學生美術作品收藏管理系統,該平臺具有完整的架構體系,本身具有大量的開源類庫,為應用程序的開發提供了非常編輯的開發環境。經測試該學生美術作品收藏管理系統穩定性可靠,并方便老師收藏作品,可以推廣到各高校美術學院。