1
本文作者: Ticwear | 2015-04-29 11:41 |
文/ticwear團隊
Android Wear連接 iPhone?這聽起來有點遙不可及,但是目前有外媒稱谷歌正致力于讓基于Android Wear平臺的智能手表與iPhone兼容。根據(jù)目前獲取的信息,Android Wear智能手表將通過iPhone上的配套應用程序完成互動。不過只會擁有一些基本功能,比如通知、來電提醒、谷歌Now的環(huán)境信息卡等功能。
雖然蘋果發(fā)布了Apple Watch,但是Android Wear眾多的款式和低廉的價格依然讓很多智能手表用戶心動,在安卓手表和蘋果手表兩大陣營之間,Google與 Apple Watch 競爭最簡單的致勝法寶也許便是讓 Android Wear 設備兼容 iOS。雖然聽起來很誘人,但是也有人說,這幾乎不可能,那么蘋果有可能完全開放,讓Android Wear 連接iPhone嗎?也許,這要從他們的前世今生說起。
兩大系統(tǒng)之間的交鋒
自從iOS 07年出世,Android第二年緊隨其后產(chǎn)生,Android與iOS作為兩大系統(tǒng),多年來交鋒不斷,也各自產(chǎn)生了一大票粉絲,孰贏孰輸,尚未有定論。
iOS來源于Apple的OSX,是UNIX系統(tǒng),OSX已經(jīng)有差不多10年的歷史,從內(nèi)核底層到軟件架構都是逐步發(fā)展過來的。iOS使用ObjectivC這個古老的語言來做開發(fā)。
而Android是Google基于Linux搞來的,嚴格意義上講Android并不是一個Linux系統(tǒng),它沒有Linux的xwin,沒有glibc,缺乏一整套標準的Linux程序。Android應用絕大部分都是使用JAVA開發(fā),跑在Dalvik虛擬機上(5.0之后切換為Art)。 Google在底層也修改了很多東西。Android算是一個全新的操作系統(tǒng)。
iOS一開始預裝了很多谷歌的服務,如搜索、地圖、Youtube, iOS 6 Beta版中移除了YouTube,Google 地圖等服務,換成自己的服務,雖然在發(fā)布后,蘋果地圖便受到了很多批評和質(zhì)疑,不過2012年以來,蘋果地圖有了很多改進,其準確度也在不斷完善中。
安卓系統(tǒng)在部分體驗上不如iOS, 如用戶常常抱怨的耗電, 不穩(wěn)定, 不安全等問題,作為一個開放的系統(tǒng),Android系統(tǒng)開發(fā)者的發(fā)揮空間更大,有更多的自由度,做到一些iOS系統(tǒng)在應用級難以實現(xiàn)的功能,而且消費者也有更多的機型可以選擇。
但開放的代價是生態(tài)環(huán)境不能很好的控制,導致很多惡意的,不夠精良的應用出現(xiàn),影響Android系統(tǒng)的用戶體驗。安卓在用戶界面, 體驗上一直在向iOS看齊,且也有自己出彩的地方, 比如手機端的下拉通知中心, led通知燈, 無物理按鍵等。
iOS則是有相對更加優(yōu)秀的用戶體驗。優(yōu)點包括:統(tǒng)一流暢的用戶體驗,豐富優(yōu)質(zhì)的App,良好的生態(tài)系統(tǒng),相對安全的系統(tǒng)。但是封閉的系統(tǒng)隨之帶來的問題是開發(fā)者在iOS設備上可以做的事情相對較少, 比如到目前為止都不能和安卓設備通過藍牙連接。
多點觸控(Multi-touch)一開始是iOS的專利, 安卓緊隨其實也有了觸屏(Multi-touch)的功能,追隨的局面直到最近安卓率先扁平化, 變成了蘋果緊隨其后,在iOS7推出的系統(tǒng)扁平化UI, 安卓在扳回一城之后,又推出了全新的設計和交互的風格(material design)。
Android設備和iOS融合的技術問題
從技術方面講,Android Wear手表連接iPhone有兩種方式:
低功耗藍牙(BLE)方式,這種方式連接不需要通過蘋果認證,只需要手表端安裝一個接收藍牙通知的應用。 但安卓支持BLE的時間比較晚(在2013年才推出支持藍牙4.0 BLE特性的Android 4.3), 并且由于各個廠商的藍牙驅動質(zhì)量參差不齊以及安卓本身藍牙棧的不穩(wěn)定, 使得在安卓上進行BLE開發(fā)困難重重. 安卓正式支持藍牙是在4.3這個版本. 4.3和之后的4.4只開放了BLE最為中心設備(central)這個接口. 從5.0開始, 雖然安卓可以作為周邊設備(peripheral), 但支持這個功能的只有谷歌自己的親兒子Nexus 6和Nexus 9。
對于其他安卓開發(fā)者來說,不能作為周邊設備會給開發(fā)帶來很多困難, 比如手表和手機配對連接和重新連接的流程就會比較復雜. 藍牙驅動質(zhì)量的問題是開發(fā)中最大的難點, 比如奇怪的錯誤代碼, 莫名其妙的連接斷開等等. 安卓本身的藍牙棧的bug也是層出不窮, 去AOSP Issue Tracker中搜索Bluetooth會有四百多個還沒有解決的bug。
經(jīng)典藍牙方式,這種方式可以支持較快速的大數(shù)據(jù)量傳輸,然而這種方式的連接要求設備必須通過蘋果的MFi (Made for iOS)認證。要通過此認證,必須讓蘋果認為此設備達到了蘋果要求的性能標準。整個認證流程比較麻煩,包括開發(fā)認證和制造認證兩個部分,需要向蘋果提交產(chǎn)品的技術細節(jié)以及制造工藝,甚至包括產(chǎn)品的包裝設計。據(jù)稱,MFi 認證的通過率很低。迄今為止,還沒有任何一款Android Wear設備通過MFi 認證,不知道是否設備廠商沒有申請認證,或者是蘋果否決了所有申請。
Android wear 與ios連接
iOS與Android系統(tǒng)連接難在哪?
1)iOS平臺
iOS的不開放性以及對后臺應用的限制讓安卓和iOS相連更加難. 安卓核心源碼是全開放的, 有了問題開發(fā)者可以自己去看源碼解決問題. iOS沒有開放的源碼, 出了一些少見的問題就很難定位問題到底出在哪里, 是安卓那邊還是蘋果這邊, 如果是蘋果的問題就基本沒有解決方案只能等蘋果發(fā)布更新. 另外iOS對后臺應用的限制是另一個難點.
2)低功耗藍牙(BLE)本身
BLE全新的編程方式以及低功耗的特性讓開發(fā)更難. 在傳統(tǒng)藍牙上開發(fā)和TCP網(wǎng)絡編程比較類似, 開發(fā)者只需要操作socket發(fā)送和接受數(shù)據(jù)即可. BLE沒有socket的概念, 取而代之的是service, characteristic, 和descriptor: service就是一個服務, 一個BLE周邊設備可以廣播多個服務, 每個service又有多個characteristic, 作為傳送數(shù)據(jù)的通道. 每個characteristic一次最多可以傳送20個字節(jié), 可以同過descriptor配置成是讀或寫. BLE的接口非常原始,開發(fā)者需要基于這些再做一次封裝后才能比較高效的傳輸數(shù)據(jù). 另一個BLE的限制就是低功耗. 根據(jù)維基百科,低功耗藍牙的數(shù)據(jù)傳輸率是經(jīng)典藍牙的三分之一。而實際應用中,出門問問發(fā)現(xiàn)BLE的數(shù)據(jù)傳輸率還要更低,大約只有經(jīng)典藍牙的百分之一。在出門問問Ticwear測試的設備上, BLE的傳輸速度在0.5KB ~ 2KB左右每秒, 也就是說如果用BLE來傳輸一首4MB左右的MP3需要至少半個小時.
目前已經(jīng)實現(xiàn)iOS與Android手表系統(tǒng)連接的途徑
今年1月份,出門問問團隊就已經(jīng)在中文智能手表操作系統(tǒng)Ticwear中發(fā)布了連接iOS的功能。二月份,國外開發(fā)者Mohammad也宣布實現(xiàn)了這個功能。最近,谷歌Android Wear團隊也透露將支持iOS,估計也是通過BLE的方式。
由于BLE的連接方式有比較大的限制,實際數(shù)據(jù)傳輸速率只有大約1KB每秒,如此低的數(shù)據(jù)傳輸率決定了BLE只能支持小數(shù)據(jù)量的通訊,譬如來電提醒、通知等等。數(shù)據(jù)傳輸量較大的任務,如語音搜索,應用下載和OTA升級則很難實現(xiàn)。
Ticwear連接iOS和市場上其他的同類應用不同, 除了支持消息推送外, Ticwear iOS助手支持更換表盤, 時間同步, 接打電話等只有AndroidWear和安卓手機相連是才有的功能. 為了實現(xiàn)這些功能, 出門問問對BLE進行了重新封裝, 使得上層應用可以無縫的連接iOS安卓設備. 對這些功能的支持就要求Ticwear iOS助手在用戶的iOS設備上即使被切換到了后臺也能使用藍牙(因為用的是低功耗藍牙, 用戶完全不用擔心耗電的問題). 但是iOS在不同的版本對藍牙應用在后臺停留的時間定義也不同, 使得用戶不定期會出現(xiàn)藍牙連接斷開的情況從而影響用戶體驗。
安卓和iOS連接目前主要是依賴于wifi, 藍牙的話需要通過蘋果的MFi 認證, 很少有安卓設備通過這個認證. 目前安卓手表連接iOS設備可以通過Ticwear或者其他的一些解決方案. Apple watch連接Android手機的方案目前還沒有.
出門問問團隊認為,蘋果賣手表的一大目的就是促進iOS手機的銷售, 所以短期能蘋果應該是沒有動力去支持Apple Watch連接安卓手機或者讓Android Wear連接iOS設備。迫于各方壓力,蘋果最終應該會讓一部分優(yōu)質(zhì)的Android Wear設備通過MFi 認證,從而讓這些設備實現(xiàn)和iOS的完美適配。但是,由于蘋果剛發(fā)布Apple Watch產(chǎn)品,出于競爭的考慮,短期內(nèi)應該不會讓Android Wear設備通過認證。但是開發(fā)者會想盡方法讓著兩大陣營的設備能互聯(lián). 因為接下來無論是Android Wear還是Apple Watch都支持wifi, 不存在藍牙的限制, 他們互聯(lián)的可能性充滿了想象空間.
雷峰網(wǎng)特約稿件,未經(jīng)授權禁止轉載。詳情見轉載須知。