Google會在昨天的I / O活動中為Android O開發(fā)人員發(fā)布第二個預(yù)覽版(Android O DP2), 到目前為止,我們已經(jīng)深刻理解了我們發(fā)現(xiàn)的新事物,但是關(guān)于DP2的一件事觸動了我。 進(jìn)行Beta版更新或手動更新新圖像的任何人都可以在快速設(shè)置中找到完全不同的用戶界面。 Google為什么決定改變這個世界? 經(jīng)過進(jìn)一步的測試和研究,我得出了一個結(jié)論。 由于某種原因,Google決定將其話題轉(zhuǎn)為現(xiàn)實。 如果公司正在測試基于以下內(nèi)容的自定義設(shè)計解決方案:Sony的運行時資源疊加(RRO),則可能無法及時發(fā)布Android O Beta的默認(rèn)像素設(shè)計。
考慮到Google 在Android 6.0 Marshmallow中實現(xiàn)了對RRO的支持,盡管有人要求您擁有扎根的設(shè)備,但Android O主題框架基于索尼RRO的啟示對于某些人來說似乎很明顯。但是,由于尚未發(fā)布Android O的源代碼,因此純粹猜測是要暗示Android O中的該系統(tǒng)主題實際上是RRO。這就是為什么我們最初 對這種神秘環(huán)境的報道以及其他網(wǎng)站所做的報道沒有建立這種聯(lián)系的原因。但是,有一些證據(jù)表明該功能與主題框架相關(guān)聯(lián),我們認(rèn)為應(yīng)該最終表明Android O的設(shè)備主題基于RRO。有了RRO支持,這可能 最后為我們一直在等待的無根用戶提供主題解決方案。
什么是運行時資源覆蓋(RRO)?
RRO是由Sony開發(fā)人員創(chuàng)建的主題框架,該框架為Sony Xperia Themes提供了支持。RRO的優(yōu)點在于,它允許您替換應(yīng)用程序資源而不必修改應(yīng)用程序的源代碼。這是通過使用覆蓋來實現(xiàn)的,覆蓋包含其自己的資源字符串,這些字符串用于在加載應(yīng)用程序時替換覆蓋的應(yīng)用程序的資源。
對于那些看到“ RRO”并想到“ Layers”的人來說,您非常接近。Layers是Sony RRO的略微修改版本,但在基本級別上,其工作原理非常相似。RRO / Layers將主題APK“安裝”到/ system / vendor / overlay。在啟動時,程序包管理器將讀取這些APK,對其進(jìn)行驗證,然后使用idmap 將其鏈接到系統(tǒng)資源表中。您可以閱讀SykoPompos(一個(現(xiàn)已不推薦使用)Layers Manager 應(yīng)用程序的開發(fā)人員) 更詳盡的FAQ 。
當(dāng)然,Android自定義ROM社區(qū)中很少有人仍在使用基于RRO的主題引擎。大多數(shù)已經(jīng)轉(zhuǎn)移到另一個主題引擎,例如 Substratum,它是現(xiàn)在基于Overlay Manager Service(OMS)的Layers的演變。(CyanogenMod主題引擎(CMTE)是另一個流行的主題框架,盡管它的未來仍然懸而未決。)但是,即使您沒有在OMS提交中使用自定義ROM, Substratum主題引擎應(yīng)用程序仍然支持該功能。使用僅屬于RRO / Layers主題的“ Substratum Legacy”主題。因此,用戶開始發(fā)現(xiàn)Android O的設(shè)備主題與RRO是相同的。
在上一個的評論部分 AndroidPolice文章, XDA開發(fā)者的認(rèn)可Maxr1998 貼出的截圖,聲稱臥層傳統(tǒng)主題在谷歌的設(shè)備主題選取露面。