<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機與無線通信 > CTIMES/產(chǎn)業(yè)評析 > 看懂阿里云事件 從CTS兼容性談起

          看懂阿里云事件 從CTS兼容性談起

          作者:陳俊宏 時間:2012-10-08 來源:CTIMES 收藏

          事件的核心是 要求 的硬件裝置都要通過 測試要求。 (Compatibility Test Suite) 的目的是維護建全的 生態(tài)系統(tǒng)。簡單來說, 兼容的硬件,理論上能運行所有 Play 商店上的軟件;Play 商店上的應用軟件,當然是由遍布全球的開發(fā)者或開發(fā)商所制作。 的理念是希望讓所有開發(fā)者的軟件,都能在所有 的裝置上運行無礙。

          本文引用地址:http://www.ex-cimer.com/article/184484.htm

           

          CTS 兼容性測試

          因此, 會對 Android 生態(tài)系統(tǒng)里的制造商做出一些要求。最基本的要求就是上述的 CTS。所有裝載 Android 操作系統(tǒng)的裝置,都必須通過 CTS 測試。CTS 完全是技術(shù)問題,這里面包含了近 17,000 條測試案例 (Test case)。這些案例的目的,是為了確保手機的實作質(zhì)量、實作完成度、用戶體驗的一致性等等。

          通過 CTS 測試后,Google 就會把你的硬件加入到「CTS 兼容硬件列表」。理論上,必須成為 CTS 兼容硬件,才能讓產(chǎn)品上市銷售。問題是,Android 不是一個號稱人人皆可自由使用的開放系統(tǒng)嗎?市面上不是也銷售許多沒有通過 CTS 測試的 Android 裝置嗎?

          這個問題又是另一個層次了 (商標授權(quán)),目前先暫不做討論。CTS 是單純的技術(shù)問題,我認為一些媒體報導把 CTS 兼容性與 Google 的商業(yè)戰(zhàn)略牽扯在一起,略有不妥。CTS 是為了幫助硬件廠,它是對大家都有益的必要過程。

          Play 商店眾多軟件,你不知道用戶今天會下載哪個應用軟件,如果 Android 裝置在研發(fā)時,出了一丁點差錯,可能有些軟件在這個硬件上,會發(fā)生運行失敗的問題。CTS 是為了幫助硬件廠,提升產(chǎn)質(zhì)量量,避開這些技術(shù)問題。

          我們必須把 CTS 做到 100% Pass,也就是上述 17,000 個測試案例都能通過,再將報告提交給 cts@android.com。然后,你的硬件就成為 CTS 兼容設(shè)備了。這是 Google 對 Android 裝置做授權(quán)的第一個等級。

           

          GMS 套件與授權(quán)

          成為 CTS 兼容設(shè)備后,上面是沒有 GMS 套件的。GMS 套件包含許多 Google 官方的應用軟件,例如:Play 商店、Gmail、Google Map、Youtube、Google Calendar、Google Talk 等等。要取得 GMS,我們就要向 Google 申請授權(quán);有難度的地方就是在這里。

          因為一些考慮,Google 的許可協(xié)議里,不一定會授權(quán) GMS 里的所有軟件。Google 會針對申請者的「基本條件」來客制化許可協(xié)議。這些條件并沒有很特定的項目,像是品牌知名度、工業(yè)設(shè)計、產(chǎn)品相互競爭關(guān)系、銷售地區(qū)等等,都會被列入考慮。但不管如何,GMS 里一個天字第一號的軟件「Play 商店」通常都會授權(quán)給申請者。所以,申請者可能只能拿到 GMS 的部份授權(quán),而且也不能使用 Google 商標;這是 Google 對 Android 裝置做授權(quán)的第二個等級。

          第三個等級就是取得全套的 GMS 授權(quán)。根據(jù)我過去所參與過的項目來看,這個等級的難度比想象中更高,目前能取得全套授權(quán)的廠商并不多。這個等級的授權(quán),能使用 Google 商標,簡單說,就是手機上能打上 Google 的字樣。所以,要知道有哪些廠商取得這個等級的授權(quán),是很容易的。

           

          授權(quán)等級

          Google 針對 Android 裝置的授權(quán):

          1. 通過 CTS,授與 Android 商標使用權(quán),但沒有 GMS 授權(quán)。

          2. 通過 CTS,授與 Android 商標使用權(quán),取得部份的 GMS 授權(quán),但沒有 Google 商標使用權(quán)。

          3. 通過 CTS,授與 Android 商標使用權(quán),取得完整的 GMS 授權(quán),有 Google 商標使用權(quán)。

           

          結(jié)論

          另外,還有幾點要注意的是:

          1. Android 確實是開放平臺,這和上述的說明沒有沖突。將事件與「Android 邁向封閉」做關(guān)聯(lián),是有失專業(yè)的報導。

          2. Android 的開放有二個層面。第一、開放框架與虛擬機的原始碼,稱為 Android Open Source Project (AOSP)。第二、開放 API,即 Android SDK,人人都可以為 Android 開發(fā)應用軟件。

          3. Android 的開放性是一個層面,Android 的 Ecosystem 又是另一個層面。Google 以最基本的 CTS 來維持 Android 生態(tài)系統(tǒng)的健全。

          最后,事件來說,不是上述的 (1),也不是 (2) 或 (3),這又是另外一個層次的問題。阿里云,或是其它客制化的 Android ROM,可能都不考慮 CTS,也沒有通過 CTS 測試。如果把這些 ROM 放到的硬件上,可能真的不行,原因是宏碁或許和 Google 簽訂了 GMS 方面的合約,當中可能包含業(yè)界所稱的「反 Android 分裂條款」;不過詳情我們當然無從得知。

          不過,會有這種失誤,除了可能這個合作關(guān)系太高調(diào)外,硬件廠的專業(yè)經(jīng)理人專業(yè)度可能也要受到挑戰(zhàn);當初在規(guī)劃時,就應該要做考慮與溝通?;ㄞI都到門口了,結(jié)果新娘還娶不回家,不免讓人把芧頭指向當初介紹雙方認識的媒婆 (經(jīng)理人) 身上。

          至于,如果把阿里云放到白牌硬件上,是否就可行?理論上,是。但沒有通過 CTS 測試的話,因為沒有 Android 商標使用權(quán),所以使用上要注意 trademark 的法律問題。此外,也不會有 GMS 授權(quán),如果手機上內(nèi)置了 GMS 套件的軟件,例如:「Play 商店」,那就可能會被視為盜版。此外,這個情況,也要注意 Apache License 條款里的 Copyright 與 Patent 等法律問題。

          (作者為CTIMES專欄作者;本文由

          仕橙部落同意轉(zhuǎn)載)

          本文由 CTIMES 同意轉(zhuǎn)載,原文鏈接: http://www.ctimes.com.tw/DispCols/cn/%E9%98%BF%E9%87%8C%E4%BA%91OS/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4/Google/%E5%AE%8F%E7%A2%81/1210082324FD.shtml



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();