컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

Emoji2

현재 및 이전 기기에 그림 이모티콘을 표시합니다.
최근 업데이트 공개 버전 출시 후보 베타 버전 알파 버전
2022년 8월 10일 1.2.0 - - -

종속 항목 선언

Emoji2의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.

다음과 같이 앱 또는 모듈의 build.gradle 파일에 필요한 아티팩트의 종속 항목을 추가합니다.

Groovy

dependencies {
    def emoji2_version = "1.2.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.2.0"

    implementation("androidx.emoji2:emoji2:$emoji2_version")
    implementation("androidx.emoji2:emoji2-views:$emoji2_version")
    implementation("androidx.emoji2:emoji2-views-helper:$emoji2_version")
}

종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.

의견

제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.

새로운 문제 제출하기

자세한 내용은 Issue Tracker 문서를 참고하세요.

버전 1.2

버전 1.2.0

2022년 8월 10일

androidx.emoji2:emoji2-*:1.2.0이 출시되었습니다. 버전 1.2.0에 포함된 커밋을 확인하세요.

  • 버그 수정 출시입니다. 새로운 기능이나 API가 추가되지 않았습니다.
  • PrecomputedText 또는 TextView.setText(char[])를 사용하는 앱은 이 버전으로 업데이트하는 것을 우선해야 합니다.

이번 출시의 버그 수정

  • Emoji2는 이전에 미리 계산된 텍스트 레이아웃을 삭제하여 PrecomputedText에 그림 이모티콘을 추가합니다(I47d06, b/211231958).
  • Android P에서 emoji2를 사용하도록 구성된 EditText로 편집기를 백포팅할 때 발생하는 비정상 종료 문제를 해결했습니다(Ifd709, b/216891011).
  • emoji2에서 글꼴을 로드하고 TextView.setText(char[])가 사용될 때 발생하는 비정상 종료 문제를 해결했습니다(Id511e, b/206859724).

버전 1.2.0-rc01

2022년 7월 27일

androidx.emoji2:emoji2-*:1.2.0-rc01이 출시되었습니다. 버전 1.2.0-rc01에 포함된 커밋을 확인하세요.

  • 마지막 베타 버전 이후 변경사항이 없습니다.

버전 1.2.0-beta01

2022년 7월 13일

androidx.emoji2:emoji2-*:1.2.0-beta01이 출시되었습니다. 버전 1.2.0-beta01에 포함된 커밋을 확인하세요.

새로운 기능

  • 이전 버전에서 변경된 사항은 없습니다(이 버전은 AppCompat 버전을 지원함).

버전 1.2.0-alpha04

2022년 4월 20일

androidx.emoji2:emoji2-*:1.2.0-alpha04가 출시되었습니다. 버전 1.2.0-alpha04에 포함된 커밋을 확인하세요.

새로운 기능

  • 이번 출시에는 변경사항이 없습니다.

버전 1.2.0-alpha03

2022년 4월 6일

androidx.emoji2:emoji2-*:1.2.0-alpha03이 출시되었습니다. 버전 1.2.0-alpha03에 포함된 커밋을 확인하세요.

새로운 기능

  • 이전 버전에서 변경된 사항은 없습니다(이 버전은 appcompat 버전을 지원함).

버전 1.2.0-alpha02

2022년 3월 23일

androidx.emoji2:emoji2-*:1.2.0-alpha02가 출시되었습니다. 버전 1.2.0-alpha02에 포함된 커밋을 확인하세요.

버그 수정

  • Emoji2는 이전에 미리 계산된 텍스트 레이아웃을 삭제하여 PrecomputedText에 그림 이모티콘을 추가합니다. (I47d06, b/211231958)
  • Android P에서 emoji2를 사용하도록 구성된 EditText로 편집기를 백포팅할 때 발생하는 비정상 종료 문제를 해결했습니다. (Ifd709, b/216891011)
  • emoji2에서 글꼴을 로드하고 TextView.setText(char[])가 사용될 때 발생하는 비정상 종료 문제를 해결했습니다. (Id511e, b/206859724)

버전 1.2.0-alpha01

2022년 2월 23일

androidx.emoji2:emoji2-*:1.2.0-alpha01이 출시되었습니다. 버전 1.2.0-alpha01에 포함된 커밋을 확인하세요.

1.1.0 이후 변경사항이 없습니다.

1.1

버전 1.1.0

2022년 2월 23일

androidx.emoji2:emoji2-*:1.1.0이 출시되었습니다. 버전 1.1.0에 포함된 커밋을 확인하세요.

1.0.0 이후 중요 변경사항

  • emoji2 번들에 그림 이모티콘 14 글꼴이 포함되었습니다.
  • 시스템 글꼴 뒤에 emojicompat 글꼴이 있을 때 키보드가 그림 이모티콘 표시 방식을 결정할 수 있도록 신규 getEmojiMatch API가 정확한 정보를 반환합니다.
  • 숫자 입력이 문자를 올바르게 필터링하도록 NumberKeyListener 버그를 수정했습니다.

버전 1.1.0-rc01

2022년 2월 9일

androidx.emoji2:emoji2-*:1.1.0-rc01이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.

새로운 기능

베타에서 변경된 사항이 없습니다.

emoji2 1.0.0에 비해 다음과 같은 새로운 기능이 추가되었습니다.

  • emoji2-bundled에 그림 이모티콘 14 글꼴이 포함됩니다.
  • 시스템 글꼴 뒤에 emojicompat 글꼴이 있을 때 키보드가 그림 이모티콘 표시 방식을 결정할 수 있도록 신규 getEmojiMatch API가 정확한 정보를 반환합니다.
  • 숫자 입력이 문자를 올바르게 필터링하도록 NumberKeyListener 버그를 수정합니다.

버전 1.1.0-beta01

2022년 1월 26일

androidx.emoji2:emoji2-*:1.1.0-beta01이 출시되었습니다. 버전 1.1.0-beta01에 포함된 커밋을 확인하세요.

버그 수정

  • androidx-emoji2 beta01 출시입니다. alpha01에서 변경된 내용이 없습니다. (Ic61d9)

버전 1.1.0-alpha01

2021년 12월 15일

androidx.emoji2:emoji2-*:1.1.0-alpha01이 출시되었습니다. 버전 1.1.0-alpha01에 포함된 커밋을 확인하세요.

새로운 기능

  • emoji2-bundled에 그림 이모티콘 14 글꼴이 포함됩니다.
  • 시스템 글꼴 뒤에 emojicompat 글꼴이 있을 때 키보드가 그림 이모티콘 표시 방식을 결정할 수 있도록 신규 getEmojiMatch API가 정확한 정보를 반환합니다.
  • 숫자 입력이 문자를 올바르게 필터링하도록 NumberKeyListener 버그를 수정합니다.

API 변경사항

  • 키보드가 emojicompat에서 그림 이모티콘 일치 동작을 더 정확하게 조회할 수 있도록 신규 API getEmojiMatch를 추가합니다.
  • 플랫폼 그림 이모티콘 글꼴보다 더 오래된 글꼴을 대상으로 테스트할 때 불리언 반환 값이 정확하지 않으므로 hasEmojiGlyph를 지원 중단하고 getEmojiMatch로 대체합니다. (Ie693d)

버그 수정

  • Emoji2는 NumberKeyListener의 인스턴스를 래핑하지 않으므로 TextView에서 언어를 구성할 수 있습니다.
  • Appcompat이 setKeyListener에 전달된 NumberKeyListener의 인스턴스를 래핑하지 않으므로 TextViewNumberKeyListeners에서 언어를 올바르게 구성할 수 있습니다. (Ibf113, b/207119921)

1.0

버전 1.0.1

2021년 12월 15일

androidx.emoji2:emoji2-*:1.0.1이 출시되었습니다. 버전 1.0.1에 포함된 커밋을 확인하세요.

버그 수정

  • Emoji2NumberKeyListener의 인스턴스를 래핑하지 않으므로 TextView에서 언어를 구성할 수 있습니다.
  • Appcompat이 setKeyListener에 전달된 NumberKeyListener의 인스턴스를 래핑하지 않으므로 TextViewNumberKeyListeners에서 언어를 올바르게 구성할 수 있습니다. (Ibf113, b/207119921)

버전 1.0.0

2021년 11월 17일

androidx.emoji2:emoji2-*:1.0.0이 출시되었습니다. 버전 1.0.0에 포함된 커밋을 확인하세요.

1.0.0의 주요 기능

추가 기능이 포함된 androidx.emoji2가 androidx.emoji를 대체합니다.

  • APK 크기 축소와 androidx.emoji 비교
  • 자동 구성
  • appcompat 1.4에 종속 항목으로 추가됨

androidx.emoji2에 관한 자세한 내용은 최신 그림 이모티콘 지원 및 Android Dev Summit 강연 앱에 모든 그림 이모티콘 표시(Android Dev)를 참고하세요.

버전 1.0.0-rc01

2021년 10월 27일

androidx.emoji2:emoji2-*:1.0.0-rc01이 출시되었습니다. 버전 1.0.0-rc01에 포함된 커밋을 확인하세요.

  • beta02 이후 변경사항 없음

Emoji2 버전 1.0.0-beta01

2021년 9월 15일

androidx.emoji2:emoji2-*:1.0.0-beta01이 출시되었습니다. 버전 1.0.0-beta01에 포함된 커밋을 확인하세요.

API 변경사항

  • setLoadingExecutorFontRequestEmojiCompatConfig에 추가했습니다. setHandler의 이전 API를 대체합니다. 이 API를 사용하면 앱에서 FontRequestEmojiCompatConfig를 구성하여 모든 백그라운드 실행기를 사용할 수 있습니다.

    이 변경사항은 androidx.emoji:emoji의 브레이킹 체인지이므로 이전을 돕기 위해 setHandler는 지원 중단된 무작동 API로 유지됩니다. (I6cd48)

  • EmojiCompat이 Android 11에서 EditorInfo.extras를 올바르게 설정합니다.

    • EditText를 서브클래스로 분류하지 않는 IME를 사용하는 맞춤 위젯이 EmojiCompat.updateEditorInfo를 호출하여 IME에 EmojiCompat 처리를 지원한다고 알릴 수 있습니다. (I1ea9b)

버그 수정

  • API 19 및 28에서 그림 이모티콘 글꼴 제공업체를 올바르게 조회하도록 DefaultEmojiCompatConfig를 수정했습니다. 이를 통해 emoji2 1.0.0-alpha01에서 발생한 버그를 수정합니다. (Ib33d8, b/197906329)

버전 1.0.0-alpha03

2021년 6월 30일

androidx.emoji2:emoji2-*:1.0.0-alpha03이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.

새로운 기능

이 버전은 버그 수정 및 안정화 버전입니다.

  1. 이제 EmojiEditTextHelper가 null을 KeyListener로 전달하도록 허용합니다. 이를 통해 EditText 구현을 지원하는 그림 이모티콘에 null이 적용되도록 허용하는 플랫폼 동작이 가능합니다.
  2. EmojiCompatInitializer를 사용할 때 초기 시작 지연이 첫 번째 활동이 재개된 후 트리거되도록 개선되었습니다. 이를 통해 앱 시작이 경합 없이 발생할 수 있고 UI가 표시되지 않는 앱 시작용 글꼴 로드를 방지합니다. 짧은 지연 후 EmojiCompat은 그림 이모티콘 글꼴을 로드하는 스레드를 만듭니다.
  • androidx.emoji2:emoji2에서 androidx.lifecycle:lifecycle-process의 새 종속 항목을 추가하여 지연을 구현합니다. 이미 수명 주기가 포함된 앱(예: appcompat이 있는 앱)의 경우 APK 크기에 거의 영향을 미치지 않습니다.

API 변경사항

  • AppCompatEditText에서 null KeyListener를 허용합니다. 이렇게 하면 1.4.0-alpha01에서 AppCompatEditText에 추가된 null이 아닌 주석을 취소하게 되고 null을 전달하면 이전 동작이 복원됩니다. (I21482, b/189559345)

버그 수정

  • 첫 번째 Activity.onResume 이후 500ms까지 글꼴 로드가 지연되도록 EmojiCompatInitializer를 변경했습니다. 이를 통해 활동이 경합 없이 Application.onCreateActivity.onCreate를 실행할 수 있고 앱 시작 직후 그림 이모티콘 글꼴이 로드되도록 합니다. (I4bff7)

버전 1.0.0-alpha02

2021년 6월 2일

androidx.emoji2:emoji2:1.0.0-alpha02, androidx.emoji2:emoji2-views:1.0.0-alpha02androidx.emoji2:emoji2-views-helper:1.0.0-alpha02가 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.

API 변경사항

  • emoji2-views-helper의 패키지 이름이 androidx.emoji2.viewsintegration으로 바뀌었습니다. 이는 AppCompat 1.4.0-alpha01의 브레이킹 체인지이며 앱은 새로운 emoji2 버전을 사용하도록 AppCompat 종속 항목이 업데이트되었는지 확인해야 합니다. (Ie8397)

버전 1.0.0-alpha01

2021년 5월 18일

androidx.emoji2:emoji2:1.0.0-alpha01, androidx.emoji2:emoji2-views:1.0.0-alpha01androidx.emoji2:emoji2-views-helper:1.0.0-alpha01이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.

이번 최초 출시의 기능

모든 앱에서 API19의 최신 그림 이모티콘을 지원하도록 emojicompat를 통합하는 것이 좋습니다. 앱의 모든 사용자 제작 콘텐츠에는 🎉이 포함되어 있습니다.

이제 alpha01에서는 EmojiCompat가 androidx.emoji 아티팩트에서 새로운 androidx.emoji2로 이동했습니다. 새 아티팩트가 이전 버전을 대체합니다.

emoji2AppCompat 1.4.0-alpha01부터 AppCompat에 종속 항목으로 추가되며 AppCompat 뷰에 기본적으로 사용 설정됩니다.

emoji2 아티팩트에는 androidx.startup 라이브러리를 사용하는 새로운 자동 구성이 도입되었습니다. 이제 🐻‍❄️을 표시하기 위해 👨🏽‍💻 코드를 작성하지 않아도 됩니다.

emoji 대비 emoji2의 변경사항

  • androidx.startup을 사용하는 새로운 자동 구성 EmojiCompatInitializer를 추가했습니다.
  • 서비스 위치를 사용하여 DefaultEmojiCompatConfiguration에서 다운로드 가능한 글꼴 제공자를 찾는 새로운 기본 구성을 추가했습니다.
  • 클래스가 androidx.emoji 패키지에서 androidx.emoji2로 이동했습니다.
  • EmojiTextView와 관련 뷰를 별도의 아티팩트 emoji2-views로 분할했습니다. 이는 앱에서 appcompat를 사용하지 않는 경우에만 사용해야 합니다.
  • emojicompat를 맞춤 뷰로 통합하기 위한 도우미를 별도의 아티팩트 emoji2-views-helper로 추출했습니다.
  • null 허용 여부 주석이 추가되었습니다.
  • EmojiCompat가 초기화되지 않은 경우에도 이제 emoji2-views-helper의 도우미를 사용할 수 있습니다(이전에는 예외가 발생함).

어떤 종속 항목을 추가해야 하나요?

  • AppCompat를 사용하는 앱은 appcompat 버전 AppCompat 1.4.0-alpha01 이상으로 업그레이드해야 합니다.
  • AppCompat를 사용하지 않고 플랫폼에서 TextView/EditText를 사용하는 앱은 EmojiTextViewemoji2-views의 관련 클래스를 사용해야 합니다.

맞춤 뷰에서 지원하는 방법

  • AppCompat를 사용하는 앱은 플랫폼 TextView 등이 아닌 AppCompatTextView, AppCompatButton 등을 확장해야 합니다.
  • AppCompat를 사용하지 않는 앱은 androidx.emoji2:emoji2-views-helper 종속 항목을 추가하고 도우미를 사용하여 맞춤 TextView 또는 EditText 서브클래스와 통합해야 합니다.

자동 초기화 구성

  • 앱에서는 다음을 매니페스트에 추가하여 자동 초기화를 중지할 수 있습니다.

     <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>
    
  • 그러면 자동 구성이 중지되기 때문에 맞춤 구성을 EmojiCompat.init에 전달할 수 있습니다. 시스템의 기본 구성은 EmojiCompat.init로 전달하기 전에 DefaultEmojiCompatConfig.create(context)에서 가져와 추가로 구성할 수 있습니다.