Emoji2
| Letzte Aktualisierung | Stabile Version | Releasekandidat | Beta-Release | Alpha-Release | 
|---|---|---|---|---|
| 10. September 2025 | 1.6.0 | - | - | - | 
Abhängigkeiten deklarieren
Wenn Sie eine Abhängigkeit von Emoji2 hinzufügen möchten, müssen Sie Ihrem Projekt das Google Maven-Repository hinzufügen. Weitere Informationen finden Sie im Maven-Repository von Google.
Fügen Sie der Datei build.gradle für Ihre App oder Ihr Modul die Abhängigkeiten für die benötigten Artefakte hinzu:
Cool
dependencies { def emoji2_version = "1.6.0" implementation "androidx.emoji2:emoji2:$emoji2_version" implementation "androidx.emoji2:emoji2-views:$emoji2_version" implementation "androidx.emoji2:emoji2-views-helper:$emoji2_version" }
Kotlin
dependencies { val emoji2_version = "1.6.0" implementation("androidx.emoji2:emoji2:$emoji2_version") implementation("androidx.emoji2:emoji2-views:$emoji2_version") implementation("androidx.emoji2:emoji2-views-helper:$emoji2_version") }
Weitere Informationen zu Abhängigkeiten finden Sie unter Build-Abhängigkeiten hinzufügen.
Feedback
Ihr Feedback hilft uns, Jetpack zu verbessern. Lassen Sie es uns wissen, wenn Sie neue Probleme entdecken oder Ideen zur Verbesserung dieser Bibliothek haben. Sehen Sie sich die vorhandenen Probleme in dieser Bibliothek an, bevor Sie ein neues erstellen. Sie können für ein vorhandenes Problem abstimmen, indem Sie auf die Schaltfläche mit dem Stern klicken.
Weitere Informationen finden Sie in der Dokumentation zum Issue Tracker.
Emoji2-Emoji-Auswahl – Version 1.0
Version 1.5.0
4. September 2024
androidx.emoji2:emoji2-*:1.5.0 wird veröffentlicht. Version 1.5.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.4.0
- Unterstützung von Emoji 15.1 und bidirektionaler Emoji-Auswahl. Durch einfaches Klicken auf den bidirektionalen Schalter können Nutzer zwischen Emojis, die nach links oder rechts ausgerichtet sind, wechseln.
- Unterstützung der Emoji-Auswahl mit mehreren Hauttönen. Wenn Sie lange auf Paar-Emojis drücken, wird eine Auswahl für Mehrpersonen-Emojis für den Nullstatus angezeigt. Wenn der Nutzer auf die linke Hälfte eines Emojis tippt, wird die Emoji-Vorschau unten rechts entsprechend aktualisiert. Wenn der Nutzer beide Hälften eines Emojis auswählt, wird in der Emoji-Vorschau rechts unten das gesamte Emoji angezeigt. Der Nutzer kann es dann eingeben.
Version 1.0.0-alpha03
8. März 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha03 wird veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Fehlerkorrekturen
- Unnötige Ressourcen wurden entfernt und die Bibliotheksgröße wurde um etwa 0,3 MB reduziert.
Version 1.0.0-alpha02
22. Februar 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha02 wird veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
- Es wurde eine neue API für Java-Clients hinzugefügt, damit aktuelle Emojis bereitgestellt werden können. (I39d10)
Fehlerkorrekturen
- Emoji-Ressourcen aktualisieren, um Emoji 15.0 zu unterstützen (Ib4eb3)
- Wenn Sie ein Emoji aus dem Pop-up-Fenster auswählen, werden alle identischen Emojis (mit Ausnahme der letzten Emoji-Zeile) auf das neu ausgewählte Emoji aktualisiert. Das Emoji wird auch angesagt, wenn darauf geklickt wird. (I892c6)
- Warte, bis „emojicompat“ geladen wurde, bevor du die EmojiPickerViewanzeigst. (I29e03)
Version 1.0.0-alpha01
25. Januar 2023
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha01 wird veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Neue Funktionen
- Wir haben eine Emoji-Auswahl eingeführt, die für eine einheitliche Nutzererfahrung mit den neuesten Emojis auf OEM-Geräten und in Apps mit Android-Betriebssystem sorgt. Sie bietet die neueste Emoji-Unterstützung und eine Emoji-Auswahl-Benutzeroberfläche mit Hauttonvarianten und Unterstützung für Emoji-Kompatibilität.
API-Änderungen
- Die Klasse EmojiPickerViewwurde eingeführt, die aktuelle Emojis in einer vertikal scrollbaren Ansicht mit einem anklickbaren horizontalen Header bereitstellt.
- Die Spalten des Emoji-Auswahlfelds können über das XML-Attribut emojiGridColumnsoder die FunktionsetEmojiGridColumns()festgelegt werden.
- Die Zeilen des Emoji-Auswahlfelds können über das XML-Attribut emojiGridRowsoder die FunktionsetEmojiGridRows()festgelegt werden.
- Der Listener für ausgewählte Emojis kann über setOnEmojiPickedListener()festgelegt werden. Er wird benachrichtigt, wenn der Nutzer auf ein Emoji klickt.
- Der zuletzt verwendete Emoji-Anbieter kann mit setRecentEmojiProvider()angegeben werden. Dies ist eine optionale Funktion. Wenn der Anbieter für zuletzt verwendete Emojis nicht festgelegt ist, wird von der Bibliothek ein Standardanbieter verwendet. Das Standardverhalten ist so definiert: 1) Alle ausgewählten Emojis werden auf App-Ebene in den gemeinsamen Einstellungen gespeichert. 2. In der Auswahl werden maximal drei Zeilen mit ausgewählten Emojis in umgekehrter chronologischer Reihenfolge angezeigt.
- Die Klasse EmojiViewItemwurde eingeführt, die das angezeigte Emoji und seine Emoji-Varianten enthält.
- Die RecentEmojiProvider-Schnittstelle wurde eingeführt, die implementiert werden kann, um eine Liste der zuletzt verwendeten Emojis bereitzustellen. DerrecentEmojiProviderist für die Bereitstellung von Emojis in der Kategorie „Kürzlich verwendet“ verantwortlich.
Version 1.6
Version 1.6.0
10. September 2025
androidx.emoji2:emoji2-*:1.6.0 wird veröffentlicht. Version 1.6.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.5.0:
- Unterstützt Emoji 16.0
- Fügen Sie der Inhaltsbeschreibung von Emojis das Suffix „Emoji“ hinzu.
Fehlerkorrekturen
- Verschieben des Standard-minSdkvon API 21 zu API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
Version 1.6.0-rc01
13. August 2025
androidx.emoji2:emoji2-*:1.6.0-rc01 wird veröffentlicht. Version 1.6.0-rc01 enthält diese Commits.
Neue Funktionen
- Unterstützung von Emoji 16.0 und Hinzufügen des Suffix „emoji“ zur Inhaltsbeschreibung.
API-Änderungen
- Entfernen veralteter @RequiresApi(21)-Anmerkungen (Ic4792)
- Entfernen veralteter @RequiresApi(21)-Annotationen (I9103b)
Version 1.6.0-beta01
2. Juli 2025
androidx.emoji2:emoji2-*:1.6.0-beta01 wird veröffentlicht. Version 1.6.0-beta01 enthält diese Commits.
Neue Funktionen
- Unterstützung von Emoji 16.0-Updates
- Fügen Sie der Inhaltsbeschreibung das Suffix „Emoji“ hinzu, damit wir in allen Emoji-Auswahl-Apps ein einheitliches Verhalten in Bezug auf die Barrierefreiheit haben.
Version 1.6.0-alpha01
4. Juni 2025
androidx.emoji2:emoji2-*:1.6.0-alpha01 wird veröffentlicht. Version 1.6.0-alpha01 enthält diese Commits.
Neue Funktionen
- Aktualisierung der Daten für Emoji 16.0 (Ifc878)
- Suffix „Emoji“ zur Inhaltsbeschreibung hinzufügen
Fehlerkorrekturen
- In dieser Bibliothek werden jetzt JSpecify-Nullable-Annotationen verwendet, die typbezogen sind. Kotlin-Entwickler sollten die folgenden Compiler-Argumente verwenden, um die korrekte Verwendung zu erzwingen: -Xjspecify-annotations=strict,-Xtype-enhancement-improvements-strict-mode(Id07e7, b/326456246)
Version 1.5
Version 1.5.0
4. September 2024
androidx.emoji2:emoji2-*:1.5.0 wird veröffentlicht. Version 1.5.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.4.0
- Unterstützung von Emoji 15.1 und bidirektionaler Emoji-Auswahl. Durch einfaches Klicken auf den bidirektionalen Schalter können Nutzer zwischen Emojis, die nach links oder rechts ausgerichtet sind, wechseln.
- Unterstützung der Emoji-Auswahl mit mehreren Hauttönen. Wenn Sie lange auf Paar-Emojis drücken, wird eine Auswahl für Mehrpersonen-Emojis für den Nullstatus angezeigt. Wenn der Nutzer auf die linke Hälfte eines Emojis tippt, wird die Emoji-Vorschau unten rechts entsprechend aktualisiert. Wenn der Nutzer beide Hälften eines Emojis auswählt, wird in der Emoji-Vorschau rechts unten das gesamte Emoji angezeigt. Der Nutzer kann es dann eingeben.
Version 1.5.0-rc01
21. August 2024
androidx.emoji2:emoji2-*:1.5.0-rc01 wird veröffentlicht. Version 1.5.0-rc01 enthält diese Commits.
Neue Funktionen
- Unterstützung von Emoji 15.1 und bidirektionaler Emoji-Auswahl. Durch einfaches Klicken auf den bidirektionalen Schalter können Nutzer zwischen der nach links und der nach rechts ausgerichteten Version von Emojis wechseln.
- Unterstützung der Emoji-Auswahl mit mehreren Hauttönen. Wenn Sie lange auf Paar-Emojis drücken, wird eine Auswahl für Mehrpersonen-Emojis für den Nullstatus angezeigt. Wenn der Nutzer auf die linke Hälfte eines Emojis tippt, wird die Emoji-Vorschau unten rechts entsprechend aktualisiert. Wenn der Nutzer beide Hälften eines Emojis auswählt, wird in der Vorschau das gesamte Emoji angezeigt und der Nutzer kann es dann eingeben.
Fehlerkorrekturen
- Die manuelle Beschreibung des Zugriffs auf neue Plattform-APIs wurde entfernt, da dies automatisch über die API-Modellierung erfolgt, wenn R8 mit AGP 7.3 oder höher (z.B. R8-Version 3.3) verwendet wird, und für alle Builds, wenn AGP 8.1 oder höher (z.B. D8-Version 8.1) verwendet wird. Clients, die AGP nicht verwenden, wird empfohlen, auf D8-Version 8.1 oder höher zu aktualisieren. Weitere Details findest du in diesem Artikel. (If6b4c, b/345472586)
- Die Tab-Auswahl und die Aktualisierung der Indikatoren von EmojiPickerViewerfolgen mit einer Verzögerung von einem Klick. (146b02, b/288261054)
- Die Tab-Auswahl und die Anzeige von EmojiPickerViewfunktionieren nicht. (5e1f14, b/273883688)
Version 1.5.0-beta01
10. Juli 2024
androidx.emoji2:emoji2-*:1.5.0-beta01 wird veröffentlicht. Version 1.5.0-beta01 enthält diese Commits.
Neue Funktionen
- Unterstützung von Emoji 15.1 und bidirektionale Emoji-Auswahl.
- Unterstützung der Neugestaltung der Auswahl mehrerer Hauttöne.
Fehlerkorrekturen
- Die Tab-Auswahl und die Aktualisierung der Indikatoren von EmojiPickerViewerfolgen mit einer Verzögerung von einem Klick. (146b02, b/288261054)
- Die Tab-Auswahl und die Anzeige von EmojiPickerViewfunktionieren nicht. (5e1f14, b/273883688)
Version 1.5.0-alpha01
13. Dezember 2023
androidx.emoji2:emoji2-*:1.5.0-alpha01 wird veröffentlicht. Version 1.5.0-alpha01 enthält diese Commits.
Neue Funktionen
- emoji2-bundledenthält eine aktualisierte Emoji-Schriftart zur Unterstützung von Emoji 15.1.
API-Änderungen
- Fügen Sie Executors hinzu, um den Callback-Thread für InitCallbackzu steuern. (I32b67)
- BundledEmojiCompatConfigverwendet jetzt einen Executor, um das Laden von Threads zu steuern. (I00e81)
Version 1.4
Version 1.4.0
9. August 2023
androidx.emoji2:emoji2-*:1.4.0 wird veröffentlicht. Version 1.4.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.3.0
- Emoji-Auswahl eingeführt. Weitere Informationen finden Sie in der Entwicklerdokumentation.
Version 1.4.0-rc01
26. Juli 2023
androidx.emoji2:emoji2-*:1.4.0-rc01 wird veröffentlicht. Version 1.4.0-rc01 enthält diese Commits.
API-Änderungen
- Einführung der Liste registerSource(Iae92f)
- Feedback des API Council: TransitionManager.seekTo()wurde increateSeekController()umbenannt. Bitte passe den vorherigen Kommentar zum Hinzufügen vonTransitionManager.seekTo()zuTransitionManager.createSeekController()an. (Idbeb1)
- ExerciseRouteResultwurde hinzugefügt. Das ist nicht die Oberklasse für- Data,- NoDataund- ConsentRequiredStates.- ExerciseRoutewurde als eigenständige Klasse hinzugefügt, die Standortdaten für die Route enthält. (I22eed)
- PagerLayoutInfowurde mit Informationen eingeführt, die nach einem Maßstab-Durchlauf in Pager erhoben wurden. Außerdem wurde PageInfo eingeführt, die Informationen zu einer einzelnen gemessenen Seite in Pager. (Iad003, b/283098900)
Fehlerkorrekturen
- Wir haben die Farben für Button,IconButtonundTextButtongemäß Material3-Design aktualisiert. Die semantische Rolle fürButton,IconButtonundTextButtonkann jetzt mitModifier.semanticsüberschrieben werden. (Ib2495)
- Die Tab-Auswahl und die Aktualisierung der Indikatoren von EmojiPickerViewwaren um einen Klick verzögert. (I4db04)
- FileNotFoundExceptionbeim Anzeigen der Emoji-Auswahl (I353e4)
- WindowManager.BadTokenExceptionbei Verwendung von- EmojiPickerViewabfangen (I0a144)
Version 1.4.0-beta05
7. Juni 2023
androidx.emoji2:emoji2-*:1.4.0-beta05 wird veröffentlicht. Version 1.4.0-beta05 enthält diese Commits.
Fehlerkorrekturen
- Ein Fehler wurde behoben, der in Version 1.3 eingeführt wurde und dazu führte, dass MetricsAffectingSpanswieRelativeSizeSpanzweimal angewendet wurden. Einmal während des Textlayouts und noch einmal innerhalb vonEmojiSpan.draw. Das Ergebnis war ein falsch dimensionierter Draw, der sichtbar war, wenn einer der Textgrößenparameter durch den Span geändert wurde. (b/283208650)
Version 1.4.0-beta04
24. Mai 2023
androidx.emoji2:emoji2-*:1.4.0-beta04 wird veröffentlicht. Version 1.4.0-beta04 enthält diese Commits.
In dieser Version wird ein Fehler behoben, der seit Version 1.0 vorhanden war. Bei Ansichten mit einem nicht primären Handler wurde eine Ausnahme ausgelöst, wenn versucht wurde, die Emoji-Spans nach dem Laden der Schriftart zu aktualisieren. Wenn Sie von diesem Fehler betroffen sind, gibt es keine Problemumgehung. Führen Sie ein Upgrade auf diese oder eine neuere Version durch.
Fehlerkorrekturen
- EmojiCompat-Initialisierungs-Callbacks verwenden jetzt den Handler aus jeder Ansicht und berücksichtigen Ansichten, die nicht im Hauptthread ausgeführt werden. (Iccbcf)
Version 1.4.0-beta03
10. Mai 2023
androidx.emoji2:emoji2-*:1.4.0-beta03 wird veröffentlicht. Version 1.4.0-beta03 enthält diese Commits.
Fehlerkorrekturen
- Der Fehler, der zum Absturz der verschachtelten Pop‑up-Ansicht der Emoji-Auswahl geführt hat, wurde behoben. (0acc8e)
- Geben Sie frühe Ausnahmen in EmojiCompat getEmojiStart/getEmojiEndaus. (26177f)
Version 1.4.0-beta02
19. April 2023
androidx.emoji2:emoji2-*:1.4.0-beta02 wird veröffentlicht. Version 1.4.0-beta02 enthält diese Commits.
Fehlerkorrekturen
- Lint-Baselines aktualisieren (Iaa212)
Version 1.4.0-beta01
5. April 2023
androidx.emoji2:emoji2-*:1.4.0-beta01 wird veröffentlicht. Version 1.4.0-beta01 enthält diese Commits.
Neue Funktionen
androidx.emoji2:emoji2-emojipicker
Die Emoji-Auswahl ist eine UI-Lösung mit einem modernen Look und aktuellen Emojis, die sich einfach bedienen lässt. Nutzer können Emojis und ihre Varianten durchsuchen und auswählen oder aus ihren zuletzt verwendeten Emojis auswählen. Mit dieser Bibliothek können Apps verschiedener OEMs ihren Nutzern eine inklusive und einheitliche Emoji-Auswahl bieten, ohne dass die Entwickler ihre eigene Emoji-Auswahl von Grund auf neu erstellen und pflegen müssen.
Aktuelle Emojis
Jedes Jahr werden neue Emojis veröffentlicht. Wir werden sie nach und nach in die Emoji-Auswahl aufnehmen. Um die Abwärtskompatibilität zu gewährleisten, führen wir intern eine genaue Prüfung der Emoji-Renderbarkeit durch, um Tofu-Zeichen zu vermeiden. So wird sichergestellt, dass die Bibliothek mit mehreren Android-Versionen und Geräten kompatibel ist.
Fixierte Varianten
Wenn Sie ein Emoji lange gedrückt halten, wird ein Menü mit Varianten wie verschiedenen Geschlechtern oder Hauttönen angezeigt. Die ausgewählte Variante wird in der Emoji-Auswahl gespeichert und die zuletzt ausgewählte Variante wird im Hauptbereich verwendet. Mit dieser Funktion können Nutzer ihre bevorzugten Emoji-Varianten mit nur einem Tippen senden.
Zuletzt verwendete Emojis
Der RecentEmojiProvider ist für die Bereitstellung von Emojis in der Kategorie „Kürzlich verwendet“ verantwortlich. Die Bibliothek hat einen standardmäßigen Anbieter für zuletzt verwendete Emojis, der den häufigsten Anwendungsfall abdeckt:
- Alle ausgewählten Emojis werden auf App-Ebene in den gemeinsamen Einstellungen gespeichert.
- In der Auswahl werden maximal drei Zeilen mit ausgewählten Emojis angezeigt, die dedupliziert und in umgekehrter chronologischer Reihenfolge sortiert sind.
Wenn dieses Standardverhalten ausreicht, müssen Sie die Methode setRecentEmojiProvider() nicht festlegen.
Mit EmojiCompat arbeiten
Wenn die App eine EmojiCompat-Instanz hat, wird sie in der Emoji-Auswahl verwendet, um so viele Emojis wie möglich zu rendern. Wenn EmojiCompat deaktiviert ist, funktioniert die Emoji-Auswahl weiterhin einwandfrei.
Bibliothek verwenden
Wenn ein App-Entwickler die Bibliothek verwenden möchte, sollte er
- Importieren Sie - androidx.emoji2:emojipicker:$versionin- build.gradle.- dependencies { implementation "androidx.emoji2:emojipicker:$version" }
- Blähen Sie die Ansicht der Emoji-Auswahl auf und legen Sie optional - emojiGridRowsund- emojiGridColumnsbasierend auf der gewünschten Größe der einzelnen Emoji-Zellen fest.- Sie können sie auch nicht festlegen. Der Standardwert ist 9 emojiGridColumns. Die Zeilen werden anhand der Höhe der übergeordneten Ansicht undemojiGridColumnsberechnet.
- Sie können emojiGridRowsals Gleitkommazahl festlegen, um anzugeben, dass beim Scrollen in XML weitere Emojis angezeigt werden.
 - <androidx.emoji2.emojipicker.EmojiPickerView android:id="@+id/emoji_picker" android:layout_width="match_parent" android:layout_height="match_parent" app:emojiGridColumns="9" />
- Sie können sie auch nicht festlegen. Der Standardwert ist 9 
im Code
    val emojiPickerView = EmojiPickerView(context).apply {
        emojiGridColumns = 15
        layoutParams = ViewGroup.LayoutParams(
            ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.MATCH_PARENT
        )
    }
    findViewById<ViewGroup>(R.id.emoji_picker_layout).addView(emojiPickerView)
- Wenn Sie die ausgewählten Emojis an ein EditText-Element anhängen möchten, verwenden Sie - setOnEmojiPickedListener()- emojiPickerView.setOnEmojiPickedListener { findViewById<EditText>(R.id.edit_text).append(it.emoji) }
- Optional können Sie - RecentEmojiProviderfestlegen. Eine Beispielimplementierung finden Sie in der Beispiel-App.
- Sie können die Stile optional anpassen. Erstellen Sie einen eigenen Stil, um allgemeine Designattribute zu überschreiben und den Stil auf das - EmojiPickerViewanzuwenden. Wenn Sie beispielsweise- colorControlNormalüberschreiben, ändert sich die Farbe des Kategorie-Symbols.- <style name="CustomStyle" > <item name="colorControlNormal">#FFC0CB</item> </style> <androidx.emoji2.emojipicker.EmojiPickerView android:id="@+id/emoji_picker" android:layout_width="match_parent" android:layout_height="match_parent" android:theme="@style/CustomStyle" app:emojiGridColumns="9" />
Eine Beispielimplementierung finden Sie in der Beispiel-App.
Eine vollständige API-Oberfläche finden Sie hier.
Beispiel-App
Diese Beispiel-App demonstriert grundlegende Anwendungsfälle sowie die folgenden zusätzlichen Szenarien:
- Das Layout der Ansicht wurde neu erstellt, da emojiGridRowsundemojiGridColumnszurückgesetzt wurden.
- Der Anbieter für zuletzt verwendete Emojis wird überschrieben, um nach Häufigkeit zu sortieren.
- Stilanpassung:
API-Änderungen
Die Emoji Picker-Bibliothek wurde mit den folgenden neuen APIs aktualisiert:
- Die EmojiPickerView-Klasse, die aktuelle Emojis in einer vertikal scrollbaren Ansicht mit einem anklickbaren horizontalen Header bereitstellt.
- Die Anzahl der Spalten und Zeilen im Emoji-Auswahlfeld kann über die XML-Attribute emojiGridColumnsundemojiGridRowsoder die MethodensetEmojiGridColumns()undsetEmojiGridRows()festgelegt werden.
- Die Möglichkeit, einen Listener für ausgewählte Emojis über die Methode setOnEmojiPickedListener()festzulegen. Der Listener wird benachrichtigt, wenn der Nutzer auf ein Emoji klickt.
- Die Möglichkeit, über die Methode setRecentEmojiProvider()einen aktuellen Emoji-Anbieter anzugeben. Dies ist eine optionale Funktion. Wenn der Anbieter für zuletzt verwendete Emojis nicht festgelegt ist, wird von der Bibliothek ein Standardanbieter verwendet. Das Standardverhalten ist so definiert:- Alle ausgewählten Emojis werden auf App-Ebene in den gemeinsamen Einstellungen gespeichert.
- In der Auswahl werden maximal drei Zeilen mit ausgewählten Emojis in umgekehrter chronologischer Reihenfolge angezeigt.
 
- Die Klasse EmojiViewItem, die das angezeigte Emoji und seine Varianten enthält.
- Die RecentEmojiProvider-Schnittstelle, die implementiert werden kann, um eine Liste der zuletzt verwendeten Emojis bereitzustellen. DerrecentEmojiProviderist für die Bereitstellung von Emojis in der Kategorie „Kürzlich verwendet“ verantwortlich.
- Die RecentEmojiAsyncProvider-Schnittstelle, die implementiert werden kann, um eine Liste der zuletzt verwendeten Emojis bereitzustellen. DerRecentEmojiAsyncProviderist für die Bereitstellung von Emojis in der Kategorie „Kürzlich verwendet“ verantwortlich. Diese Schnittstelle entsprichtRecentEmojiProvider, mit der Clients diegetRecentEmojiListAsync()-Methode überschreiben können, um aktuelle Emojis bereitzustellen.
- Die Klasse RecentEmojiProviderAdapter, die ein Adapter fürRecentEmojiAsyncProviderist undRecentEmojiProviderimplementiert.
Version 1.4.0-alpha01
22. März 2023
androidx.emoji2:emoji2-*:1.4.0-alpha01 wird veröffentlicht. Version 1.4.0-alpha01 enthält diese Commits.
Fehlerkorrekturen
- Tests korrigieren, Flake-Tests deaktivieren und Bereinigungen durchführen.
Version 1.3
Version 1.3.0
22. März 2023
androidx.emoji2:emoji2-*:1.3.0 wird veröffentlicht. Version 1.3.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.2.0
- Mit dieser Version kann die Emoji2-Integration für Compose Foundation 1.4.0und höher aktiviert werden.
- Außerdem sind Funktionen zum Ersetzen von EmojiSpansdurch benutzerdefinierten Zeichencode sowie Unterstützung für auf Android definierte Emoji-Ausschlüsse möglich.
Version 1.3.0-rc01
8. März 2023
androidx.emoji2:emoji2-*:1.3.0-rc01 wird veröffentlicht. Version 1.3.0-rc01 enthält diese Commits.
Neue Funktionen
- Diese Version unterstützt die Integration von Emoji2 Compose.
API-Änderungen
- Spans für benutzerdefinierten Zeichencode ersetzen
- Systemausschlüsse abfragen
Fehlerkorrekturen
- Außerdem wurde ein Fehler behoben, bei dem Hintergrundspannen nicht korrekt hinter EmojiSopansangewendet wurden.
Version 1.3.0-beta03
23. Februar 2023
androidx.emoji2:emoji2-bundled:1.3.0-beta03, androidx.emoji2:emoji2-views:1.3.0-beta03 und androidx.emoji2:emoji2-views-helper:1.3.0-beta03 sind veröffentlicht. 
22. Februar 2023
androidx.emoji2:emoji2:1.3.0-beta03 wird veröffentlicht. Version 1.3.0-beta03 enthält diese Commits.
Neue Funktionen
- Keine Änderungen Mit dieser Version wird die Integration von Compose vorbereitet.
Version 1.3.0-beta02
8. Februar 2023
androidx.emoji2:emoji2-*:1.3.0-beta02 wird veröffentlicht. Version 1.3.0-beta02 enthält diese Commits.
Neue Funktionen
- In diesem Release wird die Unterstützung für die Compose-Integration stabilisiert.
Version 1.3.0-beta01
25. Januar 2023
androidx.emoji2:emoji2-*:1.3.0-beta01 wird veröffentlicht. Version 1.3.0-beta01 enthält diese Commits.
Neue Funktionen
- Systemausschlüsse abfragen
- Ersetzen der Spannen für benutzerdefinierten Zeichencode.
- Außerdem wurde ein Fehler behoben, bei dem Hintergrundspannen nicht korrekt hinter EmojiSopansangewendet wurden.
- In dieser Version werden APIs hinzugefügt, die für die Unterstützung von EmojiCompatin Compose erforderlich sind. Die Unterstützung für das Verfassen von Emojis wird in einer der nächsten Versionen erwartet.
Version 1.3.0-alpha01
11. Januar 2023
androidx.emoji2:emoji2-*:1.3.0-alpha01 wird veröffentlicht. Version 1.3.0-alpha01 enthält diese Commits.
Neue APIs für Interaktionen auf niedriger Ebene
- Systemausschlüsse abfragen
- Spans für benutzerdefinierten Zeichencode ersetzen
- Außerdem wurde ein Fehler behoben, bei dem Hintergrundspannen nicht korrekt hinter EmojiSopansangewendet wurden.
- In dieser Version werden APIs hinzugefügt, die für die Unterstützung von EmojiCompatin Compose erforderlich sind. Die Unterstützung für das Verfassen von Emojis wird in einer der nächsten Versionen erwartet.
API-Änderungen
- Die Möglichkeit, Systemausschlüsse abzufragen, wurde TypefaceEmojiRasterizerhinzugefügt. (I5653e)
- Die neue API EmojiCompat.SpanFactorywurde hinzugefügt, um das Standardverhalten vonEmojiSpandurch benutzerdefinierten Code für das Zeichnen und Anpassen der Größe zu ersetzen. (Ib69d9)
- EmojiCompatin Compose hinzugefügt (I96f37, b/139326806)
Fehlerkorrekturen
- Emoji2 zeichnet jetzt Hintergründe aus BackgroundSpankorrekt. (Ide6a8, b/230525134)
- AppCompat-APIs für 1.5.0-beta01 fertigstellen (I2a43d, b/236866227)
Version 1.2
Version 1.2.0
10. August 2022
androidx.emoji2:emoji2-*:1.2.0 wird veröffentlicht. Version 1.2.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.1.0
Dies ist ein Bugfix-Release. Seit Version 1.1.0 wurden keine neuen Funktionen oder APIs hinzugefügt.
Bei Apps, die PrecomputedText oder TextView.setText(char[]) verwenden, sollte jedoch ein Upgrade auf diese Version priorisiert werden.
Folgende Fehler wurden behoben:
- Emoji2fügt- PrecomputedTextEmojis hinzu, indem das zuvor berechnete Textlayout verworfen wird. (I47d06, b/211231958)
- Backport des Editor-Absturz-Fix von Android P auf EditText, das für die Verwendung von Emoji2 konfiguriert ist. (Ifd709, b/216891011)
- Ein Absturz wurde behoben, der auftrat, wenn emoji2 die Schriftart geladen hat und TextView.setText(char[])verwendet wurde. (Id511e, b/206859724)
Version 1.2.0-rc01
27. Juli 2022
androidx.emoji2:emoji2-*:1.2.0-rc01 wird veröffentlicht. Version 1.2.0-rc01 enthält diese Commits.
- Keine Änderungen seit der letzten Betaversion.
Version 1.2.0-beta01
13. Juli 2022
androidx.emoji2:emoji2-*:1.2.0-beta01 wird veröffentlicht. Version 1.2.0-beta01 enthält diese Commits.
Neue Funktionen
- Keine Änderungen gegenüber der letzten Version (diese Version dient zur Unterstützung der AppCompat-Version).
Version 1.2.0-alpha04
20. April 2022
androidx.emoji2:emoji2-*:1.2.0-alpha04 wird veröffentlicht. Version 1.2.0-alpha04 enthält diese Commits.
Neue Funktionen
- In diesem Release gibt es keine Änderungen.
Version 1.2.0-alpha03
6. April 2022
androidx.emoji2:emoji2-*:1.2.0-alpha03 wird veröffentlicht. Version 1.2.0-alpha03 enthält diese Commits.
Neue Funktionen
- Keine Änderungen gegenüber der letzten Version (diese Version dient zur Unterstützung der Appcompat-Version).
Version 1.2.0-alpha02
23. März 2022
androidx.emoji2:emoji2-*:1.2.0-alpha02 wird veröffentlicht. Version 1.2.0-alpha02 enthält diese Commits.
Fehlerkorrekturen
- Mit Emoji2 werden PrecomputedTextEmojis hinzugefügt, indem das zuvor vorab berechnete Textlayout verworfen wird. (I47d06, b/211231958)
- Backport des Editor-Absturz-Fixes von Android P zu EditText, das für die Verwendung von Emoji2 konfiguriert ist. (Ifd709, b/216891011)
- Ein Absturz wurde behoben, der auftrat, wenn mit emoji2 eine Schriftart geladen wurde und TextView.setText(char[])verwendet wurde. (Id511e, b/206859724)
Version 1.2.0-alpha01
23. Februar 2022
androidx.emoji2:emoji2-*:1.2.0-alpha01 wird veröffentlicht. Version 1.2.0-alpha01 enthält diese Commits.
Keine Änderungen seit Version 1.1.0.
1.1
Version 1.1.0
23. Februar 2022
androidx.emoji2:emoji2-*:1.1.0 wird veröffentlicht. Version 1.1.0 enthält diese Commits.
Wichtige Änderungen seit Version 1.0.0
- emoji2-bundled enthält die Emoji 14-Schriftart
- Die neue getEmojiMatchAPI gibt genaue Informationen für Tastaturen zurück, um zu entscheiden, wie ein Emoji angezeigt wird, wenn eine Emoji-kompatible Schriftart vorhanden ist, die hinter der Systemschriftart liegt.
- Fehlerkorrektur für NumberKeyListener, durch die Zeichen bei der Zifferneingabe korrekt gefiltert werden.
Version 1.1.0-rc01
9. Februar 2022
androidx.emoji2:emoji2-*:1.1.0-rc01 wird veröffentlicht. Version 1.1.0-rc01 enthält diese Commits.
Neue Funktionen
Keine Änderungen gegenüber der Betaversion.
Neue Funktionen im Vergleich zu emoji2 1.0.0:
- emoji2-bundledenthält die Emoji 14-Schriftart
- Die neue getEmojiMatchAPI gibt genaue Informationen für Tastaturen zurück, um zu entscheiden, wie ein Emoji angezeigt wird, wenn eine Emoji-kompatible Schriftart vorhanden ist, die hinter der Systemschriftart liegt.
- Fehlerkorrektur für NumberKeyListener, durch die Zeichen bei der Zifferneingabe korrekt gefiltert werden
Version 1.1.0-beta01
26. Januar 2022
androidx.emoji2:emoji2-*:1.1.0-beta01 wird veröffentlicht. Version 1.1.0-beta01 enthält diese Commits.
Fehlerkorrekturen
- androidx-emoji2 beta01-Release. Keine Änderungen gegenüber Alpha01 (Ic61d9)
Version 1.1.0-alpha01
15. Dezember 2021
androidx.emoji2:emoji2-*:1.1.0-alpha01 wird veröffentlicht. Version 1.1.0-alpha01 enthält diese Commits.
Neue Funktionen
- emoji2-bundledenthält die Emoji 14-Schriftart
- Die neue getEmojiMatchAPI gibt genaue Informationen für Tastaturen zurück, um zu entscheiden, wie ein Emoji angezeigt wird, wenn eine Emoji-kompatible Schriftart vorhanden ist, die hinter der Systemschriftart liegt.
- Fehlerkorrektur für NumberKeyListener, durch die Zeichen bei der Zifferneingabe korrekt gefiltert werden
API-Änderungen
- Neue API getEmojiMatchhinzugefügt, damit Tastaturen das Verhalten von Emoji-Übereinstimmungen in „emojicompat“ genauer nachschlagen können.
- hasEmojiGlyphwird eingestellt, da der boolesche Rückgabewert ungenau ist, wenn er für einen Test mit einer Schriftart verwendet wird, die älter als die Emoji-Schriftart der Plattform ist. Ersetzen Sie den Text durch- getEmojiMatch. (Ie693d)
Fehlerkorrekturen
- Emoji2 umschließt keine Instanzen von NumberKeyListener, sodass das Gebietsschema vonTextViewkonfiguriert werden kann.
- AppCompat umschließt keine Instanzen von NumberKeyListener, die ansetKeyListenerübergeben werden. So kannTextViewdas Gebietsschema fürNumberKeyListenersrichtig konfigurieren. (Ibf113, b/207119921)
1.0
Version 1.0.1
15. Dezember 2021
androidx.emoji2:emoji2-*:1.0.1 wird veröffentlicht. Version 1.0.1 enthält diese Commits.
Fehlerkorrekturen
- Emoji2umschließt keine Instanzen von- NumberKeyListener, sodass das Gebietsschema von- TextViewkonfiguriert werden kann.
- AppCompat umschließt keine Instanzen von NumberKeyListener, die ansetKeyListenerübergeben werden. So kannTextViewdas Gebietsschema fürNumberKeyListenersrichtig konfigurieren. (Ibf113, b/207119921)
Version 1.0.0
17. November 2021
androidx.emoji2:emoji2-*:1.0.0 wird veröffentlicht. Version 1.0.0 enthält diese Commits.
Wichtige Funktionen von Version 1.0.0
androidx.emoji2 ersetzt androidx.emoji und bietet zusätzliche Funktionen:
- Reduzierung der APK-Größe im Vergleich zu androidx.emoji
- Automatische Konfiguration
- Als Abhängigkeit zu appcompat 1.4 hinzugefügt
Weitere Informationen zu androidx.emoji2 finden Sie unter Unterstützung moderner Emojis und in unserem Android Dev Summit-Vortrag Displaying ALL the emojis in your app Android Dev.
Version 1.0.0-rc01
27. Oktober 2021
androidx.emoji2:emoji2-*:1.0.0-rc01 wird veröffentlicht. Version 1.0.0-rc01 enthält diese Commits.
- Keine Änderungen seit Beta02.
Emoji2 Version 1.0.0-beta01
15. September 2021
androidx.emoji2:emoji2-*:1.0.0-beta01 wird veröffentlicht. Version 1.0.0-beta01 enthält diese Commits.
API-Änderungen
- setLoadingExecutorwurde zu- FontRequestEmojiCompatConfighinzugefügt und ersetzt die bisherige API- setHandler. Mit dieser API können Apps- FontRequestEmojiCompatConfigso konfigurieren, dass ein beliebiger Hintergrund-Executor verwendet wird.- Diese Änderung ist eine funktionsgefährdende Änderung von - androidx.emoji:emoji. Daher wird- setHandlerals inaktive, verworfene API beibehalten, um die Migration zu erleichtern. (I6cd48)
- EmojiCompat legt - EditorInfo.extrasunter Android 11 korrekt fest- Benutzerdefinierte Widgets, die IME verwenden und nicht von EditText abgeleitet sind, können EmojiCompat.updateEditorInfoaufrufen, um IME mitzuteilen, dass sie die EmojiCompat-Verarbeitung unterstützen. (I1ea9b)
 
- Benutzerdefinierte Widgets, die IME verwenden und nicht von EditText abgeleitet sind, können 
Fehlerkorrekturen
- Das Problem mit DefaultEmojiCompatConfigwurde behoben, sodass der Anbieter von Emoji-Schriftarten in API 19 und 28 korrekt gesucht wird. Damit wird ein Fehler behoben, der in emoji2 1.0.0-alpha01 eingeführt wurde. (Ib33d8, b/197906329)
Version 1.0.0-alpha03
30. Juni 2021
androidx.emoji2:emoji2-*:1.0.0-alpha03 wird veröffentlicht. Version 1.0.0-alpha03 enthält diese Commits.
Neue Funktionen
Diese Version enthält Fehlerkorrekturen und Stabilitätsverbesserungen.
- Mit EmojiEditTextHelper kann jetzt nullals KeyListener übergeben werden. Dadurch kann das Plattformverhalten, das Nullwerte für EditText-Implementierungen mit Emoji-Unterstützung zulässt, angewendet werden.
- Bei Verwendung von EmojiCompatInitializer wird die anfängliche Startverzögerung verbessert, sodass sie erst nach dem Fortsetzen der ersten Aktivität ausgelöst wird. Dadurch kann die App ohne Konflikte gestartet werden und die Schriftart wird nicht für App-Starts geladen, bei denen keine Benutzeroberfläche angezeigt wird. Nach einer kurzen Verzögerung erstellt EmojiCompat einen Thread zum Laden der Emoji-Schriftart.
- Um die Verzögerung zu implementieren, wird eine neue Abhängigkeit von androidx.lifecycle:lifecycle-processvonandroidx.emoji2:emoji2hinzugefügt. Bei Apps, die bereits Lifecycle-Komponenten enthalten (z. B. Apps mit AppCompat), hat dies nur geringe Auswirkungen auf die APK-Größe.
API-Änderungen
- Null-KeyListener in AppCompatEditText zulassen. Dadurch wird die Non-Null-Annotation, die AppCompatEditText in Version 1.4.0-alpha01 hinzugefügt wurde, rückgängig gemacht und das vorherige Verhalten beim Übergeben von „null“ wiederhergestellt. (I21482, b/189559345)
Fehlerkorrekturen
- Ändern Sie EmojiCompatInitializer so, dass das Laden von Schriftarten bis 500 ms nach dem ersten Activity.onResumeverzögert wird. So kann eine AktivitätApplication.onCreateundActivity.onCreateohne Konflikte ausführen, während gleichzeitig dafür gesorgt wird, dass die Emoji-Schriftart kurz nach dem Start der App geladen wird. (I4bff7)
Version 1.0.0-alpha02
2. Juni 2021
androidx.emoji2:emoji2:1.0.0-alpha02, androidx.emoji2:emoji2-views:1.0.0-alpha02 und androidx.emoji2:emoji2-views-helper:1.0.0-alpha02 sind veröffentlicht. Version 1.0.0-alpha02 enthält diese Commits.
API-Änderungen
- Das Paket in emoji2-views-helperwurde inandroidx.emoji2.viewsintegrationumbenannt. Dies ist eine wichtige Änderung für AppCompat1.4.0-alpha01. Apps müssen dafür sorgen, dass die AppCompat-Abhängigkeit aktualisiert wird, um die neue Emoji2-Version zu verwenden. (Ie8397)
Version 1.0.0-alpha01
18. Mai 2021
androidx.emoji2:emoji2:1.0.0-alpha01, androidx.emoji2:emoji2-views:1.0.0-alpha01 und androidx.emoji2:emoji2-views-helper:1.0.0-alpha01 sind veröffentlicht. Version 1.0.0-alpha01 enthält diese Commits.
Funktionen in dieser ersten Version
Die Integration von „emojicompat“ wird für alle Apps empfohlen, um moderne Emojis ab API 19 zu unterstützen. Alle von Nutzern erstellten Inhalte in Ihrer App enthalten 🎉.
EmojiCompat wurde von den androidx.emoji-Artefakten zu den neuen androidx.emoji2 verschoben, die jetzt in Alpha01 verfügbar sind. Die neuen Artefakte ersetzen die vorherige Version.
emoji2 wird ab AppCompat 1.4.0-alpha01 als Abhängigkeit zu AppCompat hinzugefügt und ist standardmäßig für AppCompat-Ansichten aktiviert.
Das emoji2-Artefakt führt eine neue automatische Konfiguration mit der androidx.startup-Bibliothek ein. Sie müssen keinen 👨🏽💻 Code mehr schreiben, um 🐻❄️ anzuzeigen.
Änderungen bei emoji2 im Vergleich zu emoji
- Neue automatische Konfiguration EmojiCompatInitializermitandroidx.startuphinzugefügt.
- Es wurde eine neue Standardkonfiguration hinzugefügt, die den Dienststandort verwendet, um einen Anbieter herunterladbarer Schriftarten in DefaultEmojiCompatConfigurationzu finden.
- Klassen wurden vom Paket androidx.emojiin das Paketandroidx.emoji2verschoben.
- Teilen Sie EmojiTextViewund zugehörige Ansichten in ein separates Artefaktemoji2-viewsauf. Diese Option sollte nur verwendet werden, wenn Ihre App nicht AppCompat verwendet.
- Extrahierte Hilfsklassen für die Integration von „emojicompat“ in benutzerdefinierte Ansichten in ein separates Artefakt emoji2-views-helper.
- Es wurden Anmerkungen zur Null-Zulässigkeit hinzugefügt.
- Helfer in emoji2-views-helperkönnen jetzt auch verwendet werden, wennEmojiCompatnicht initialisiert ist. Bisher wurde in diesem Fall eine Ausnahme ausgelöst.
Welche Abhängigkeit sollten Sie hinzufügen?
- Apps mit AppCompat sollten auf die AppCompat-Version AppCompat 1.4.0-alpha01oder höher aktualisiert werden.
- Apps ohne AppCompat, die TextView/EditTextvon der Plattform verwenden, solltenEmojiTextViewund zugehörige Klassen ausemoji2-viewsverwenden.
Support in benutzerdefinierten Ansichten
- Apps mit AppCompat sollten AppCompatTextView,AppCompatButtonusw. anstelle vonTextViewusw. der Plattform erweitern.
- Bei Apps ohne AppCompat sollte die androidx.emoji2:emoji2-views-helper-Abhängigkeit hinzugefügt und Helfer verwendet werden, um die Integration in benutzerdefinierteTextView- oderEditText-Unterklassen zu ermöglichen.
Automatische Initialisierung konfigurieren
- Apps können die automatische Initialisierung deaktivieren, indem sie Folgendes in das Manifest einfügen: - <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>
- Dadurch wird die automatische Konfiguration deaktiviert und Sie können eine benutzerdefinierte Konfiguration an - EmojiCompat.initübergeben. Die Standardkonfiguration für das System kann- DefaultEmojiCompatConfig.create(context)abgerufen werden, um sie weiter zu konfigurieren, bevor sie an- EmojiCompat.initübergeben wird.
