tsuyoshin’s Tech Blog

https://qrunch.net/@tsuyoshin から移転してきました。

【Android Q, Android 10】 Googleフォントの定義・格納場所

Android Q から欧文フォントのデフォルトが Googleフォントへ変わった。
f:id:tsuyo-shin:20200930092436p:plain
Android P までは Robotoフォントがデフォルトフォントだった。
Googleフォントはどこで定義されているのか確認してみた。
[Build No : QPP3.190404.015]

フォント定義ファイル fonts.xml を見てみる。

$ adb pull system/etc/fonts.xml

Googleフォントの定義が見あたらない。

<?xml version="1.0" encoding="utf-8"?>
<!--
    WARNING: Parsing of this file by third-party apps is not supported. The
    file, and the font files it refers to, will be renamed and/or moved out
    from their respective location in the next Android release, and/or the
    format or syntax of the file may change significantly. If you parse this
    file for information about system fonts, do it at your own risk. Your
    application will almost certainly break with the next major Android
    release.

    In this file, all fonts without names are added to the default list.
    Fonts are chosen based on a match: full BCP-47 language tag including
    script, then just language, and finally order (the first font containing
    the glyph).

    Order of appearance is also the tiebreaker for weight matching. This is
    the reason why the 900 weights of Roboto precede the 700 weights - we
    prefer the former when an 800 weight is requested. Since bold spans
    effectively add 300 to the weight, this ensures that 900 is the bold
    paired with the 500 weight, ensuring adequate contrast.
-->
<familyset version="23">
    <!-- first font is default -->
    <family name="sans-serif">
        <font weight="100" style="normal">Roboto-Thin.ttf</font>
        <font weight="100" style="italic">Roboto-ThinItalic.ttf</font>
        <font weight="300" style="normal">Roboto-Light.ttf</font>
        <font weight="300" style="italic">Roboto-LightItalic.ttf</font>
        <font weight="400" style="normal">Roboto-Regular.ttf</font>
        <font weight="400" style="italic">Roboto-Italic.ttf</font>
        <font weight="500" style="normal">Roboto-Medium.ttf</font>
        <font weight="500" style="italic">Roboto-MediumItalic.ttf</font>
        <font weight="900" style="normal">Roboto-Black.ttf</font>
        <font weight="900" style="italic">Roboto-BlackItalic.ttf</font>
        <font weight="700" style="normal">Roboto-Bold.ttf</font>
        <font weight="700" style="italic">Roboto-BoldItalic.ttf</font>
    </family>

    <!-- Note that aliases must come after the fonts they reference. -->
    <alias name="sans-serif-thin" to="sans-serif" weight="100" />
    <alias name="sans-serif-light" to="sans-serif" weight="300" />
    <alias name="sans-serif-medium" to="sans-serif" weight="500" />
    <alias name="sans-serif-black" to="sans-serif" weight="900" />
    <alias name="arial" to="sans-serif" />
    <alias name="helvetica" to="sans-serif" />
    <alias name="tahoma" to="sans-serif" />
    <alias name="verdana" to="sans-serif" />

    <family name="sans-serif-condensed">
        <font weight="300" style="normal">RobotoCondensed-Light.ttf</font>
        <font weight="300" style="italic">RobotoCondensed-LightItalic.ttf</font>
        <font weight="400" style="normal">RobotoCondensed-Regular.ttf</font>
        <font weight="400" style="italic">RobotoCondensed-Italic.ttf</font>
        <font weight="500" style="normal">RobotoCondensed-Medium.ttf</font>
        <font weight="500" style="italic">RobotoCondensed-MediumItalic.ttf</font>
        <font weight="700" style="normal">RobotoCondensed-Bold.ttf</font>
        <font weight="700" style="italic">RobotoCondensed-BoldItalic.ttf</font>
    </family>
    <alias name="sans-serif-condensed-light" to="sans-serif-condensed" weight="300" />
    <alias name="sans-serif-condensed-medium" to="sans-serif-condensed" weight="500" />

    <family name="serif">
        <font weight="400" style="normal">NotoSerif-Regular.ttf</font>
        <font weight="700" style="normal">NotoSerif-Bold.ttf</font>
        <font weight="400" style="italic">NotoSerif-Italic.ttf</font>
        <font weight="700" style="italic">NotoSerif-BoldItalic.ttf</font>
    </family>
    <alias name="serif-bold" to="serif" weight="700" />
    <alias name="times" to="serif" />
    <alias name="times new roman" to="serif" />
    <alias name="palatino" to="serif" />
    <alias name="georgia" to="serif" />
    <alias name="baskerville" to="serif" />
    <alias name="goudy" to="serif" />
    <alias name="fantasy" to="serif" />
    <alias name="ITC Stone Serif" to="serif" />

    <family name="monospace">
        <font weight="400" style="normal">DroidSansMono.ttf</font>
    </family>
    <alias name="sans-serif-monospace" to="monospace" />
    <alias name="monaco" to="monospace" />

    <family name="serif-monospace">
        <font weight="400" style="normal">CutiveMono.ttf</font>
    </family>
    <alias name="courier" to="serif-monospace" />
    <alias name="courier new" to="serif-monospace" />

    <family name="casual">
        <font weight="400" style="normal">ComingSoon.ttf</font>
    </family>

    <family name="cursive">
        <font weight="400" style="normal">DancingScript-Regular.ttf</font>
        <font weight="700" style="normal">DancingScript-Bold.ttf</font>
    </family>

    <family name="sans-serif-smallcaps">
        <font weight="400" style="normal">CarroisGothicSC-Regular.ttf</font>
    </family>

    <family name="source-sans-pro">
        <font weight="400" style="normal">SourceSansPro-Regular.ttf</font>
        <font weight="400" style="italic">SourceSansPro-Italic.ttf</font>
        <font weight="600" style="normal">SourceSansPro-SemiBold.ttf</font>
        <font weight="600" style="italic">SourceSansPro-SemiBoldItalic.ttf</font>
        <font weight="700" style="normal">SourceSansPro-Bold.ttf</font>
        <font weight="700" style="italic">SourceSansPro-BoldItalic.ttf</font>
    </family>
    <alias name="source-sans-pro-semi-bold" to="source-sans-pro" weight="600" />

    <!-- fallback fonts -->
    <family lang="und-Arab" variant="elegant">
        <font weight="400" style="normal">NotoNaskhArabic-Regular.ttf</font>
        <font weight="700" style="normal">NotoNaskhArabic-Bold.ttf</font>
    </family>
    <family lang="und-Arab" variant="compact">
        <font weight="400" style="normal">NotoNaskhArabicUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoNaskhArabicUI-Bold.ttf</font>
    </family>
    <family lang="und-Ethi">
        <font weight="400" style="normal">NotoSansEthiopic-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansEthiopic-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifEthiopic-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifEthiopic-Bold.otf</font>
    </family>
    <family lang="und-Hebr">
        <font weight="400" style="normal">NotoSansHebrew-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansHebrew-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifHebrew-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifHebrew-Bold.ttf</font>
    </family>
    <family lang="und-Thai" variant="elegant">
        <font weight="400" style="normal">NotoSansThai-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansThai-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifThai-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifThai-Bold.ttf</font>
    </family>
    <family lang="und-Thai" variant="compact">
        <font weight="400" style="normal">NotoSansThaiUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansThaiUI-Bold.ttf</font>
    </family>
    <family lang="und-Armn">
        <font weight="400" style="normal">NotoSansArmenian-Regular.otf</font>
        <font weight="500" style="normal">NotoSansArmenian-Medium.otf</font>
        <font weight="700" style="normal">NotoSansArmenian-Bold.otf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifArmenian-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifArmenian-Bold.otf</font>
    </family>
    <family lang="und-Geor,und-Geok">
        <font weight="400" style="normal">NotoSansGeorgian-Regular.otf</font>
        <font weight="500" style="normal">NotoSansGeorgian-Medium.otf</font>
        <font weight="700" style="normal">NotoSansGeorgian-Bold.otf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifGeorgian-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifGeorgian-Bold.otf</font>
    </family>
    <family lang="und-Deva" variant="elegant">
        <font weight="400" style="normal">NotoSansDevanagari-Regular.otf</font>
        <font weight="500" style="normal">NotoSansDevanagari-Medium.otf</font>
        <font weight="700" style="normal">NotoSansDevanagari-Bold.otf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifDevanagari-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifDevanagari-Bold.ttf</font>
    </family>
    <family lang="und-Deva" variant="compact">
        <font weight="400" style="normal">NotoSansDevanagariUI-Regular.otf</font>
        <font weight="500" style="normal">NotoSansDevanagariUI-Medium.otf</font>
        <font weight="700" style="normal">NotoSansDevanagariUI-Bold.otf</font>
    </family>

    <!-- All scripts of India should come after Devanagari, due to shared
         danda characters.
    -->
    <family lang="und-Gujr" variant="elegant">
        <font weight="400" style="normal">NotoSansGujarati-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansGujarati-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifGujarati-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifGujarati-Bold.ttf</font>
    </family>
    <family lang="und-Gujr" variant="compact">
        <font weight="400" style="normal">NotoSansGujaratiUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansGujaratiUI-Bold.ttf</font>
    </family>
    <family lang="und-Guru" variant="elegant">
        <font weight="400" style="normal">NotoSansGurmukhi-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansGurmukhi-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifGurmukhi-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifGurmukhi-Bold.otf</font>
    </family>
    <family lang="und-Guru" variant="compact">
        <font weight="400" style="normal">NotoSansGurmukhiUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansGurmukhiUI-Bold.ttf</font>
    </family>
    <family lang="und-Taml" variant="elegant">
        <font weight="400" style="normal">NotoSansTamil-Regular.otf</font>
        <font weight="500" style="normal">NotoSansTamil-Medium.otf</font>
        <font weight="700" style="normal">NotoSansTamil-Bold.otf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifTamil-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifTamil-Bold.otf</font>
    </family>
    <family lang="und-Taml" variant="compact">
        <font weight="400" style="normal">NotoSansTamilUI-Regular.otf</font>
        <font weight="500" style="normal">NotoSansTamilUI-Medium.otf</font>
        <font weight="700" style="normal">NotoSansTamilUI-Bold.otf</font>
    </family>
    <family lang="und-Mlym" variant="elegant">
        <font weight="400" style="normal">NotoSansMalayalam-Regular.otf</font>
        <font weight="500" style="normal">NotoSansMalayalam-Medium.otf</font>
        <font weight="700" style="normal">NotoSansMalayalam-Bold.otf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifMalayalam-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifMalayalam-Bold.ttf</font>
    </family>
    <family lang="und-Mlym" variant="compact">
        <font weight="400" style="normal">NotoSansMalayalamUI-Regular.otf</font>
        <font weight="500" style="normal">NotoSansMalayalamUI-Medium.otf</font>
        <font weight="700" style="normal">NotoSansMalayalamUI-Bold.otf</font>
    </family>
    <family lang="und-Beng" variant="elegant">
        <font weight="400" style="normal">NotoSansBengali-Regular.otf</font>
        <font weight="500" style="normal">NotoSansBengali-Medium.otf</font>
        <font weight="700" style="normal">NotoSansBengali-Bold.otf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifBengali-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifBengali-Bold.ttf</font>
    </family>
    <family lang="und-Beng" variant="compact">
        <font weight="400" style="normal">NotoSansBengaliUI-Regular.otf</font>
        <font weight="500" style="normal">NotoSansBengaliUI-Medium.otf</font>
        <font weight="700" style="normal">NotoSansBengaliUI-Bold.otf</font>
    </family>
    <family lang="und-Telu" variant="elegant">
        <font weight="400" style="normal">NotoSansTelugu-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansTelugu-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifTelugu-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifTelugu-Bold.ttf</font>
    </family>
    <family lang="und-Telu" variant="compact">
        <font weight="400" style="normal">NotoSansTeluguUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansTeluguUI-Bold.ttf</font>
    </family>
    <family lang="und-Knda" variant="elegant">
        <font weight="400" style="normal">NotoSansKannada-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansKannada-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifKannada-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifKannada-Bold.ttf</font>
    </family>
    <family lang="und-Knda" variant="compact">
        <font weight="400" style="normal">NotoSansKannadaUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansKannadaUI-Bold.ttf</font>
    </family>
    <family lang="und-Orya" variant="elegant">
        <font weight="400" style="normal">NotoSansOriya-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansOriya-Bold.ttf</font>
    </family>
    <family lang="und-Orya" variant="compact">
        <font weight="400" style="normal">NotoSansOriyaUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansOriyaUI-Bold.ttf</font>
    </family>

    <family lang="und-Sinh" variant="elegant">
        <font weight="400" style="normal">NotoSansSinhala-Regular.otf</font>
        <font weight="500" style="normal">NotoSansSinhala-Medium.otf</font>
        <font weight="700" style="normal">NotoSansSinhala-Bold.otf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifSinhala-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifSinhala-Bold.otf</font>
    </family>
    <family lang="und-Sinh" variant="compact">
        <font weight="400" style="normal">NotoSansSinhalaUI-Regular.otf</font>
        <font weight="500" style="normal">NotoSansSinhalaUI-Medium.otf</font>
        <font weight="700" style="normal">NotoSansSinhalaUI-Bold.otf</font>
    </family>
    <family lang="und-Khmr" variant="elegant">
        <font weight="100" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="26.0" />
        </font>
        <font weight="200" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="39.0" />
        </font>
        <font weight="300" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="58.0" />
        </font>
        <font weight="400" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="90.0" />
        </font>
        <font weight="500" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="108.0" />
        </font>
        <font weight="600" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="128.0" />
        </font>
        <font weight="700" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="151.0" />
        </font>
        <font weight="800" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="169.0" />
        </font>
        <font weight="900" style="normal">NotoSansKhmer-VF.ttf
            <axis tag="wdth" stylevalue="100.0" />
            <axis tag="wght" stylevalue="190.0" />
        </font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifKhmer-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifKhmer-Bold.otf</font>
      </family>
    <family lang="und-Khmr" variant="compact">
        <font weight="400" style="normal">NotoSansKhmerUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansKhmerUI-Bold.ttf</font>
    </family>
    <family lang="und-Laoo" variant="elegant">
        <font weight="400" style="normal">NotoSansLao-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansLao-Bold.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifLao-Regular.ttf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifLao-Bold.ttf</font>
    </family>
    <family lang="und-Laoo" variant="compact">
        <font weight="400" style="normal">NotoSansLaoUI-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansLaoUI-Bold.ttf</font>
    </family>
    <family lang="und-Mymr" variant="elegant">
        <font weight="400" style="normal">NotoSansMyanmar-Regular-ZawDecode.ttf</font>
        <font weight="700" style="normal">NotoSansMyanmar-Bold-ZawDecode.ttf</font>
        <font weight="400" style="normal" fallbackFor="serif">NotoSerifMyanmar-Regular.otf</font>
        <font weight="700" style="normal" fallbackFor="serif">NotoSerifMyanmar-Bold.otf</font>
    </family>
    <family lang="und-Mymr" variant="compact">
        <font weight="400" style="normal">NotoSansMyanmarUI-Regular-ZawDecode.ttf</font>
        <font weight="700" style="normal">NotoSansMyanmarUI-Bold-ZawDecode.ttf</font>
    </family>
    <family lang="und-Thaa">
        <font weight="400" style="normal">NotoSansThaana-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansThaana-Bold.ttf</font>
    </family>
    <family lang="und-Cham">
        <font weight="400" style="normal">NotoSansCham-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansCham-Bold.ttf</font>
    </family>
    <family lang="und-Ahom">
        <font weight="400" style="normal">NotoSansAhom-Regular.otf</font>
    </family>
    <family lang="und-Adlm">
        <font weight="400" style="normal">NotoSansAdlam-Regular.ttf</font>
    </family>
    <family lang="und-Avst">
        <font weight="400" style="normal">NotoSansAvestan-Regular.ttf</font>
    </family>
    <family lang="und-Bali">
        <font weight="400" style="normal">NotoSansBalinese-Regular.ttf</font>
    </family>
    <family lang="und-Bamu">
        <font weight="400" style="normal">NotoSansBamum-Regular.ttf</font>
    </family>
    <family lang="und-Batk">
        <font weight="400" style="normal">NotoSansBatak-Regular.ttf</font>
    </family>
    <family lang="und-Brah">
        <font weight="400" style="normal">NotoSansBrahmi-Regular.ttf</font>
    </family>
    <family lang="und-Bugi">
        <font weight="400" style="normal">NotoSansBuginese-Regular.ttf</font>
    </family>
    <family lang="und-Buhd">
        <font weight="400" style="normal">NotoSansBuhid-Regular.ttf</font>
    </family>
    <family lang="und-Cans">
        <font weight="400" style="normal">NotoSansCanadianAboriginal-Regular.ttf</font>
    </family>
    <family lang="und-Cari">
        <font weight="400" style="normal">NotoSansCarian-Regular.ttf</font>
    </family>
    <family lang="und-Cakm">
        <font weight="400" style="normal">NotoSansChakma-Regular.otf</font>
    </family>
    <family lang="und-Cher">
        <font weight="400" style="normal">NotoSansCherokee-Regular.ttf</font>
    </family>
    <family lang="und-Copt">
        <font weight="400" style="normal">NotoSansCoptic-Regular.ttf</font>
    </family>
    <family lang="und-Xsux">
        <font weight="400" style="normal">NotoSansCuneiform-Regular.ttf</font>
    </family>
    <family lang="und-Cprt">
        <font weight="400" style="normal">NotoSansCypriot-Regular.ttf</font>
    </family>
    <family lang="und-Dsrt">
        <font weight="400" style="normal">NotoSansDeseret-Regular.ttf</font>
    </family>
    <family lang="und-Egyp">
        <font weight="400" style="normal">NotoSansEgyptianHieroglyphs-Regular.ttf</font>
    </family>
    <family lang="und-Elba">
        <font weight="400" style="normal">NotoSansElbasan-Regular.otf</font>
    </family>
    <family lang="und-Glag">
        <font weight="400" style="normal">NotoSansGlagolitic-Regular.ttf</font>
    </family>
    <family lang="und-Goth">
        <font weight="400" style="normal">NotoSansGothic-Regular.ttf</font>
    </family>
    <family lang="und-Hano">
        <font weight="400" style="normal">NotoSansHanunoo-Regular.ttf</font>
    </family>
    <family lang="und-Armi">
        <font weight="400" style="normal">NotoSansImperialAramaic-Regular.ttf</font>
    </family>
    <family lang="und-Phli">
        <font weight="400" style="normal">NotoSansInscriptionalPahlavi-Regular.ttf</font>
    </family>
    <family lang="und-Prti">
        <font weight="400" style="normal">NotoSansInscriptionalParthian-Regular.ttf</font>
    </family>
    <family lang="und-Java">
        <font weight="400" style="normal">NotoSansJavanese-Regular.ttf</font>
    </family>
    <family lang="und-Kthi">
        <font weight="400" style="normal">NotoSansKaithi-Regular.ttf</font>
    </family>
    <family lang="und-Kali">
        <font weight="400" style="normal">NotoSansKayahLi-Regular.ttf</font>
    </family>
    <family lang="und-Khar">
        <font weight="400" style="normal">NotoSansKharoshthi-Regular.ttf</font>
    </family>
    <family lang="und-Lepc">
        <font weight="400" style="normal">NotoSansLepcha-Regular.ttf</font>
    </family>
    <family lang="und-Limb">
        <font weight="400" style="normal">NotoSansLimbu-Regular.ttf</font>
    </family>
    <family lang="und-Linb">
        <font weight="400" style="normal">NotoSansLinearB-Regular.ttf</font>
    </family>
    <family lang="und-Lisu">
        <font weight="400" style="normal">NotoSansLisu-Regular.ttf</font>
    </family>
    <family lang="und-Lyci">
        <font weight="400" style="normal">NotoSansLycian-Regular.ttf</font>
    </family>
    <family lang="und-Lydi">
        <font weight="400" style="normal">NotoSansLydian-Regular.ttf</font>
    </family>
    <family lang="und-Mand">
        <font weight="400" style="normal">NotoSansMandaic-Regular.ttf</font>
    </family>
    <family lang="und-Mtei">
        <font weight="400" style="normal">NotoSansMeeteiMayek-Regular.ttf</font>
    </family>
    <family lang="und-Talu">
        <font weight="400" style="normal">NotoSansNewTaiLue-Regular.ttf</font>
    </family>
    <family lang="und-Nkoo">
        <font weight="400" style="normal">NotoSansNKo-Regular.ttf</font>
    </family>
    <family lang="und-Ogam">
        <font weight="400" style="normal">NotoSansOgham-Regular.ttf</font>
    </family>
    <family lang="und-Olck">
        <font weight="400" style="normal">NotoSansOlChiki-Regular.ttf</font>
    </family>
    <family lang="und-Ital">
        <font weight="400" style="normal">NotoSansOldItalic-Regular.ttf</font>
    </family>
    <family lang="und-Xpeo">
        <font weight="400" style="normal">NotoSansOldPersian-Regular.ttf</font>
    </family>
    <family lang="und-Sarb">
        <font weight="400" style="normal">NotoSansOldSouthArabian-Regular.ttf</font>
    </family>
    <family lang="und-Orkh">
        <font weight="400" style="normal">NotoSansOldTurkic-Regular.ttf</font>
    </family>
    <family lang="und-Osge">
        <font weight="400" style="normal">NotoSansOsage-Regular.ttf</font>
    </family>
    <family lang="und-Osma">
        <font weight="400" style="normal">NotoSansOsmanya-Regular.ttf</font>
    </family>
    <family lang="und-Phnx">
        <font weight="400" style="normal">NotoSansPhoenician-Regular.ttf</font>
    </family>
    <family lang="und-Rjng">
        <font weight="400" style="normal">NotoSansRejang-Regular.ttf</font>
    </family>
    <family lang="und-Runr">
        <font weight="400" style="normal">NotoSansRunic-Regular.ttf</font>
    </family>
    <family lang="und-Samr">
        <font weight="400" style="normal">NotoSansSamaritan-Regular.ttf</font>
    </family>
    <family lang="und-Saur">
        <font weight="400" style="normal">NotoSansSaurashtra-Regular.ttf</font>
    </family>
    <family lang="und-Shaw">
        <font weight="400" style="normal">NotoSansShavian-Regular.ttf</font>
    </family>
    <family lang="und-Sund">
        <font weight="400" style="normal">NotoSansSundanese-Regular.ttf</font>
    </family>
    <family lang="und-Sylo">
        <font weight="400" style="normal">NotoSansSylotiNagri-Regular.ttf</font>
    </family>
    <!-- Esrangela should precede Eastern and Western Syriac, since it's our default form. -->
    <family lang="und-Syre">
        <font weight="400" style="normal">NotoSansSyriacEstrangela-Regular.ttf</font>
    </family>
    <family lang="und-Syrn">
        <font weight="400" style="normal">NotoSansSyriacEastern-Regular.ttf</font>
    </family>
    <family lang="und-Syrj">
        <font weight="400" style="normal">NotoSansSyriacWestern-Regular.ttf</font>
    </family>
    <family lang="und-Tglg">
        <font weight="400" style="normal">NotoSansTagalog-Regular.ttf</font>
    </family>
    <family lang="und-Tagb">
        <font weight="400" style="normal">NotoSansTagbanwa-Regular.ttf</font>
    </family>
    <family lang="und-Lana">
        <font weight="400" style="normal">NotoSansTaiTham-Regular.ttf</font>
    </family>
    <family lang="und-Tavt">
        <font weight="400" style="normal">NotoSansTaiViet-Regular.ttf</font>
    </family>
    <family lang="und-Tibt">
        <font weight="400" style="normal">NotoSansTibetan-Regular.ttf</font>
        <font weight="700" style="normal">NotoSansTibetan-Bold.ttf</font>
    </family>
    <family lang="und-Tfng">
        <font weight="400" style="normal">NotoSansTifinagh-Regular.ttf</font>
    </family>
    <family lang="und-Ugar">
        <font weight="400" style="normal">NotoSansUgaritic-Regular.ttf</font>
    </family>
    <family lang="und-Vaii">
        <font weight="400" style="normal">NotoSansVai-Regular.ttf</font>
    </family>
    <family>
        <font weight="400" style="normal">NotoSansSymbols-Regular-Subsetted.ttf</font>
    </family>
    <family lang="zh-Hans">
        <font weight="400" style="normal" index="2">NotoSansCJK-Regular.ttc</font>
        <font weight="400" style="normal" index="2" fallbackFor="serif">NotoSerifCJK-Regular.ttc</font>
    </family>
    <family lang="zh-Hant,zh-Bopo">
        <font weight="400" style="normal" index="3">NotoSansCJK-Regular.ttc</font>
        <font weight="400" style="normal" index="3" fallbackFor="serif">NotoSerifCJK-Regular.ttc</font>
    </family>
    <family lang="ja">
        <font weight="400" style="normal" index="0">NotoSansCJK-Regular.ttc</font>
        <font weight="400" style="normal" index="0" fallbackFor="serif">NotoSerifCJK-Regular.ttc</font>
    </family>
    <family lang="ko">
        <font weight="400" style="normal" index="1">NotoSansCJK-Regular.ttc</font>
        <font weight="400" style="normal" index="1" fallbackFor="serif">NotoSerifCJK-Regular.ttc</font>
    </family>
    <family lang="und-Zsye">
        <font weight="400" style="normal">NotoColorEmoji.ttf</font>
    </family>
    <family lang="und-Zsym">
        <font weight="400" style="normal">NotoSansSymbols-Regular-Subsetted2.ttf</font>
    </family>
    <!--
        Tai Le, Yi, Mongolian, and Phags-pa are intentionally kept last, to make sure they don't
        override the East Asian punctuation for Chinese.
    -->
    <family lang="und-Tale">
        <font weight="400" style="normal">NotoSansTaiLe-Regular.ttf</font>
    </family>
    <family lang="und-Yiii">
        <font weight="400" style="normal">NotoSansYi-Regular.ttf</font>
    </family>
    <family lang="und-Mong">
        <font weight="400" style="normal">NotoSansMongolian-Regular.ttf</font>
    </family>
    <family lang="und-Phag">
        <font weight="400" style="normal">NotoSansPhagsPa-Regular.ttf</font>
    </family>
    <family lang="und-Hluw">
        <font weight="400" style="normal">NotoSansAnatolianHieroglyphs-Regular.otf</font>
    </family>
    <family lang="und-Bass">
        <font weight="400" style="normal">NotoSansBassaVah-Regular.otf</font>
    </family>
    <family lang="und-Bhks">
        <font weight="400" style="normal">NotoSansBhaiksuki-Regular.otf</font>
    </family>
    <family lang="und-Hatr">
        <font weight="400" style="normal">NotoSansHatran-Regular.otf</font>
    </family>
    <family lang="und-Lina">
        <font weight="400" style="normal">NotoSansLinearA-Regular.otf</font>
    </family>
    <family lang="und-Mani">
        <font weight="400" style="normal">NotoSansManichaean-Regular.otf</font>
    </family>
    <family lang="und-Marc">
        <font weight="400" style="normal">NotoSansMarchen-Regular.otf</font>
    </family>
    <family lang="und-Merc">
        <font weight="400" style="normal">NotoSansMeroitic-Regular.otf</font>
    </family>
    <family lang="und-Plrd">
        <font weight="400" style="normal">NotoSansMiao-Regular.otf</font>
    </family>
    <family lang="und-Mroo">
        <font weight="400" style="normal">NotoSansMro-Regular.otf</font>
    </family>
    <family lang="und-Mult">
        <font weight="400" style="normal">NotoSansMultani-Regular.otf</font>
    </family>
    <family lang="und-Nbat">
        <font weight="400" style="normal">NotoSansNabataean-Regular.otf</font>
    </family>
    <family lang="und-Newa">
        <font weight="400" style="normal">NotoSansNewa-Regular.otf</font>
    </family>
    <family lang="und-Narb">
        <font weight="400" style="normal">NotoSansOldNorthArabian-Regular.otf</font>
    </family>
    <family lang="und-Perm">
        <font weight="400" style="normal">NotoSansOldPermic-Regular.otf</font>
    </family>
    <family lang="und-Hmng">
        <font weight="400" style="normal">NotoSansPahawhHmong-Regular.otf</font>
    </family>
    <family lang="und-Palm">
        <font weight="400" style="normal">NotoSansPalmyrene-Regular.otf</font>
    </family>
    <family lang="und-Pauc">
        <font weight="400" style="normal">NotoSansPauCinHau-Regular.otf</font>
    </family>
    <family lang="und-Shrd">
        <font weight="400" style="normal">NotoSansSharada-Regular.otf</font>
    </family>
    <family lang="und-Sora">
        <font weight="400" style="normal">NotoSansSoraSompeng-Regular.otf</font>
    </family>
</familyset>

端末内を探していると、それらしきファイルが見つかった。

$ adb shell ls -l /system/product/etc
drwxr-xr-x 2 root root 4096 2009-01-01 09:00 CarrierSettings
-rw-r--r-- 1 root root   75 2009-01-01 09:00 NOTICE.xml.gz
drwxr-xr-x 2 root root 4096 2009-01-01 09:00 ambient
-rw-r--r-- 1 root root 2170 2009-01-01 09:00 fonts_customization.xml
-rw-r--r-- 1 root root  834 2009-01-01 09:00 fstab.postinstall
-rw-r--r-- 1 root root 3507 2009-01-01 09:00 libnfc-nci.conf
drwxr-xr-x 2 root root 4096 2009-01-01 09:00 permissions
drwxr-xr-x 2 root root 4096 2009-01-01 09:00 preferred-apps
drwxr-xr-x 3 root root 4096 2009-01-01 09:00 security
drwxr-xr-x 2 root root 4096 2009-01-01 09:00 selinux
drwxr-xr-x 2 root root 4096 2009-01-01 09:00 sysconfig

fonts_customization.xml ファイルを取り出してみる。

$ adb pull /system/product/etc/fonts_customization.xml

GoogleSans の記載があった。

<fonts-modification version="1">
    <family customizationType="new-named-family" name="google-sans">
        <font weight="400" style="normal">GoogleSans-Regular.ttf</font>
        <font weight="400" style="italic">GoogleSans-Italic.ttf</font>
        <font weight="500" style="normal">GoogleSans-Medium.ttf</font>
        <font weight="500" style="italic">GoogleSans-MediumItalic.ttf</font>
        <font weight="700" style="normal">GoogleSans-Bold.ttf</font>
        <font weight="700" style="italic">GoogleSans-BoldItalic.ttf</font>
    </family>
    <alias name="google-sans-medium" to="google-sans" weight="500" />

    <family customizationType="new-named-family" name="arbutus-slab">
      <font weight="400" style="normal">ArbutusSlab-Regular.ttf</font>
    </family>

    <family customizationType="new-named-family" name="lato">
      <font weight="400" style="normal">Lato-Regular.ttf</font>
      <font weight="400" style="italic">Lato-Italic.ttf</font>
      <font weight="700" style="normal">Lato-Bold.ttf</font>
      <font weight="700" style="italic">Lato-BoldItalic.ttf</font>
    </family>
    <alias name="lato-bold" to="lato" weight="700" />

    <family customizationType="new-named-family" name="rubik">
      <font weight="400" style="normal">Rubik-Regular.ttf</font>
      <font weight="400" style="italic">Rubik-Italic.ttf</font>
      <font weight="500" style="normal">Rubik-Medium.ttf</font>
      <font weight="500" style="italic">Rubik-MediumItalic.ttf</font>
      <font weight="700" style="normal">Rubik-Bold.ttf</font>
      <font weight="700" style="italic">Rubik-BoldItalic.ttf</font>
    </family>
    <alias name="rubik-medium" to="rubik" weight="500" />

    <family customizationType="new-named-family" name="zilla-slab-medium">
      <font weight="500" style="normal">ZillaSlab-Medium.ttf</font>
      <font weight="500" style="italic">ZillaSlab-MediumItalic.ttf</font>
      <font weight="600" style="normal">ZillaSlab-SemiBold.ttf</font>
      <font weight="600" style="italic">ZillaSlab-SemiBoldItalic.ttf</font>
    </family>
    <alias name="zilla-slab-semi-bold" to="zilla-slab-medium" weight="600" />
</fonts-modification>

Googleフォントのファイルは以下の場所に格納されていた。

$ adb shell ls -l /system/product/fonts
-rw-r--r-- 1 root root  69268 2009-01-01 09:00 ArbutusSlab-Regular.ttf
-rw-r--r-- 1 root root 120156 2009-01-01 09:00 GoogleSans-Bold.ttf
-rw-r--r-- 1 root root 122924 2009-01-01 09:00 GoogleSans-BoldItalic.ttf
-rw-r--r-- 1 root root 123128 2009-01-01 09:00 GoogleSans-Italic.ttf
-rw-r--r-- 1 root root 120756 2009-01-01 09:00 GoogleSans-Medium.ttf
-rw-r--r-- 1 root root 122932 2009-01-01 09:00 GoogleSans-MediumItalic.ttf
-rw-r--r-- 1 root root 120908 2009-01-01 09:00 GoogleSans-Regular.ttf
-rw-r--r-- 1 root root 587864 2009-01-01 09:00 Lato-Bold.ttf
-rw-r--r-- 1 root root 618416 2009-01-01 09:00 Lato-BoldItalic.ttf
-rw-r--r-- 1 root root 643648 2009-01-01 09:00 Lato-Italic.ttf
-rw-r--r-- 1 root root 636396 2009-01-01 09:00 Lato-Medium.ttf
-rw-r--r-- 1 root root 694924 2009-01-01 09:00 Lato-MediumItalic.ttf
-rw-r--r-- 1 root root 589720 2009-01-01 09:00 Lato-Regular.ttf
-rw-r--r-- 1 root root 143356 2009-01-01 09:00 Rubik-Bold.ttf
-rw-r--r-- 1 root root 146920 2009-01-01 09:00 Rubik-BoldItalic.ttf
-rw-r--r-- 1 root root 143816 2009-01-01 09:00 Rubik-Italic.ttf
-rw-r--r-- 1 root root 143696 2009-01-01 09:00 Rubik-Medium.ttf
-rw-r--r-- 1 root root 145452 2009-01-01 09:00 Rubik-MediumItalic.ttf
-rw-r--r-- 1 root root 140732 2009-01-01 09:00 Rubik-Regular.ttf
-rw-r--r-- 1 root root 268184 2009-01-01 09:00 ZillaSlab-Medium.ttf
-rw-r--r-- 1 root root 276812 2009-01-01 09:00 ZillaSlab-MediumItalic.ttf
-rw-r--r-- 1 root root 270088 2009-01-01 09:00 ZillaSlab-SemiBold.ttf
-rw-r--r-- 1 root root 277604 2009-01-01 09:00 ZillaSlab-SemiBoldItalic.ttf

GoogleSans-Regular.ttf を取り出してみる。

$ adb pull /system/product/fonts/GoogleSans-Regular.ttf

ファイルを表示してみると、確かにGoogleフォントだった。
f:id:tsuyo-shin:20200930092618p:plain