0755-26913476
您的當前位置:主頁 > 經驗交流 > 視覺設計 >

APP設計工作中,Android 和 iOS 不可不知的幾點差異

時間:2017-11-10

移動互聯網時代,移動端產品的規劃設計是大多數產品經理的必修課。廣義來說,移動端產品主要包含iOS端App、Android端App、微信端H5、小程序、WAP版H5以及平板端App(HD版),本文主要就前兩種——Android和iOS手機端App 在產品工作中應該注意的一些差異來進行闡述。

差異的背景原因

1、所屬公司不同

Android系統和iOS系統分別屬于谷歌和蘋果公司,不同的公司對應著不同的文化、風格以及所擁有資源。

2、開發語言不同

Android的底層是Linux系統,Linux是用C語言開發的,所以安卓底層開發用的 C,而應用層開發使用的是Java;iOS是蘋果特有的封閉系統,它的開發語言主要是Object-C。

3、生態體系不同

一個開源一個封閉,Android生態里系統、硬件、應用、分發四大環節幾乎全部開放,群雄爭霸野蠻生長;而iOS生態里,除了應用開發,其他三大環節全部牢牢掌握在蘋果公司手中,特別是分發環節,決定著一個應用的生死(這也是很多時候蘋果“耍流氓”的物質基礎)。當然,兩家生態體系各有利弊。

客觀條件決定了Android和iOS注定充滿差異,但他們都同為智能機操作系統,也有許多共性,特別是在用戶層面,比如屏幕觸摸、點擊、滑動等操作,這看似不起眼,但這是手機行業進入智能時代的重要基礎和特征,也決定著應用的UI、交互規則。問題來了,既然決定應用的UI和交互規則的基礎是一樣的,那么在產品規劃設計時——

同一個App的安卓和iOS版本,應不應該一致?

1、理想狀態——遵循各自平臺的風格和規范

安卓Material Design和iOS Flat Design的設計風格都是非常優秀的,畢竟是藍星兩家宇宙級大廠搞出來的東西。遵從各自設計規范,使用各自平臺默認的交互模式和元素樣式,研發不用「重新發明輪子」,對系統友好,代碼性能、質量、開發效率都高,而且用戶在同一平臺不同應用之間的體驗較一致(切換應用比切換平臺的頻率大多了)。但這意味著更多的人力、時間、資金投入,所以一般都是有一定實力和條件的公司才采用這種方案,代表應用有微信、知乎、網易云音樂等。

微信Android端和iOS端的搜索和item操作遵循各自平臺的交互規范(左側Android右側iOS)

2、現實情況——人少活多時間緊,能一致盡量一致

「跨平臺一致性」的論斷其實說服力并不十分充分,因為用戶在兩平臺間頻繁切換的情況一定是少數,反而更應該考慮的是同一平臺不同應用間的一致性。

所以,人力、資金、時間的制約才是主要因素。一個公司通常都會有Android工程師和iOS工程師,但很難出現Android交互設計師和iOS交互設計師,加人(新增UI及交互設計師)可比加班(讓Android工程師「重新發明輪子」)成本高多了。

那么到底是采用Android的還是iOS的規范呢?

這個有一定歷史原因,iOS的規范形成的比Android的早,而且在之前的很長一段時間,產品和設計人員大多數使用的是蘋果設備,對iOS風格的熟悉和認可程度更高,所以就基本形成了按照iOS風格設計一套UI和交互,然后Android開發人員酌情變通,能一致都盡量一致的這樣一種現狀,除了節省成本(前面所述加人比加班成本高)還可以更快的迭代。

3、趨勢——Android和iOS越來越趨同

扁平化、通知中心、分屏多任務、系統權限、指紋識別……Android和iOS互相借鑒已是不爭的事實(雖然他們都不承認),而且開發者們的現實掣肘所帶來的一致性需求,也催生了許多自定義控件、樣式的分享,應用在兩平臺間實現一致性的開發成本在降低,一致性的觀念也正在被越來越多的人接納和采用。更讓人欣喜的是像QQ這樣不缺錢不缺人的應用,在兩平臺的UI和交互采用了相同的方案,這樣做的目的也許是在引領趨勢以及追求更高層次的一致性——整個智能機世界的和諧大統一。

QQAndroid端和iOS端的搜索和item操作都統一為iOS交互規范(左側Android右側iOS)

————————-分割線————————

不管我們是屈于現實還是引領趨勢,即使我們決定了Android和iOS采用一致性的方案,但兩平臺間依然有一些點和規則是沒法相同的,這些東西在目前乃至未來很長的一段時間都需要我們在產品工作中特殊去對待和處理。

產品工作中無法避免的幾點Android和iOS差異

1、狀態欄控制

(1) 沉浸式狀態欄

網上關于沉浸式狀態欄的解釋說法不少,我簡單化的理解就是狀態欄的背景可以跟隨導航欄變化(透明或者某個顏色),同時狀態欄文字及圖標會根據不同的背景而變為白色或黑色。如圖所示:

截圖來源:拉勾App

這個功能iOS很早就有,但Android在4.4版本之后才開始使用,而為了兼顧4.4之前的用戶,又不能都用沉浸式,所以處理方案有三種:

① 狀態欄背景統一用黑色,狀態欄文字統一用白色;

② 狀態欄背景統一加一條黑色半透明層,狀態欄文字統一用白色;

③ 根據系統不同版本進行適配,系統版本高于Android 4.4的用沉浸式,低于4.4的用方案①或②。

截圖來源:拉勾、種子習慣、QQ

(2)iOS雙層狀態欄

非音樂類音頻類App當頁面有音頻播放時,產品設計將會面臨以下這個問題:

  • 滑動頁面繼續瀏覽內容以及離開頁面時,音頻是否繼續播放?
  • 如果不繼續播放,那用戶想邊看內容邊聽音頻的需求怎么處理?
  • 如果繼續播放,當用戶已經滑動很久或處于其他頁面時想關閉音頻時從哪關閉?

這時的處理方式一般有兩種:

①在導航欄上增加一個全局的播放指示按鈕

②在頂部或底部懸浮一條全局的播放操作區

截圖來源:網易云音樂、得到

  • 方式①的問題主要是非主打音頻的產品不適合將音頻置于這樣重要的地位,會嚴重影響其他頁面導航欄上操作按鈕的布局;
  • 方式②的主要問題與方法一類似,且技術處理麻煩、影響其他頁面美觀性;

所以,這時iOS的雙層狀態欄便可發揮作用,直接將控制區放到狀態欄上,不會顯得過重,也不影響其他頁面的布局和美觀性。

截圖來源:網易lofter

2、返回機制

Android有“實體”返回鍵,iOS沒有

iOS一直都是通過導航欄左上角“返回按鈕”來完成返回操作,但Android從當初的四個實體鍵到三個虛擬鍵再到現在“一個鍵”(三鍵的功能集成到指紋識別一個鍵上),其一直未改變通過“按鍵”方式來實現返回,所以在產品設計中,iOS版本的非一級頁面上都需要帶有返回按鈕或圖標,而安卓如果帶上此元素反而顯得多余。

可但是——在Android4.0之后,返回鍵和返回按鈕具有不同的功能定義了,返回按鈕表示「up 向上」,返回的是上一級頁面,返回鍵表示「back 返回」,返回的是上一步。所以,Android版App的頁面上帶有返回按鈕也就變得有必要了。

簡單說一個場景:①文章列表頁→②文章詳情頁→③相關推薦文章的詳情頁→④再相關推薦文章的詳情頁……此時,如果想回到“①文章列表頁”,假如點擊「back 返回」,需要逐次返回④③②①,而點擊「up 向上」,一次點擊就可以。

另外,在微信端H5網站場景下,這個差別也會很突出,分享出去的頁面,如果沒有「up 向上」,是無法回到網站上一級的,所以很多微信站都帶有頂部返回欄,與微信導航欄有重復之感,雖然丑,但得有,不過形式可以優化(關于優化以后再聊)。

交通銀行信用卡微信端商城

3、適配要求

Android機型繁多,iOS基本只需考慮5678四代不超10款型號[“齊劉海”暫不在討論范圍]

使用Android系統的各家廠商所生產出來的手機型號五花八門,系統也經過深度定制,測試時也不可能買那么多測試機,所以一般是根據數據統計,看用戶的手機型號分布情況,選出代表機型然后采購測試機。

數據來源:友盟+

4、文件讀取權限

Android類似于Windows,App幾乎可讀取本地所有文件;iOS端App無法讀取本地除圖片和視頻外的其他文件

如果產品功能里有需要用戶上傳手機里的文件(例如歌曲、錄音、TXT、Word/PPT/Excel等)時,要特別注意,iOS版本是辦不到的,蘋果手機只能通過PC上的iTunes來處理文件,很麻煩。這時有幾個選擇可以供考慮:

① 在iOS版本上的相關頁面指引用戶iTunes操作方法;

② 此功能Android上iOS不上;

③ 增加步驟,讓用戶先使用PC將文件傳到系統里,然后通過手機進行選擇

5、應用市場規則

Android應用市場多,無需付費,審核寬松且時間短;iOS應用市場只有App Store,每年99或299美元,審核嚴格且時間長

所有應用市場上架前都得注冊申請賬號,應用提交和更新都得審核。Android應用市場太多,可根據情況選擇相應的平臺,下圖是2016年中國應用市場排名情況。

圖片來源:mUserTracker

Android應用市場申請簡單,均免費,應用提交后審核也很快,基本都在幾小時內。

不過iOS就沒那么輕松了,簡單總結一下:

在申請時

① 申請流程和時間長,少則半個月,多則半年;

② 申請頁面及郵件回復全英文;

③ 個人開發者賬號每年99美元,企業開發者賬號每年299美元,支付只能用具備visa標識的卡。

應用提交時

① 初次提交審核一般在一周左右通過,應用升級提交審核3天左右,遇到圣誕等節日會延后;

② 生殺大權掌握在蘋果手中,讓你下架你還一點脾氣都不能有,搞不好進黑名單,重新再走一遍注冊申請提交流程。

所以當Android和iOS需同時上線時,iOS版本得提前做準備,提前提交審核,在提交時可以設定審核通過后的上線時間。

如果iOS應用被下架,用戶是沒有其他渠道能方便、正常地下載安裝該應用的,那這個應用基本上就等于廢掉了。不得不說這一點是蘋果非常狠的地方,也是他商業模式上非常關鍵的一環(“耍流氓”的物質基礎),下面就開始說他最大的“耍流氓”行為。

6、虛擬商品購買和提成規則

Android無限制,不抽成;iOS限制較多且抽成30%

簡單總結一下幾個關鍵知識點:

① iOS應用里購買虛擬商品,必須使用蘋果內購方式,蘋果抽成30%;

② 虛擬物品包含且不僅限于:游戲類的道具皮膚(先充值)、直播類的禮物(先充值)、會員、打賞、付費問答及各種形式的充值等;

③ 用戶購買的虛擬商品不能流通,不能再變成實物。

只要是充值,不管充值后的單位是什么(XX幣、XX點、XX豆等),都算虛擬商品;

直播類應用看似虛擬商品流通了,但實質是用充值的幣買的禮物,幣只能消耗,不能流通。

在購買虛擬商品時,是不能調取支付寶或微信支付的,否則不讓應用上架。有人甚至嘗試過將調取支付寶和微信的功能做成后臺可控制的開關,在蘋果審核通過后再把開關打開,但最后也未能得逞,而且進黑名單的風險極高。

對虛擬物品抽成30%這一點,在設計產品時一定要考慮,因為這甚至會關乎商業模式的選擇。曾經遇到過一個真實案例:花一百多萬開發出一個商城,結果不能上架,因為其商城的核心模式是先充值(充值時帶返點),然后用充值的“幣”再購買商品。而且即使能上架,平臺的利潤也無法支撐蘋果抽掉的30%。

蘋果這一霸王條款其實挺不合理,但是人家牛啊,現階段大家都得接受。而針對蘋果對虛擬商品的限制和抽成規則,產品設計時的規則有兩方面選擇:

① 扣除的30%由用戶承擔。比如Android或PC上充值10元得100個幣,iOS充值10元得70個幣;

② 扣除的30%由平臺承擔。比如用戶通過iOS充值10元,平臺實收7元,但給該用戶和Android充值同等的100個幣;

①號選擇對于平臺來說最省事,但是受傷害的是用戶,而且如果充值后的單位用的是“元”的話,用戶第一反應是怎么剛充的錢還沒用就不見了一大塊?

②號選擇的用戶體驗好,但是平臺白白損失了30%的收入,而且如果涉及到給第三方分成提現,會特別麻煩。

例如:以得到App舉例,用戶在得到上購買199元的專欄,得到要給專欄作者提成,此時的提成比例怎么定呢?

假若統一定的是80%,平臺需給專欄作者159.2元,如果用戶全用Android充值那皆大歡喜??墒?,如果購買用戶是通過iOS充值的,其每個人充值199元,得到平臺實收只有139.3元(用戶余額顯示199元,平臺承擔被蘋果扣去的30%),139.3元進來轉了一圈,變成159.2元給了作者,平臺白辛苦,還反而虧了19.9元。如果十萬一百萬用戶都這么干,平臺就掛了。

所以,30%由平臺承擔的方式一旦涉及第三方提現,只有兩個選擇:

A. 提現比例低于70%,平臺保證不虧,Android充值的部分多賺,iOS充值部分少賺;

B.  Android和iOS充值的按不同比例給第三方提現;

B選擇最合理,但又會出現個問題:用戶消費的199元里有一部分是通過Android充值的,一部分是通過iOS充值的,這記錄和區別起來會比較麻煩。那怎么辦呢?

Android和iOS各自充值的余額不能跨系統使用

無疑這樣的方式體驗不好,但似乎沒有更好的辦法,目前得到就是這么處理的。

總結

本文所列舉的6點Android和iOS差異,在很長一段時間內會一直存在,特別是后三點,因為它們關乎蘋果的商業盈利模式,蘋果是不會輕易妥協的。而這些點又影響著產品設計時的商業模式考量、產品規則制定、功能樣式取舍以及上線時間安排等方面,所以在產品工作中有必要清楚地了解它們。

以上,僅個人想法記錄和分享?;虿蛔慊蛴懈?,敬請指正和交流。