響應式布局技術:App如何適配不同尺寸的設備

2020-12-15 騰訊網

作者 | 阿里巴巴文娛技術 叮東

頭圖 | CSDN 下載自東方IC

背景

近年來,大屏手機、安卓Pad、iPad、摺疊屏手機、車機大屏等大尺寸設備發展迅猛。尤其是2020年二季度中國平板市場出貨量達到661萬臺,同比增長17.7%,其中蘋果 iPad市場份額佔比41.8%,華為平板市場份額佔比37.1%。

安卓系統運行在越來越多尺寸的設備上,開發的手機App如何適配到不同尺寸上,是安卓開發者遇到的痛點。同時蘋果也推薦開發適配手機和iPad的Universal版本,支持iPad的諸多新特性,例如側拉、分屏使用等。基於以上背景,我們啟動了優酷APP響應式,適配不同屏幕尺寸下的顯示效果。

安卓Pad

摺疊屏

iPad

什麼是響應式

描述響應式最著名的一句話就是「Content is like water」,翻譯成中文便是「如果將屏幕看作容器,那麼內容就像水一樣流淌」。

響應式就是基於同一套代碼,開發一個APP能夠兼容多尺寸、多終端設備的顯示,能夠動態調整頁面的布局以及容器的布局,充分利用當前屏幕的尺寸,為用戶顯示更多的內容,提供更好的瀏覽體驗,同時提升APP的開發效率,迭代速度更快,保障多終端業務同步發展。

響應式的優勢

1、開發成本更低 —— 一套代碼

想要在不同尺寸屏幕的終端上獲取良好的顯示效果,傳統的應用適配方案是針對不同尺寸的終端設備開發多個APP,例如很多廠商都會針對Pad推出HD版本。而響應式的APP可以根據屏幕具體的物理尺寸自適應的顯示,只需要開發一套代碼,就可以兼容多種尺寸的終端,不需要開發單獨的HD版本。

不同的終端的App,由不同的垂直團隊開發,會帶來不同的後臺系統和客戶端技術方案,前後端技術能力會走向分化。響應式是同一個APP運行在不同尺寸的設備上,使用統一的後臺系統,一次開發,多端生效。

2、設計成本更低 —— 一套設計規則

響應式使用了一套界面自適應的布局方案,橫向拉通頁面以及容器布局的適配規則,提高了屏幕的顯示效率,面對不同解析度的設備適應性更強,最大化提升用戶的操作體驗。一套設計規則,適配不同的尺寸,做到以不變應萬變,大大節約了設計的成本。

3、業務迭代更快 —— 多端業務同步發展,一次運營多端生效

響應式APP多端保持一致的版本發布節奏,業務方在迭代過程中,會考慮多端的不同使用場景,業務特性能快速在多端同步推進。

往往不同終端有不同的運營系統,可能存在多個垂直運營團隊,一次運營動作需要操作多次。響應式基於同一個客戶端、後臺和運營系統,運營收斂到一個團隊,一次運營多端同步生效。

響應式的設計思路

如何在不同尺寸不同解析度的屏幕下,有效的利用屏幕的尺寸?最簡單的理解就是在大屏幕上顯示更多的內容。這就需要在設計側通盤考慮所有尺寸的屏幕,拉通不同寬高比例的設計規則,動態調整可見元素的布局(元素的列數以及尺寸等),在不同尺寸的設備上都能達到最佳的顯示效果。

1、基本原則

1) 內容自動伸縮,保證適配內容填滿當前屏幕;

2) 坑位列數可靈活按照屏幕的寬高比例進行適當增加或減少進行排版布局;

3) 組件內的內容可根據頁面的寬度自動隱藏或顯示部分內容,進行整個屏幕的適配,減少留白;

4) 頁面邊距間距用物理尺寸dp表示。在不同的設備上保證左右邊距、間距的物理尺寸不變,內容做自適應;

5) 在不同機型適配上,交互方式符合大部分用戶的使用習慣,體驗是連貫統一的;

6) 同一頁面在不同大小和比例及解析度下看起來都是舒適的、合理的;

7) 內容在多尺寸響應適配下如遇適配成本過高或適配不了的情況,設計&產品&開發需要基於體驗、業務、實現成本考慮達成一致,以低成本無損體驗方式來完成適配

2、適配規則

1) 拉伸布局,內容元素在相對寬度內通過結合內容的展示隱藏來進行進行相應的拉伸適配,比如頂導航底導航;

2) 等比縮放,界面中元素在相對位置內按照一定比例進行縮放;

3) 擴展布局,通過內容元素的增加或減少,擴展為多行或者多列重複排列;

4) 組合布局,模塊與模塊進行組合,去適配寬度;

5) 內容固定居左,橫屏&豎屏下固定布局,大小尺寸不變居左展示;

6) 內容固定居中,在橫屏豎屏下比例不變 保證內容居中展示;

7) 分欄布局,頁面的結構發生變化,按照屏幕寬度左60%,右40%佔比進行分兩欄展示。在優酷視頻中,分欄布局主要用於播放頁的展示,左60%寬度提供良好的播放體驗,右40%寬度方便用戶操作,推薦相關視頻內容和評論;

響應式的架構設計

響應式的核心是拉通多終端的適配規則,開發一套界面,一個APP兼容多尺寸終端設備的顯示,能夠根據用戶的行為以及設備的環境(屏幕尺寸、屏幕方向、是否分屏等)進行相應的頁面布局以及容器尺寸的調整。為此響應式SDK提供了響應式狀態管理、橫豎屏切換、容器列數換算規則、容器尺寸適配規則、頁面寬高獲取方法、響應式基礎控制項等基礎能力。業務方只需要接入響應式SDK,就能夠方便快捷的解決在不同尺寸下的適配問題。

從結構上看,響應式由響應式SDK、響應式頁面布局、響應式容器布局三部分相互配合完成,在這些的基礎上支撐了首頁、頻道頁、播放頁、會員頁、搜索、個人中心等眾多的業務場景。

在Android和iOS上,如何進行響應式狀態的管理?如何解決分屏下頁面寬高的獲取?如何解決多尺寸多終端下的頁面布局以及組件容器的布局?具體細節請看以下兩篇文章:

《響應式技術架構(Android)》

《響應式技術架構(iOS)》

響應式的業務改造

經過前期的技術調研,確定了Android、iOS、Flutter、Weex、H5等技術棧的適配方案,並以首頁、頻道頁、播放頁三大業務場景為切入點,完成初期響應式適配,進行效果演示。驗證適配方案可行性後,決定在優酷所有核心業務場景落地。為了推進項目的順利進行,召集了相關核心業務場景的技術、產品、設計、測試同學,進行項目kick off,介紹項目背景以及價值,明確相關業務團隊具體的工作和節奏,經過1個月所有同學的努力,順利在所有核心場景上線。

具體參與改造的核心業務場景有:首頁、頻道頁、播放頁、搜索、會員、會員交易、動態、個人中心、二級頁、互動、評論等,部分場景適配效果如下所示:

響應式業務改造涉及眾多的業務場景以及技術棧,如何在實際的適配過程中,確保所有的業務場景和技術棧都能低成本高效的適配,是響應式落地的關鍵。那麼業務方在適配過程中具體做了哪些工作?如何解決多技術棧的響應式改造?如何保障響應式適配後的用戶體驗?由於優酷的業務場景非常多,分發場景和消費場景是其中最典型也最重要的。

響應式的測試與上線

優酷響應式適配對測試來說面臨著很大的挑戰,既要保證不同尺寸上的適配效果,又要保證業務的完整。這就要求在測試過程中需要進行功能測試、穩定性測試、性能測試以及兼容性測試。

相關焦點

  • 交互規範:響應式讓屏幕利用更高,用戶體驗更佳
    讓用戶在不同設備和尺寸的屏幕下看的頁面顯示效果更佳,屏幕空間利用更高,操作體驗更統一,交互方式更符合習慣。本文主要圍繞什麼是響應式,如何搭建響應系統,響應式網站解析 三個部分進行闡述,在項目中提前定義好響應系統將有助於設計師在設計中考慮頁面在不屏幕斷點上布局,希望對正在了解響應式知識的你有幫助!!!1.
  • 移動端H5常見的布局方式有哪些
    隨著智慧型手機的普及以及社會的發展,傳統的網站布局已經無法適應現狀,我們編寫的網頁不僅僅要展示在電腦上, 也要展示在行動裝置上,而行動裝置種類繁多,蘋果、小米、三星等等很不好適配移動端設備屏幕尺寸非常多,碎片化嚴重,Android和蘋果設備有多種解析度:480x800, 480x854, 540x960, 720x1280,
  • 【史上最幹】Material Design複雜響應式設計
    如果說產品的核心邏輯或者技術的實現難易會成為設計展現的限制,那麼UX和UI應是在各種限制下所權衡出的最優解。而Material Design則像是架橋說明或者權衡出的通用解,對於眾多產品做以參考。既然是通用大綱,那麼拋開產品僅談設計,難免會停留於「通用」層面,而利用Material Design進行實戰的案例,網上也多是app的一些設計嘗試。
  • 響應式設計:一個網站,讓整個世界了解你
    這篇文章將帶你了解一個最好的選擇——響應式網頁設計。 一、響應式網站設計概念 響應式網站設計(Responsive Web design)的理念是:頁面的設計與開發應當根據用戶行為以及設備環境(系統平臺、屏幕尺寸、屏幕定向等)進行相應的響應和調整。
  • Bootstrap4.4.1網格實現響應式布局,只需要掌握這一點就行
    實現前端網頁實現響應式布局如果是自己寫代碼來實現真的挺困難的,但是使用bootstrap框架就非常容易了,即使不懂前端開發也可以很好地駕馭。當前最新版本是bootstrap4.4.1,和之前的老舊版本相比較在細節方面做了很多的優化和升級,其中網格系統是實現網頁響應式的核心組成部分。
  • 案例分析|響應式柵格的布局研究
    如何根據設計目標使用合適的柵格化布局呢?在這裡,我們將通過多個案例來研究布局分類,分析它們如何拓展到移動領域。柵格系統是一種系統地調整設計,建立層級結構和邏輯的方法。許多好的設計都使用了柵格系統,它讓設計看起來更統一和協調。
  • 手把手教你做規範:布局規範(柵格)
    屏幕端對不同尺寸頁面響應式時更省時省力對一種方法,是讓減輕我們工作量對方法,看到這裡是不是心動了,那就往下看看~柵格最早是應用於平面設計中,產生於二十世紀初的西歐,完善於五十年代的瑞士,通過有規律的網格來指導版面布局。柵格設計的在屏幕端的應用也十分廣泛,不光為設計服務,對響應式開發也起到了很大的作用。
  • bootstrap 用什麼布局專題及常見問題 - CSDN
    bootstrap學習之布局(柵格布局)今天自己在網上學習了BOOTSTRAP柵格系統,很有體會,希望將自己的學習心得寫寫下來供自己日後參考學習1.什麼是柵格布局?
  • 15款優秀移動APP產品原型設計工具
    按F5生成原型的時候,在「Mobile/Device」選項中可以設置適配行動裝置 的特殊原型(Axure 6.5以下版本),再用行動裝置訪問你生成的原型連結即可(該頁面創建一個桌面快捷方式)。 4、Proto.io
  • 華為發布鴻蒙OS手機開發者Beta版,明年覆蓋1億臺設備
    這個系統以場景定義設備,用領先的分布式技術打造系統內核,將多個物理分離的終端融合,從而實現一個 「超級終端」。 華為的「1+8+N」的物聯網戰略中,鴻蒙OS已經成為其中最為核心的布局。而在12月16日,鴻蒙OS更是準備登陸華為手機,從而取代Google的安卓系統,成為華為較為龐大的作業系統。
  • 華為發布鴻蒙OS手機開發者Beta版,明年覆蓋1億臺設備|王成錄|谷歌|...
    這意味著手機鴻蒙OS的適配已經提上了日程,國產OS將全面崛起。為萬物互聯而生的作業系統對於鴻蒙,大家並不陌生。隨著華為被美國制裁,華為在2019年8月份正式推出鴻蒙OS,任正非強調其是針對物聯網產業所推出的作業系統。這個系統以場景定義設備,用領先的分布式技術打造系統內核,將多個物理分離的終端融合,從而實現一個 「超級終端」。
  • 用Adobe XD 12更智能的快速完成響應式設計
    9月Adobe XD CC 發布12.0版本,新增響應式調整大小和約束功能,可以調整在多個外形規格中以不同的大小保持空間關係的對象的大小,快速實現響應式設計。Adobe XD CC 響應式在Adobe XD CC中選中任一或多個元素,在屬性檢測器會看到響應式調整大小的選項。
  • 前後端交互實戰項目——手機移動端布局
    顯然用戶希望在進入頁面時可以不需要縮放就可以有一個理想的瀏覽和閱讀尺寸。理想視口仍是為移動端設備準備的。只有手動添加meta視口標籤方才生效。如果沒有meta視口標籤,那麼布局將會維持它的默認寬度。如下代碼,告訴瀏覽器,布局視口的寬度應該與理想視口的寬度一致。
  • 11個超棒的 WordPress 響應式幻燈片插件
    基於這些考慮,我們今天將給大家推薦一些優秀的WordPress響應式幻燈片插件,這些插件都是有著廣泛的用戶基礎,經歷了時間和用戶的考驗,同時還都支持最新的WordPress 4.4版本。最關鍵的是,這些插件全部都不要錢,嘿嘿!Meta Slider
  • 從分布式技術看華為的全場景智慧生活戰略布局
    回顧以往作業系統為特定硬體品類所服務的歷史,Windows適配電腦,iOS和Android適配的是智慧型手機,用專門的系統去適配硬體確實獲得了很好的體驗,但卻帶來了另外一個問題,那就是跨設備的兼容性差。近年來,各家廠商都在跨設備協同上做文章,但系統交互卻沒有實質性的改變。
  • JFinal-layui v1.4.1 發布,實現響應式,解決表單重複提交
    JFinal-layui v1.4.1 主要實現響應式布局,解決表單重複提交問題,以及優化多選樹的展開功能。v1.4.1更新內容詳情:一、實現響應式布局    在給客戶開發的系統能夠現象響應式展示,那麼會給客戶的工作帶來便利。
  • Netflix 技術博客:更換移動 App 引擎的探索
    神譯局是36氪旗下編譯團隊,關注科技、商業、職場、生活等領域,重點介紹國外的新技術、新觀點、新風向。 編者按:移動app開發最煩人的地方在於,針對不同的平臺(Android/iOs),開發者需要開發不同的版本,能不能像Java那樣一次編寫,到處運行呢?
  • 企業想開發線上業務,那麼該做網站、APP、小程序還是公眾號?
    1、網站 根據國家統計局數據,2015年的網際網路普及率是50.3%,2016年增加到了53.2%,人數也從6.8億增長到了7.3億.現在,移動數據已經遠遠超出了PC端,因此網站要完成產品原型還需要做適應性調整,這也是經常聽到的響應式布局。
  • 20個編寫現代 CSS 代碼的建議 - OSCHINA - 中文開源技術交流社區
    而Flexbox則是專門的用於進行布局的工具。Better Table BordersHTML中使用Tables進行布局一直是個很頭疼的問題,它們使用起來很簡單,但是無法進行響應式操作,並且也不方便進行全局樣式設置。