官术网_书友最值得收藏!

導語 Android開發有你更精彩

手持智能終端的快速普及為移動互聯網奠定了龐大的用戶基礎, 各種精彩紛呈的應用為移動互聯網發展提供了動力源泉, 發一條微博或者微信就可以做成一門生意; 一個應用可以集合一個群體, 用戶的忠誠度、活躍度都得到了很大程度的提升,“找一找、搖一搖、掃一掃”, 信息流通的渠道日益豐富……這樣的場景, 十年前甚至五年前能想象嗎?

0.1 Android來襲

當前, 智能手機應用對各個領域進行著“大滲透”。例如, 過去那種依賴于美食雜志的專業推薦已經不復存在, 來自人們分享的真實感受成為更實用的評價。智能手機、手機應用、社交媒體讓人們對就餐的真實分享變得不受阻礙, 人們搖一搖手機就可以找到餐館, 掃一掃微信二維碼就可以打折, 傳統的會員卡變成了存在手機上的虛擬卡片, 移動互聯網讓人們的飲食消費決策變得立體而更精準。隨著無線帶寬越來越高, 使得更多內容豐富的應用程序植入手機成為可能, 如視頻通話、視頻點播、移動互聯網沖浪、在線看書/聽歌、內容分享等。為了實現這些需求, 必須有一個好的開發平臺來支持, 由Google公司發起的OHA聯盟走在了業界的前列——2007年11月推出了開放的Android平臺, 任何公司及個人都可以免費獲取到源代碼及開發SDK。

小貼士

Android目前尚未有統一中文名稱,中國大陸地區較多人使用“安卓”。Android一詞最早出現于法國作家利爾亞當在1886 年發表的科幻小說《未來夏娃》 (L'ève future)中,他將外表像人的機器起名為Android。

Android在正式發行之前,以著名的機器人名稱來對其進行命名,后來由于涉及版權問題,谷歌將其命名規則變更為用甜點作為系統版本的代號。甜點命名法開始于Android 1.5發布的時候。比如:紙杯蛋糕(Android 1.5),甜甜圈(Android 1.6),松餅(Android 2.0/2.1),凍酸奶(Android 2.2),姜餅(Android 2.3),蜂巢(Android 3.0),冰激凌三明治(Android 4.0),果凍豆(Jelly Bean,Android4.1和Android 4.2),如圖0-1所示。

圖0-1 Android用甜點作為系統版本的代號

由于其開放性, Android平臺得到了業界廣泛的支持, 其中包括各大手機廠商和著名的移動運營商等。繼2008 年9 月第一款基于 Android 平臺的手機 G1 發布之后, 三星、Motorola、華為、中興、宇龍、阿里等公司都陸續推出各自Android平臺的手機。2013年6月數據調研機構Kantar公布了各國最新移動智能操作系統的市場份額, 其中Android繼續保持領先位置, 在歐洲五國和中國的市場份額均超過了70 %。對于以創新的搜索引擎技術而一躍成為互聯網巨頭的Google, Android操作系統是Google最具殺傷力的武器之一。蘋果以其天才的創新, 使得iPhone在全球迅速擁有了數千萬的忠實“粉絲”, 而Android作為第一個完整、開放、免費的手機平臺, 使開發者在為其開發程序時擁有更大的自由。與Windows Mobile、Symbian等廠商不同的是, Android操作系統免費向開發人員提供, 這樣可節省30 %的成本, 獲得眾多廠商與開發者的擁護。Android系統進化非常迅速, 從最初的觸屏到現在的多點觸摸, 從普通的聯系人到現在的數據同步, 從簡單的GoogleMap到現在的導航系統, 從基本的網頁瀏覽到現在的 HTML5, 地圖/導航、郵件、搜索、應用商店、即時消息、瀏覽甚至支付等重要應用被作為操作系統提供的必備功能而廣泛內置, Android技術已經逐漸穩定, 而且功能越來越強大。此外, Android平臺不僅支持 Java、C、C++等主流的編程語言, 還支持Ruby、Python等腳本語言, 這使得Android有著非常廣泛的開發群體。

0.2 移動互聯應用勢不可擋

移動互聯網作為一個新技術產業已經表現出巨大的影響力: 發展速度遠超摩爾定律的產業周期, 縱向一體化的產業發展平臺和生態體系, 全產業鏈條——服務、終端、流量的爆炸性增長, 不斷向ICT (信息、通信和科技) 其他領域延伸的技術和模式創新等, 移動互聯網幾乎在所有行業均獲得了應用, 并且延伸的邊界、發展的速度仍然保持加速態勢。在短短的2~3年中, 所有沒有主動適應移動互聯網發展趨勢的企業均被迅速淘汰或邊緣化, 新的市場格局和主導力量飛速形成并不斷更替。移動互聯網的發展已經深刻影響了整個信息產業的發展趨勢與國際競爭。

移動互聯網整合了互聯網與移動通信技術, 將各類網站及企業的大量信息及各種各樣的應用業務引入到移動互聯網之中, 為企業搭建了一個適合業務和管理需要的移動信息化應用平臺, 提供全方位、標準化、一站式的企業移動商務服務和電子商務解決方案。移動互聯網是一個全國性的、以寬帶IP為技術核心的, 可同時提供話音、傳真、數據、圖像、多媒體等高品質交互應用服務的新一代開放的電信基礎網絡, 是國家信息化建設的重要組成部分。移動互聯技術的推進, 是人們對信息即時采集、共享與互動需求發展的必然。

中國移動互聯網的分化和差異越來越體現在用戶的使用方式、應用體驗、審美取向和價值理念上, 這不僅有利于移動互聯網本身的可持續發展, 更有利于細化和明確中國移動互聯網的傳播價值, 從而吸引更多行業的關注, 加速移動互聯網產業商業價值的變現, 如圖0-2所示。

圖0-2 2012年中國移動互聯網主要細分模式

與手機電子商務相關的電子市場、即時通訊、社會化媒體等在各細分行業中增幅最大, 這主要受益于兩方面原因: 一是手機支付開始落地并獲得大力推廣; 二是淘寶等電子商務平臺積極投入手機版網頁及客戶端產品的布局, 極大提升用戶移動交易量及活躍度。

移動互聯應用作為滿足移動環境中用戶體驗的最佳載體, 其規模持續擴張, 截止2012年底, Apple AppStore下載次數累計超過400 億次, Google Play 下載量也超過250 億次。移動互聯應用的蓬勃發展促進了移動互聯網業務的爆炸性增長, 全球移動互聯網用戶已超過固定互聯網用戶達到15億, 在起步的5年內用戶擴散速度是桌面互聯網同階段的2倍;AppStore在6個月內新增1億活躍用戶。2012年我國移動智能終端出貨量超過2012年之前歷史上出貨量總和, 達2.58億部, 增速達到167 %。移動互聯應用發展的根本驅動力是用戶需求: 差異巨大的用戶個性化需求, 可自定義的智能化移動互聯網應用需求使得智能操作系統成為手機標配, 進而對硬件能力提出了更高要求, 在可預見的3~5年內, 隨著智能手機普及率的繼續提升, 除保持操作界面流暢度, 用戶對3D游戲、高清視頻等互動應用服務需求的釋放, 仍將繼續推動智能終端軟硬件的持續發展。

0.3 用Applnventor開發Android應用

App開發是指專注于手機應用軟件開發與服務, App是application (應用程序) 的縮寫。不同于互聯網, 搜索不再是離智能手機用戶最近的入口。互聯網本質上可以看作是機器的互聯, 所以使用時需要了解各種協議、平臺, 需要記住各種網址, 最終搜索簡化了信息查詢的過程。而移動互聯則是“以人為本”的體系模式, 機器的“人性化”是移動互聯網的本質特征。App作為移動互聯網的入口, 專注于人的需求并且滿足人的需要。隨著人機交互、終端、網絡及傳感器等技術進一步升級, 移動應用將進一步融入到人們生活、學習、娛樂、健康等各個領域, 開發提升用戶在移動環境下體驗的應用將成為移動互聯企業常態化的競爭形式, 快速迭代的在線產品研發與敏捷生命周期管理已經成為移動互聯產業的開發模式, 而掌握在核心移動應用平臺開發各種增值服務技術的人才是促進移動互聯網蓬勃發展的保證。

通常Android平臺App開發一般采用Java+SDK+Eclipse的模式, 需要具備Java語言的知識, 能夠Debug調試程序, 這阻礙了很多具有創意卻苦于沒有經過編程訓練的人開發App。如果你剛開始學習編程, 但又想進行App開發, 怎么辦呢?好消息, AppInventor提供了一個簡單易學的強大工具, 可以迅速將想法變為現實! 通過拖放圖形化的組件和代碼塊, 將這些代碼放在一起, 就得到了一個App。你不必是一個專業的程序開發員, 使用AppInventor就像搭積木玩游戲一樣簡單, 誰都可以輕松創建一個Android App。

AppInventor是 Google 實驗室的創新項目, 在2012年1月AppInventor的服務轉到了MIT (麻省理工學院), 現在項目主要由MIT移動學習中心負責維護, 官方網站: http://appinventor.mit.edu/, 其Logo見圖0-3。

圖0-3 MIT AppInventor logo

谷歌曾在 Android 官網上表示: “使用AppInventor的人不一定非要是專業的研發人員, 甚至根本不需要掌握任何的程序編制知識。”

采用AppInventor開發智能手機應用的優點包括:

● 無Java基礎知識要求;

● 無需編寫代碼;

● 全云端, 所有作業都在瀏覽器完成;

● 支持樂高機器人;

● 更新快速;

● 調試容易, 出現的語法錯誤一般不超過兩個。

其缺點主要有:

● Google AppInventor程序發布到Android Market較繁瑣;

● 相同功能下, AppInventor程序體積比Java開發的Android程序大。

用AppInventor開發智能手機應用的感覺是: 零基礎, 無門檻, 積木式, 易上手, 咔嗒一響就成功; 組件多, 功能強, 出錯少。現在, 讓我們一起來熟悉AppInventor的開發環境吧。

0.4 Applnventor三大作業模塊

1.AppInventor Designer(設計師)

Designer主要完成界面設計, 所有開發中需要的組件 (可以相互調用的功能獨立的基本功能模塊), 如圖0-4所示, 都可以通過將①Palette中的組件拖入②Viewer中, 具有設置布局和③組件屬性的功能。

圖0-4 設計模式

2.AppInventor Blocks Editor(塊編輯器)

通過單擊按鈕進入, 主要功能是通過拼圖的方式定義程序的執行動作, 將程序的邏輯連接, 通過不同屬性方法定義組件與控制組件、邏輯組件等執行過程,進行邏輯設計。

如圖0-5所示, 其中①塊編輯欄中具有所有能控制組件的代碼塊拼圖, 可以將其中的圖塊拼圖拖到②之中, 如果不想要放在②中的圖塊, 可以拖入③回收站中刪除。

圖0-5 塊編輯區

塊編輯欄①中具有3 個標簽, 分別為 Built in, My Blocks 和 Advanced, 其屬性見表0-1。

表0-1 塊編輯欄屬性

3.Emulator Android Phone(模擬器)

在連接并將應用下載到Android設備前, 可先用模擬器 (見圖0-6) 來進行測試。可以在塊編輯器中單擊New emulator按鈕創建一個模擬器, 并通過單擊Connect to Device按鈕, 選擇emulator-5554選項打開的模擬器 (如打開多個模擬器則會有5554、5556等編號)測試你的程序, 但模擬器在部分功能 (如照相機、傳感器、USB 連接) 方面無法提供測試。

圖0-6 Android模擬器

AppInventor這三大組件——Designer, Block Editor 和Simulator 可以看作使用了MVC框架 (見圖0-7)。MVC全名是Model View Controller, 是模型 (model) —視圖 (view) —控制器 (controller) 的縮寫, 它很好地實現了數據與表示的分離。方法的優點是獨立的業務邏輯盡量被聚集到一個部件里面 (高內聚), 因此界面、用戶和數據的交互、新增改變和個性化定制都不需要重新編寫業務邏輯, 而傳統的輸入、處理和輸出功能與表示的功能呈現低耦合的特性。Designer 可以看作 Model 為多個視圖提供數據。Blocks Editor則是Controller接收用戶的輸入并調用模型和視圖去完成用戶的需求, 當用戶單擊屏幕時, 控制器本身不輸出任何東西和做任何處理, 它只是接收請求并決定調用哪個模型構件去處理請求, 然后再確定用哪個視圖來顯示返回的數據。Simulator作為用戶刷新并與之交互的界面是Viewer。

圖0-7 MVC視圖

MVC的出現也是信息技術發展中一直追求的復雜性分離的具體體現。最早期的計算機編程就是硬件的編程, 接著出現了軟件與硬件分離, 再后來實現了數據與控制邏輯的分離。而在當前智能手機平臺上, 是顯示與計算的分離, 由于很好地利用了云的特性, 而成為一種新的模式并被廣泛接受, 如蘋果公司的iCloud。

0.5 Applnventor環境搭建

AppInventor的開發環境搭建是一個較簡單的過程, 可以在 Windows XP 版本以上、Mac Os X 10.5 以上及 GU/Linux 等操作系統中搭建 AppInventor 開發環境, 本書以Windows 7 (X86) 系統為例對AppInventor的環境搭建步驟進行解釋。AppInventor 開發套件安裝的步驟如圖0-8所示。

圖0-8 AppInventor安裝步驟

1. 計算機和操作系統要求

● 蘋果操作系統 (英特爾處理器): Mac OS X 10.5或更高版本;

● Windows系統: Windows XP, Windows Vista, Windows 7, Windows 8;

● GNU / Linux操作系統: Ubuntu8或更高版本, Debian5或更高版本。

2. 瀏覽器要求

● Mozilla FireFox 3.6或更高版本;

● 蘋果Safari 5.0或更高版本;

● 谷歌Chrome 4.0或更高版本;

● 微軟Internet Explorer 7或更高版本。

3. 安裝Java套件(JDK)

首先, 確定操作系統之前是否已安裝JDK。AppInventor需要在Java 6以上的版本才能正常運行。單擊Windows 7的“開始”按鈕, 選擇“控制面板”, 然后在控制面板中單擊“程序”選項下的“卸載程序”按鈕, 步驟如圖0-9所示。

圖0-9 查看已安裝程序

在“卸載程序”的窗口中查看是否存在Java 6 以上的版本, 如圖0-10所示。假如如圖0-10所示已存在Java 6以上的版本, 則跳過本節內容; 如不存在, 則打開JDK的下載網址進行下載, 網址如下:

圖0-10 檢測是否存在JDK以及下載JDK

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

在JDK的下載頁面中, 選擇“Windows X86”的JDK進行下載。

當下載完成后, 運行并安裝JDK, 如圖0-11所示。

圖0-11 安裝JDK

4. 檢測Java環境

完成JDK的安裝后, 我們還不知道JDK是否正確安裝, AppInventor能否正常運行。AppInventor開發團隊為了讓初學者驗證電腦系統的環境是否可以執行AppInventor, 特別建立了一個專門驗證AppInventor Java環境的網頁。

在瀏覽器的地址欄上輸入以下地址:

http: //appinventor.mit.edu/explore/sites/all/files/JWSTest/notepad.jnlp

瀏覽器將彈出一個下載窗口, 單擊“打開”按鈕, 如圖0-12所示。

圖0-12 打開Javanotpad記事本

如果出現一個寫字板應用的窗口, 如圖0-13所示, 則說明JDK環境搭建成功。

圖0-13 打開notpad寫字板

假如沒有成功打開寫字板, 有以下幾個可能的原因導致這種情況發生:

● 被系統的防火墻攔截了, 請嘗試關閉防火墻及相關的殺毒軟件;

● 瀏覽器未配置使用Java Web Start打開jnlp文件, 為修復此項, 可能需要為.jnlp文件創建一個Java Web Start的關聯或重新安裝JDK;

● 電腦可能沒有足夠的內存來運行AppInventor, 因為至少要有1 GB的內存;

● 網絡設置可能出現了問題。

5. 安裝AppInventor

接下來, 我們還要安裝AppInventor的開發套件, 下載地址如下:

http://dl.google.com/dl/appinventor/installers/windows/appinventor setup installerv12.exe

運行安裝包進行安裝, 一直單擊Next按鈕即可, 如圖0-14所示。

圖0-14 安裝AppInventor開發套件

安裝完畢后, 接著就可以登錄AppInventor的開發網頁http://beta.appinventor.mit.edu,開發Android應用程序了。不過用戶需要有谷歌賬號才能登錄, 如圖0-15所示。

圖0-15 登錄AppInventor

6. 谷歌賬號申請流程

首先登錄谷歌搜索網站首頁Http: //www.google.com.hk, 單擊右上角的“登錄”按鈕, 如圖0-16所示。

圖0-16 谷歌首頁

再在打開的登錄界面, 單擊右上角的“注冊”按鈕, 如圖0-17所示。

圖0-17 登錄頁面

在注冊頁面依次輸入姓名、用戶名 (即要注冊谷歌賬號的郵箱地址)、密碼、生日、性別等內容, 同時可以設置手機賬號或者已經在使用的郵箱賬號, 最后輸入驗證碼即可,如圖0-18所示。

圖0-18 注冊頁面

隨后, 勾選“我同意接受Google服務條款和隱私政策”復選框, 單擊“下一步”按鈕, 如圖0-19所示, 就完成注冊了。

圖0-19 同意協議

成功完成注冊時, 將顯示一個歡迎您的提示, 如圖0-20所示。

圖0-20 注冊成功

至此, 我們就可以使用這個谷歌賬號登錄進行AppInventor的開發工作了。

主站蜘蛛池模板: 凤凰县| 江川县| 翁源县| 平武县| 葵青区| 巴林右旗| 抚松县| 湘潭市| 浏阳市| 水城县| 泾阳县| 宝鸡市| 新源县| 米泉市| 北流市| 潜江市| 绥滨县| 乌鲁木齐县| 于田县| 黔江区| 宁津县| 出国| 宁阳县| 公主岭市| 宁强县| 凤台县| 大宁县| 民勤县| 济源市| 宁陕县| 岱山县| 色达县| 武乡县| 吉安市| 丹凤县| 青河县| 武乡县| 宁化县| 富宁县| 平遥县| 新化县|