ชุดอีโมจิมาตรฐานมีการรีเฟรชทุกปีโดย Unicode เนื่องจากมีการใช้อีโมจิเพิ่มขึ้น ได้อย่างรวดเร็วสำหรับแอปทุกประเภท
หากแอปของคุณแสดงเนื้อหาบนอินเทอร์เน็ตหรือป้อนข้อความเรา ขอแนะนำให้รองรับแบบอักษรอีโมจิล่าสุด ไม่เช่นนั้นอาจเป็นอีโมจิในภายหลัง แสดงเป็นกล่องสี่เหลี่ยมจัตุรัสเล็กๆ ที่เรียกว่า tofu (☐) หรืออื่นๆ ที่แสดงผลไม่ถูกต้อง ลำดับอีโมจิ
Android เวอร์ชัน 11 (API ระดับ 30) และต่ำกว่าจะอัปเดตแบบอักษรอีโมจิไม่ได้ ดังนั้น แอปที่แสดงผลิตภัณฑ์ดังกล่าวในเวอร์ชันเหล่านั้นต้องได้รับการอัปเดตด้วยตนเอง
ต่อไปนี้เป็นตัวอย่างของอีโมจิสมัยใหม่
ตัวอย่าง | เวอร์ชัน |
---|---|
🫠 🫱🏼🫲🏿 🫰🏽 | 14.0 (กันยายน 2021) |
😶🌫️ 🧔🏻♀️ 🧑🏿❤️🧑🏾 | 13.1 (กันยายน 2020) |
🥲 🥷🏿 🐻❄️ | 13.0 (มีนาคม 2020) |
🧑🏻🦰 🧑🏿🦯 👩🏻🤝👩🏼 | 12.1 (ตุลาคม 2019) |
🦩 🦻🏿 👩🏼🤝👩🏻 | 12.0 (กุมภาพันธ์ 2019) |
ไลบรารี androidx.emoji2:emoji2
มีความเข้ากันได้แบบย้อนหลังที่ง่ายกว่า
กับ Android เวอร์ชันต่ำกว่า ไลบรารี emoji2
เป็นทรัพยากร Dependency ของ
ไลบรารี AppCompat
และไม่จำเป็นต้องมี
การกำหนดค่าเพิ่มเติมเพื่อให้ทำงานได้
การรองรับอีโมจิใน Compose
BOM มีนาคม 2023 (Compose UI 1.4) รองรับอีโมจิล่าสุด ซึ่งรวมถึงความเข้ากันได้แบบย้อนหลังกับ Android เวอร์ชันเก่ากว่า API 21 หน้านี้จะครอบคลุมวิธีกำหนดค่าอีโมจิสมัยใหม่ในระบบมุมมอง โปรดดู ของหน้าอีโมจิในการเขียนเพื่อดูข้อมูลเพิ่มเติม
สิ่งที่ต้องมีก่อน
หากต้องการยืนยันว่าแอปแสดงอีโมจิที่ใหม่กว่านี้ได้ ให้เปิดอีโมจิในอุปกรณ์ ที่ใช้ Android 10 (API ระดับ 29) หรือต่ำกว่า หน้านี้มีอีโมจิสมัยใหม่ที่คุณ แสดงสำหรับการทดสอบได้
ใช้ AppCompat เพื่อรองรับอีโมจิล่าสุด
AppCompat
1.4 มีการรองรับอีโมจิ
หากต้องการใช้AppCompat
เพื่อรองรับอีโมจิ ให้ทำดังนี้
ตรวจสอบว่าโมดูลของคุณใช้เวอร์ชันไลบรารี
AppCompat
หรือไม่ 1.4.0-alpha01 หรือ สูงขึ้นbuild.gradle // Ensure version is 1.4.0-alpha01 or higher. implementation "androidx.appcompat:appcompat.$appcompatVersion"
ตรวจสอบให้แน่ใจว่ากิจกรรมทั้งหมดที่แสดงข้อความขยาย
AppCompatActivity
Kotlin
MyActivity.kt class MyActivity: AppCompatActivity { ... }
Java
MyActivity.java class MyActivity extends AppCompatActivity { ... }
ทดสอบการผสานรวมโดยการเปิดตัวแอปในอุปกรณ์ที่ใช้ Android 10 หรือต่ำกว่า และแสดงสตริงทดสอบต่อไปนี้ ตรวจสอบว่าอักขระทั้งหมด แสดงผลอย่างถูกต้อง
- 14.0: 🫠, 🫱🏼 🫲🏿, 🫰🏽
- 13.1: 😶 🌫️, 🧔🏻 ♀️, 🧑🏿 ❤️ 🧑🏾
- 13.0: 🥲 🥷🏿, 🐻 หน้าร้าน
- 12.1: 🧑🏻 🦰, 🧑🏿 🦯, 👩🏻 🤝 👩🏼
- 12.0: 🦩, 🦻🏿, 👩🏼 🤝 👩🏻
แอปจะแสดงอีโมจิที่เข้ากันได้แบบย้อนหลังโดยอัตโนมัติในอุปกรณ์ทุกเครื่องที่
ระบุผู้ให้บริการแบบอักษรที่ดาวน์โหลดได้ของ emoji2
ที่เข้ากันได้ เช่น อุปกรณ์
ขับเคลื่อนโดยบริการ Google Play
หากแอปใช้ AppCompat แต่แสดงเต้าหู้ (☐)
ในบางกรณี แอปของคุณอาจแสดงเต้าหู้แทนอีโมจิที่ถูกต้อง แม้ว่า
คุณเพิ่มไลบรารี AppCompat
ต่อไปนี้เป็นคำอธิบายที่เป็นไปได้และ
Google Cloud
คุณกำลังเรียกใช้แอปในอุปกรณ์ที่กะพริบเมื่อเร็วๆ นี้หรือโปรแกรมจำลองใหม่
ล้างข้อมูลบริการ Google Play ของแอปเพื่อล้างการแคชแบบอักษรที่อาจ เกิดขึ้นระหว่างการเริ่มต้นใช้งาน โดยปกติจะแก้ไขปัญหาได้หลังจากผ่านไป 2-3 ชั่วโมง
หากต้องการล้างข้อมูลแอป ให้ทำดังนี้
เปิดการตั้งค่าในอุปกรณ์ที่ใช้ Android
แตะแอปและการแจ้งเตือน
แตะดูแอปทั้งหมดหรือข้อมูลแอป
เลื่อนดูแอป แล้วแตะบริการ Google Play
แตะ พื้นที่เก็บข้อมูลและ แคช
แตะล้างแคช
แอปของคุณไม่ได้ใช้คลาสที่เกี่ยวข้องกับข้อความ AppCompat
กรณีนี้เกิดขึ้นได้หากคุณไม่ขยาย AppCompatActivity
หรือหากคุณสร้างอินสแตนซ์
ดูในโค้ด เช่น TextView
ตรวจสอบสิ่งต่อไปนี้
- กิจกรรมจะขยายเวลาออกไป
AppCompatActivity
- หากสร้างข้อมูลพร็อพเพอร์ตี้ในโค้ด ให้ใช้
AppCompat
ที่ถูกต้อง คลาสย่อย
AppCompatActivity
จะเพิ่มจำนวน AppCompatTextView
โดยอัตโนมัติแทนที่
TextView
เมื่อเพิ่มขนาด XML คุณจึงไม่จำเป็นต้องอัปเดต XML
โทรศัพท์ทดสอบไม่รองรับแบบอักษรที่ดาวน์โหลดได้
ยืนยันว่า DefaultEmojiCompatConfig.create
แสดงผลการกำหนดค่าที่ไม่เป็นค่าว่าง
โปรแกรมจำลองในระดับ API ก่อนหน้านี้ไม่ได้อัปเกรดบริการ Google Play
เมื่อใช้โปรแกรมจำลองในระดับ API ก่อนหน้านี้ คุณอาจต้องอัปเดต
รวมบริการ Google Play สำหรับ emoji2
เพื่อค้นหาผู้ให้บริการแบบอักษร วิธีการคือ
ลงชื่อเข้าสู่ระบบ Google Play Store ในโปรแกรมจำลอง
หากต้องการยืนยันว่าติดตั้งเวอร์ชันที่เข้ากันได้แล้ว ให้ทำดังนี้
เรียกใช้คำสั่งต่อไปนี้
adb shell dumpsys package com.google.android.gms | grep version
ตรวจสอบว่า
versionCode
สูงกว่า211200000
รองรับอีโมจิโดยไม่ใช้ AppCompat
หากแอปใส่ AppCompat
ไม่ได้ แอปจะใช้ emoji2
ได้โดยตรง ช่วงเวลานี้
ต้องดําเนินการมากขึ้น ดังนั้นให้ใช้วิธีนี้เฉพาะเมื่อแอปไม่สามารถใช้ AppCompat
ได้
หากต้องการรองรับอีโมจิโดยไม่มีคลัง AppCompat
ให้ทำดังนี้
ในไฟล์
build.gradle
ของแอป ให้ใส่emoji2
และemoji2-views
build.gradle def emojiVersion = "1.0.0-alpha03" implementation "androidx.emoji2:emoji2:$emojiVersion" implementation "androidx.emoji2:emoji2-views:$emojiVersion"
โมดูล
emoji2-views
มี คลาสย่อยของTextView
,Button
และEditText
ที่ใช้งานEmojiCompat
ไม่ใช้ ในแอปที่มีAppCompat
เนื่องจากมีการใช้แล้วEmojiCompat
ใน XML และโค้ด ไม่ว่าคุณจะใช้
TextView
,EditText
หรือButton
—ใช้EmojiTextView
,EmojiEditText
หรือEmojiButton
แทนactivity_main.xml <androidx.emoji2.widget.EmojiTextView ... /> <androidx.emoji2.widget.EmojiEditText ... /> <androidx.emoji2.widget.EmojiButton ... />
การรวมโมดูล
emoji2
ไว้ด้วย ระบบจะใช้ค่าเริ่มต้นของโปรแกรมที่ดาวน์โหลดได้ ผู้ให้บริการแบบอักษรเพื่อโหลดแบบอักษรอีโมจิ โดยอัตโนมัติหลังจากเริ่มต้นแอปได้ไม่นาน ยังไม่ได้ติดต่อ ต้องมีการกำหนดค่าเพิ่มเติมหากต้องการทดสอบการผสานรวม ให้เปิดแอปในอุปกรณ์ที่ใช้ Android 11 หรือ ต่ำลงและแสดงสตริงทดสอบต่อไปนี้ ตรวจสอบว่าอักขระทั้งหมด แสดงผลอย่างถูกต้อง
- 14.0: 🫠, 🫱🏼 🫲🏿, 🫰🏽
- 13.1: 😶 🌫️, 🧔🏻 ♀️, 🧑🏿 ❤️ 🧑🏾
- 13.0: 🥲 🥷🏿, 🐻 หน้าร้าน
- 12.1: 🧑🏻 🦰, 🧑🏿 🦯, 👩🏻 🤝 👩🏼
- 12.0: 🦩, 🦻🏿, 👩🏼 🤝 👩🏻
ใช้ EmojiCompat โดยไม่ใช้วิดเจ็ต
EmojiCompat
ใช้ EmojiSpan
เพื่อ
แสดงภาพที่ถูกต้อง ดังนั้นจึงต้องแปลง
CharSequence
ลงใน
ออบเจ็กต์ Spanned
รายการที่มี EmojiSpan
ออบเจ็กต์
คลาส EmojiCompat จะใช้เมธอด process()
ในการแปลง CharSequences
ลงใน Spanned
อินสแตนซ์ได้ หากใช้วิธีนี้ คุณสามารถเรียกใช้ process()
ใน
ในเบื้องหลังและแคชผลการค้นหา ซึ่งจะช่วยปรับปรุงประสิทธิภาพของแอป
Kotlin
val processed = EmojiCompat.get().process("neutral face \uD83D\uDE10")
Java
CharSequence processed = EmojiCompat.get().process("neutral face \uD83D\uDE10");
ใช้ EmojiCompat กับเครื่องมือแก้ไขวิธีการป้อนข้อมูล
คลาส EmojiCompat
ช่วยให้แป้นพิมพ์แสดงผลอีโมจิที่แอปรองรับได้
ที่พวกเขาโต้ตอบด้วย ตัวแก้ไขวิธีการป้อนข้อมูล
(IME) สามารถใช้
getEmojiMatch()
ในการตรวจสอบว่าอินสแตนซ์ของ EmojiCompat
สามารถแสดงผล
อีโมจิ วิธีนี้ต้องใช้ CharSequence
ของอีโมจิและแสดงผล true
หาก EmojiCompat
ตรวจพบและแสดงผลอีโมจิได้
แป้นพิมพ์จะตรวจสอบเวอร์ชันของ EmojiCompat
ที่แอปรองรับได้ด้วย
เพื่อกำหนดอีโมจิที่จะแสดงในจานสี หากต้องการตรวจสอบเวอร์ชัน ให้ทำดังนี้
แป้นพิมพ์จะค้นหาแป้นต่อไปนี้ใน
EditorInfo.extras
กลุ่มอีเมล:
EDITOR_INFO_METAVERSION_KEY
: แสดงถึงเวอร์ชันของข้อมูลเมตาของอีโมจิที่แอปใช้ หากคีย์นี้ ไม่มีอยู่ แสดงว่าแอปไม่ได้ใช้EmojiCompat
EDITOR_INFO_REPLACE_ALL_KEY
: หากมีคีย์และตั้งค่าเป็นtrue
แอปจะกำหนดค่าEmojiCompat
เพื่อแทนที่อีโมจิทั้งหมด แม้ว่าจะมีอยู่ในระบบก็ตาม
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีกำหนดค่าอินสแตนซ์ของ EmojiCompat
ใช้อีโมจิในมุมมองที่กำหนดเอง
หากแอปของคุณมีมุมมองที่กำหนดเอง
คลาสย่อยโดยตรงหรือโดยอ้อมของ TextView
เช่น Button
Switch
หรือ EditText
จากนั้นข้อมูลพร็อพเพอร์ตี้เหล่านั้นจะแสดง
พวกเขาจะต้องปรับใช้
EmojiCompat
กระบวนการจะแตกต่างกันไปขึ้นอยู่กับว่าแอปของคุณใช้ไลบรารี AppCompat
หรือไม่
เพิ่มมุมมองที่กำหนดเองสำหรับแอปด้วย AppCompat
หากแอปใช้ AppCompat
ให้ขยายการใช้งาน AppCompat
แทน
การใช้งานแพลตฟอร์ม ใช้ตารางต่อไปนี้เป็นแนวทางในการดำเนินการ
ขยายมุมมองใน AppCompat
:
แทนการต่อยอด... | ขยายเวลา |
---|---|
TextView
|
AppCompatTextView
|
EditText
|
AppCompatEditText
|
ToggleButton
|
AppCompatToggleButton
|
Switch
|
SwitchCompat
|
Button
|
AppCompatButton
|
CheckedTextView
|
AppCompatCheckedTextView
|
RadioButton
|
AppCompatRadioButton
|
CheckBox
|
AppCompatCheckBox
|
AutoCompleteTextView
|
AppCompatAutoCompleteTextView
|
MultiAutoCompleteTextView
|
AppCompatMultiAutoCompleteTextView
|
เพิ่มมุมมองที่กำหนดเองสำหรับแอปที่ไม่มี AppCompat
หากแอปไม่ได้ใช้ AppCompat
ให้ใช้ตัวช่วยการผสานรวมข้อมูลพร็อพเพอร์ตี้ใน
โมดูล emoji2-views-helper
ที่ออกแบบมาเพื่อใช้ในมุมมองที่กำหนดเอง เหล่านี้
เป็นผู้ช่วยที่ไลบรารี AppCompat
ใช้เพื่อให้การสนับสนุนอีโมจิ
ทำตามขั้นตอนต่อไปนี้เพื่อรองรับมุมมองที่กำหนดเองสำหรับแอปที่ไม่ได้ใช้
AppCompat
เพิ่มไลบรารี
emoji2-views-helper
:implementation "androidx.emoji2:emoji2-views-helper:$emojiVersion"
ทำตามวิธีการเพื่อรวม
EmojiTextViewHelper
หรือEmojiEditTextHelper
ในมุมมองที่กำหนดเองของแอปทดสอบการผสานรวมโดยการเปิดตัวแอปในอุปกรณ์ที่ใช้ Android 10 หรือต่ำกว่า และแสดงสตริงทดสอบต่อไปนี้ ตรวจสอบว่าอักขระทั้งหมด แสดงผลอย่างถูกต้อง
- 14.0: 🫠, 🫱🏼 🫲🏿, 🫰🏽
- 13.1: 😶 🌫️, 🧔🏻 ♀️, 🧑🏿 ❤️ 🧑🏾
- 13.0: 🥲 🥷🏿, 🐻 หน้าร้าน
- 12.1: 🧑🏻 🦰, 🧑🏿 🦯, 👩🏻 🤝 👩🏼
- 12.0: 🦩, 🦻🏿, 👩🏼 🤝 👩🏻
ฟีเจอร์เสริมสำหรับการจัดการอีโมจิ2
หลังจากใส่ไลบรารี emoji2
ในแอปแล้ว คุณสามารถเพิ่ม
ฟีเจอร์ที่อธิบายในส่วนนี้
กำหนดค่าอีโมจิ2 เพื่อใช้แบบอักษรหรือผู้ให้บริการแบบอักษรที่ดาวน์โหลดได้อื่น
หากต้องการกำหนดค่า emoji2
ให้ใช้แบบอักษรหรือผู้ให้บริการแบบอักษรที่ดาวน์โหลดได้รายอื่น ให้ทำดังนี้
ดังต่อไปนี้
ปิดใช้
EmojiCompatInitializer
ด้วยการเพิ่มค่าต่อไปนี้ลงในไฟล์ Manifest<provider android:name="androidx.startup.InitializationProvider" android:authorities="${applicationId}.androidx-startup" android:exported="false" tools:node="merge"> <meta-data android:name="androidx.emoji2.text.EmojiCompatInitializer" tools:node="remove" /> </provider>
ทำสิ่งใดสิ่งหนึ่งต่อไปนี้
ใช้การกำหนดค่าเริ่มต้นโดยการเรียกใช้
DefaultEmojiCompatConfiguration.create(context)
สร้างการกำหนดค่าของคุณเองเพื่อโหลดแบบอักษรจากแหล่งที่มาอื่นโดยใช้
EmojiCompat.Config
ชั้นเรียนนี้มีตัวเลือกมากมายในการแก้ไขEmojiCompat
ของคุณ ดังที่อธิบายไว้ในส่วนต่อไปนี้
แก้ไขลักษณะการทำงานของ EmojiCompat
คุณใช้อินสแตนซ์ของ EmojiCompat.Config
เพื่อแก้ไข EmojiCompat
ได้
พฤติกรรมของคุณ
ตัวเลือกการกำหนดค่าที่สำคัญที่สุดคือ
setMetadataLoadStrategy()
ซึ่งควบคุมเมื่อ EmojiCompat
โหลดแบบอักษร การโหลดแบบอักษรจะเริ่มทันทีที่
มีการเรียก EmojiCompat.load()
และการดำเนินการนี้จะทริกเกอร์การดาวน์โหลดที่จำเป็น
ระบบจะสร้างชุดข้อความสำหรับการดาวน์โหลดแบบอักษรเว้นแต่แอปของคุณจะมีให้
LOAD_STRATEGY_MANUAL
ให้คุณควบคุมได้ว่าจะเรียก EmojiCompat.load()
เมื่อใด และ
LOAD_STRATEGY_DEFAULT
ทำให้การโหลดเริ่มพร้อมกันในการเรียก
EmojiCompat.init()
แอปส่วนใหญ่ใช้ LOAD_STRATEGY_MANUAL
เพื่อให้ควบคุมชุดข้อความและเวลาได้
ของการโหลดแบบอักษร แอปต้องเลื่อนไปจนกว่าหน้าจอแรกจะแสดง
หลีกเลี่ยงการเปิดตัวเวลาในการตอบสนองของการเริ่มต้น EmojiCompatInitializer
ติดตามสิ่งนี้
ฝึกฝนและเลื่อนการโหลดแบบอักษรอีโมจิไปจนกว่าหน้าจอแรกจะกลับมาทำงานอีกครั้ง
ใช้วิธีการต่อไปนี้จากคลาสฐานเพื่อตั้งค่าด้านอื่นๆ ของ การกำหนดค่า:
setReplaceAll()
: กำหนดว่าEmojiCompat
จะแทนที่อีโมจิทั้งหมดที่พบด้วยอินสแตนซ์หรือไม่ ของEmojiSpan
โดยค่าเริ่มต้น เมื่อEmojiCompat
อนุมานว่าระบบสามารถ แสดงผลอีโมจิ โดยไม่ได้แทนที่อีโมจินั้น เมื่อตั้งค่าเป็นtrue
EmojiCompat
จะแทนที่อีโมจิทั้งหมดด้วยวัตถุEmojiSpan
setEmojiSpanIndicatorEnabled()
: ระบุว่าEmojiCompat
จะแทนที่อีโมจิด้วยEmojiSpan
หรือไม่ ออบเจ็กต์ เมื่อตั้งค่าเป็นtrue
EmojiCompat
จะวาดพื้นหลังสำหรับEmojiSpan
วิธีการนี้มักใช้สำหรับการแก้ไขข้อบกพร่องเป็นหลักsetEmojiSpanIndicatorColor
: ตั้งค่าสีเพื่อระบุEmojiSpan
ค่าเริ่มต้นคือGREEN
registerInitCallback()
: แจ้งแอปเกี่ยวกับสถานะของการเริ่มต้นEmojiCompat
เพิ่ม Listener การเริ่มต้น
ชั้นเรียน EmojiCompat
และ EmojiCompat.Config
จะมี
registerInitCallback()
และ
unregisterInitCallback()
เมธอดในการลงทะเบียนและยกเลิกการลงทะเบียน Callback ของการเริ่มต้น แอปของคุณใช้ข้อมูลเหล่านี้
การเรียกกลับเพื่อรอจนกว่า EmojiCompat
จะเริ่มทำงานก่อนที่คุณจะประมวลผลอีโมจิ
ชุดข้อความในพื้นหลังหรือในมุมมองที่กำหนดเอง
หากต้องการใช้วิธีการเหล่านี้ ให้สร้างอินสแตนซ์ของ
EmojiCompat.InitCallback
เรียกใช้เมธอดเหล่านี้และส่งผ่านในกรณีของ
EmojiCompat.InitCallback
ชั้นเรียน เมื่อการเริ่มต้นเสร็จสมบูรณ์แล้ว
EmojiCompat
ชั้นเรียนโทรหา
onInitialized()
ถ้าเริ่มต้นไลบรารีไม่ได้ คลาส EmojiCompat
จะเรียกเมธอด
onFailed()
หากต้องการตรวจสอบสถานะการเริ่มต้น
getLoadState()
เมธอดนี้จะแสดงค่าใดค่าหนึ่งต่อไปนี้
LOAD_STATE_LOADING
LOAD_STATE_SUCCEEDED
,
หรือ
LOAD_STATE_FAILED
รองรับแบบอักษรที่มาพร้อมอีโมจิ2
คุณใช้อาร์ติแฟกต์ emoji2-bundled
เพื่อรวมแบบอักษรอีโมจิในแอปได้
แต่เนื่องจากแบบอักษร NotoColorEmoji
มีขนาดเกิน 10 MB เราจึง
ขอแนะนำให้แอปใช้แบบอักษรที่ดาวน์โหลดได้เมื่อทำได้
อาร์ติแฟกต์ emoji2-bundled
มีไว้สำหรับแอปในอุปกรณ์ที่ไม่รองรับ
แบบอักษรที่ดาวน์โหลดได้
หากต้องการใช้อาร์ติแฟกต์ emoji2-bundled
ให้ทำดังนี้
รวมอาร์ติแฟกต์
emoji2-bundled
และemoji2
:implementation "androidx.emoji2:emoji2:$emojiVersion" implementation "androidx.emoji2:emoji2-bundled:$emojiVersion"
กำหนดค่า
emoji2
เพื่อใช้การกำหนดค่าแบบรวมกลุ่มดังนี้Kotlin
EmojiCompat.init(BundledEmojiCompatConfig(context))
Java
EmojiCompat.init(new BundledEmojiCompatConfig(context));
ทดสอบการผสานรวมโดยทําตามขั้นตอนก่อนหน้าเพื่อรวม
emojicompat
ที่มีหรือไม่มีAppCompat
ตรวจสอบว่าสตริงทดสอบ แสดงอย่างถูกต้อง- 14.0: 🫠, 🫱🏼 🫲🏿, 🫰🏽
- 13.1: 😶 🌫️, 🧔🏻 ♀️, 🧑🏿 ❤️ 🧑🏾
- 13.0: 🥲 🥷🏿, 🐻 หน้าร้าน
- 12.1: 🧑🏻 🦰, 🧑🏿 🦯, 👩🏻 🤝 👩🏼
- 12.0: 🦩, 🦻🏿, 👩🏼 🤝 👩🏻
ผลกระทบของการกำหนดค่า EmojiCompat อัตโนมัติ
ระบบจะใช้การกำหนดค่าเริ่มต้นโดยใช้ไลบรารีการเริ่มต้น
EmojiCompatInitializer
และ
DefaultEmojiCompatConfig
หลังจากกิจกรรมแรกกลับมาทํางานในแอปอีกครั้ง อีโมจิการเริ่มต้นกำหนดเวลา กำลังโหลดแบบอักษร การหน่วงเวลาสั้นๆ นี้จะทำให้แอปของคุณแสดงเนื้อหาเริ่มต้นได้โดยไม่ต้อง เวลาในการตอบสนองที่อาจเกิดขึ้นเนื่องจากการโหลดแบบอักษรในชุดข้อความเบื้องหลัง
DefaultEmojiCompatConfig
จะมองหาแบบอักษรที่ดาวน์โหลดได้ซึ่งระบบติดตั้งไว้
ผู้ให้บริการที่ใช้อินเทอร์เฟซ EmojiCompat
เช่น Google Play
บริการต่างๆ ในอุปกรณ์ที่ขับเคลื่อนโดยบริการ Google Play การดำเนินการนี้จะโหลดแบบอักษรโดยใช้
บริการ Google Play
โปรแกรมเริ่มต้นสร้างชุดข้อความเบื้องหลังเพื่อโหลดแบบอักษรและแบบอักษรอีโมจิ
การดาวน์โหลดอาจใช้เวลาสูงสุด 10 วินาทีก่อนที่จะหมดเวลา หลังแบบอักษรคือ
ดาวน์โหลดแล้ว จะใช้เวลาประมาณ 150 มิลลิวินาทีบนเธรดเบื้องหลังเพื่อ
เริ่มต้น EmojiCompat
เลื่อนการเริ่มต้น EmojiCompat
แม้ว่าคุณจะปิดใช้
EmojiCompatInitializer
หากคุณกำหนดค่าด้วยตนเอง
EmojiCompat
โทรหา EmojiCompat.load()
หลังจากจอแสดงผลแสดงขึ้น
หน้าจอแรกของแอปเพื่อหลีกเลี่ยงการแย่งชิงพื้นหลัง
การโหลดหน้าจอ
หลังจากโหลด EmojiCompat
จะใช้ RAM ประมาณ 300 KB ในการเก็บอีโมจิ
ข้อมูลเมตา