Emoji2
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2024년 7월 10일 | 1.4.0 | - | 1.5.0-beta01 | - |
종속 항목 선언
Emoji2의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
Groovy
dependencies { def emoji2_version = "1.4.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.4.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 문서를 참고하세요.
Emoji2 Emojipicker 버전 1.0
버전 1.0.0-alpha03
2023년 3월 8일
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha03
이 출시되었습니다. 버전 1.0.0-alpha03에 포함된 커밋을 확인하세요.
버그 수정
- 불필요한 리소스를 삭제하고 라이브러리 크기를 약 0.3M 줄였습니다.
버전 1.0.0-alpha02
2023년 2월 22일
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha02
이 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.
API 변경사항
- 최신 그림 이모티콘을 제공할 수 있도록 Java 클라이언트를 위한 새 API를 추가했습니다. 추가했습니다. (I39d10)
버그 수정
- 그림 이모티콘 15.0을 지원하도록 그림 이모티콘 리소스를 업데이트합니다. (Ib4eb3)
- 팝업 창에서 그림 이모티콘을 선택할 때 동일한 그림 이모티콘을 모두 새로 선택한 그림 이모티콘으로 업데이트합니다 (최근 그림 이모티콘 행 제외). 클릭 시 그림 이모티콘도 알려줍니다. 추가했습니다. (I892c6)
EmojiPickerView
를 표시하기 전에 iconcompat이 로드될 때까지 기다립니다. 추가했습니다. (I29e03)
버전 1.0.0-alpha01
2023년 1월 25일
androidx.emoji2:emoji2-emojipicker:1.0.0-alpha01
이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
- Android OS OEM 기기와 앱에서 최신 그림 이모티콘으로 일관된 사용자 환경을 제공하는 그림 이모티콘 선택 도구를 도입했습니다. 그림 이모티콘 선택 도구는 피부색 변형, 그림 이모티콘 호환성 지원을 비롯한 최신 그림 이모티콘 지원 및 그림 이모티콘 선택 도구 UI를 제공합니다.
API 변경사항
- 클릭 가능한 가로 헤더가 있는 세로 스크롤 가능 뷰에 최신 그림 이모티콘을 제공하는
EmojiPickerView
클래스가 도입되었습니다. - 그림 이모티콘 선택 도구 그리드 열을 XML 속성
emojiGridColumns
또는 함수setEmojiGridColumns()
를 통해 설정할 수 있습니다. - 그림 이모티콘 선택 도구 그리드 행을 XML 속성
emojiGridRows
또는 함수setEmojiGridRows()
를 통해 설정할 수 있습니다. - 그림 이모티콘을 선택한 리스너는
setOnEmojiPickedListener()
를 통해 설정할 수 있으며, 사용자가 그림 이모티콘을 클릭할 때마다 리스너에게 알림이 전송됩니다. setRecentEmojiProvider()
를 사용하여 최근 그림 이모티콘 제공자를 설정할 수 있습니다. 이는 선택적 함수입니다. 최근 그림 이모티콘 제공자가 설정되지 않은 경우 라이브러리에서 기본 최근 그림 이모티콘 제공자를 사용합니다. 기본 동작은 다음과 같이 정의됩니다. 1) 모든 선택된 그림 이모티콘이 공유 환경설정에서 앱별로 저장됩니다. 2) 선택 도구에서 최대 3개 행의 중복 제거된 그림 이모티콘을 역순으로 표시합니다.- 표시된 그림 이모티콘과 그림 이모티콘 변형을 저장하는
EmojiViewItem
클래스가 도입되었습니다. - 최근 그림 이모티콘 목록을 제공하기 위해 구현할 수 있는
RecentEmojiProvider
인터페이스를 도입했습니다.recentEmojiProvider
는 '최근 사용' 카테고리에 그림 이모티콘을 표시한 제공자입니다.
버전 1.5
버전 1.5.0-beta01
2024년 7월 10일
androidx.emoji2:emoji2-*:1.5.0-beta01
이 출시되었습니다. 버전 1.5.0-beta01에 포함된 커밋을 확인하세요.
새로운 기능
- 그림 이모티콘 15.1 및 양방향 그림 이모티콘 선택 UI를 지원합니다.
- 다중 기술 선택 재설계를 지원합니다.
버그 수정
EmojiPickerView
의 탭 선택과 표시기는 클릭 한 번이면 업데이트됩니다. 추가했습니다. (146b02, b/288261054)EmojiPickerView
의 탭 선택 및 표시기가 작동하지 않습니다. 추가했습니다. (5e1f14, b/273883688)
버전 1.5.0-alpha01
2023년 12월 13일
androidx.emoji2:emoji2-*:1.5.0-alpha01
이 출시되었습니다. 버전 1.5.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
emoji2-bundled
에는 그림 이모티콘 15.1을 지원하도록 업데이트된 그림 이모티콘 글꼴이 포함되어 있습니다.
API 변경사항
- 실행자를 추가하여
InitCallback
의 콜백 스레드를 제어합니다. 추가했습니다. (I32b67) - 이제
BundledEmojiCompatConfig
가 실행자를 사용하여 로드 스레드를 제어합니다. 추가했습니다. (I00e81)
버전 1.4
버전 1.4.0
2023년 8월 9일
androidx.emoji2:emoji2-*:1.4.0
이 출시되었습니다. 버전 1.4.0에 포함된 커밋을 확인하세요.
1.3.0 이후 중요 변경사항
- 그림 이모티콘 선택 도구 라이브러리가 도입되었습니다. 자세한 내용은 개발자 문서를 확인하세요.
버전 1.4.0-rc01
2023년 7월 26일
androidx.emoji2:emoji2-*:1.4.0-rc01
이 출시되었습니다. 버전 1.4.0-rc01에 포함된 커밋을 확인하세요.
API 변경사항
registerSource
목록을 도입했습니다. (Iae92f)- API 위원회 의견:
TransitionManager.seekTo()
의 이름이createSeekController()
로 변경되었습니다.TransitionManager.seekTo()
을(를)TransitionManager.createSeekController()
에 추가하는 것과 관련된 이전 댓글을 수정해 주세요. 추가합니다. (Idbeb1) Data
,NoData
,ConsentRequiredStates
의 슈퍼클래스가 아닌ExerciseRouteResult
를 추가했습니다. 경로의 위치 데이터를 보유하는 독립형 클래스로ExerciseRoute
를 추가했습니다. 추가했습니다. (I22eed)- 페이저에서 측정 통과 후 수집된 정보가 포함된
PagerLayoutInfo
를 도입했습니다. 페이저에서 측정된 단일 페이지에 관한 정보인 PageInfo도 도입했습니다. 추가했습니다. (Iad003, b/283098900)
버그 수정
- Material3 디자인에 맞게
Button
,IconButton
,TextButton
의 색상을 업데이트했습니다. 이제Modifier.semantics
를 사용하여Button
,IconButton
,TextButton
의 시맨틱 역할을 재정의할 수 있습니다. 추가했습니다. (Ib2495) EmojiPickerView
의 탭 선택 및 표시기가 클릭 한 번으로 업데이트되는 문제를 수정했습니다. 추가했습니다. (I4db04)- 그림 이모티콘 선택 도구 표시
FileNotFoundException
(I353e4) EmojiPickerView
를 사용할 때WindowManager.BadTokenException
를 포착합니다. (I0a144)
버전 1.4.0-beta05
2023년 6월 7일
androidx.emoji2:emoji2-*:1.4.0-beta05
이 출시되었습니다. 버전 1.4.0-beta05에 포함된 커밋을 확인하세요.
버그 수정
- 1.3에서 도입된 버그(예:
RelativeSizeSpan
)를 두 번 적용하는MetricsAffectingSpans
버그가 수정되었습니다. 텍스트 레이아웃 중에 한 번 그리고EmojiSpan.draw
내부에서 다시 한 번 그 결과, 텍스트 크기 매개변수가 스팬에 의해 변경된 경우 표시되는 그리기 크기가 잘못 지정되었습니다. (b/283208650 참조)
버전 1.4.0-beta04
2023년 5월 24일
androidx.emoji2:emoji2-*:1.4.0-beta04
이 출시되었습니다. 버전 1.4.0-beta04에 포함된 커밋을 확인하세요.
이 릴리스에서는 글꼴 로드가 완료된 후 그림 이모티콘 스팬을 업데이트하려고 할 때 기본이 아닌 핸들러가 있는 뷰에서 예외가 발생하는 버그를 1.0부터 수정했습니다. 해결 방법이 없습니다. 이 버그의 영향을 받는 경우 이 버전 이상으로 업그레이드하세요.
버그 수정
- 이제
EmojiCompat
init 콜백은 각 뷰의 핸들러를 사용하여 기본 스레드에 없는 뷰를 고려합니다. (Iccbcf)
버전 1.4.0-beta03
2023년 5월 10일
androidx.emoji2:emoji2-*:1.4.0-beta03
이 출시되었습니다. 버전 1.4.0-beta03에 포함된 커밋을 확인하세요.
버그 수정
- 그림 이모티콘 선택 도구 중첩 팝업 뷰 비정상 종료 문제를 수정했습니다. 추가했습니다. (0acc8e)
EmojiCompat getEmojiStart/getEmojiEnd
에서 조기 예외가 발생합니다. 추가했습니다. (26177f)
버전 1.4.0-beta02
2023년 4월 19일
androidx.emoji2:emoji2-*:1.4.0-beta02
이 출시되었습니다. 버전 1.4.0-beta02에 포함된 커밋을 확인하세요.
버그 수정
- 린트 기준 파일을 업데이트합니다. (Iaa212)
버전 1.4.0-beta01
2023년 4월 5일
androidx.emoji2:emoji2-*:1.4.0-beta01
이 출시되었습니다. 버전 1.4.0-beta01에 포함된 커밋을 확인하세요.
새로운 기능
androidx.emoji2:emoji2-emojipicker
그림 이모티콘 선택 도구는 현대적인 디자인과 최신 그림 이모티콘, 사용 편의성을 제공하는 UI 솔루션입니다. 사용자는 그림 이모티콘과 변형을 둘러보고 선택하거나 최근에 사용한 그림 이모티콘 중에서 선택할 수 있습니다. 이 라이브러리를 사용하면 다양한 OEM의 앱에서 개발자가 자체 그림 이모티콘 선택 도구를 처음부터 빌드하고 유지 관리할 필요 없이 사용자에게 포용적이고 통합된 그림 이모티콘 환경을 제공할 수 있습니다.
최신 그림 이모티콘
새로운 그림 이모티콘은 매년 출시되며 그림 이모티콘 선택 도구에 선택적으로 포함됩니다. 이전 버전과의 호환성을 보장하기 위해 두부를 없애기 위해 내부적으로 정확한 그림 이모티콘 렌더링 가능 여부 검사를 실행합니다. 이렇게 하면 라이브러리가 여러 Android 버전 및 기기에서 호환됩니다.
고정 변형
이모티콘을 길게 누르면 다양한 성별이나 피부색 등의 변형 메뉴가 표시됩니다. 선택한 변형은 그림 이모티콘 선택 도구에 저장되고 마지막으로 선택한 변형이 기본 패널에 사용됩니다. 이 기능을 통해 사용자는 탭 한 번으로 원하는 이모티콘 변형을 전송할 수 있습니다.
최근 그림 이모티콘
RecentEmojiProvider
는 '최근 사용' 카테고리에 이모티콘을 제공합니다. 라이브러리에는 가장 일반적인 사용 사례를 충족하는 최근의 기본 그림 이모티콘 제공자가 있습니다.
- 선택한 모든 그림 이모티콘은 공유 환경설정에 앱별로 저장됩니다.
- 선택 도구에는 선택된 이모티콘이 최대 3행까지 표시되며, 중복 삭제된 이모티콘이 시간 역순으로 표시됩니다.
이 기본 동작으로 충분하면 setRecentEmojiProvider()
메서드를 설정할 필요가 없습니다.
EmojiCompat 사용
앱에 EmojiCompat
인스턴스가 있으면 그림 이모티콘 선택 도구에서 최대한 많은 그림 이모티콘을 렌더링하는 데 사용됩니다. EmojiCompat
가 사용 중지되어도 그림 이모티콘 선택 도구는 정상적으로 작동합니다.
라이브러리 사용 방법
이 라이브러리를 사용하려면 앱 개발자가
build.gradle
에androidx.emoji2:emojipicker:$version
를 가져옵니다.dependencies { implementation "androidx.emoji2:emojipicker:$version" }
그림 이모티콘 선택 도구 뷰를 확장하고 원하는 경우 각 그림 이모티콘 셀의 원하는 크기에 따라
emojiGridRows
및emojiGridColumns
를 설정합니다.- 설정하지 않은 상태로 둘 수 있습니다. 기본값은 9
emojiGridColumns
이며, 행은 상위 뷰 높이 및emojiGridColumns
를 기준으로 계산됩니다. emojiGridRows
를 부동 소수점으로 설정하여 아래로 스크롤하면 그림 이모티콘이 더 많이 있음을 나타낼 수 있습니다. XML:
<androidx.emoji2.emojipicker.EmojiPickerView android:id="@+id/emoji_picker" android:layout_width="match_parent" android:layout_height="match_parent" app:emojiGridColumns="9" />
- 설정하지 않은 상태로 둘 수 있습니다. 기본값은 9
코드 내
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)
선택한 이모티콘을 EditText에 추가한다고 가정하면
setOnEmojiPickedListener()
를 사용합니다.emojiPickerView.setOnEmojiPickedListener { findViewById<EditText>(R.id.edit_text).append(it.emoji) }
필요한 경우
RecentEmojiProvider
를 설정합니다. 구현 예는 샘플 앱을 참고하세요.원하는 경우 스타일을 맞춤설정합니다. 자체 스타일을 만들어 공통 테마 속성을 재정의하고 스타일을
EmojiPickerView
에 적용합니다. 예를 들어colorControlNormal
를 재정의하면 카테고리 아이콘 색상이 변경됩니다.<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" />
구현 예는 샘플 앱을 참고하세요.
전체 API 노출 영역은 여기에서 확인할 수 있습니다.
샘플 앱
이 샘플 앱은 기본 사용 사례와 다음 추가 시나리오를 보여줍니다.
emojiGridRows
와emojiGridColumns
가 재설정되었기 때문에 뷰의 레이아웃이 다시 조정되었습니다.- 빈도별로 정렬하도록 최근 그림 이모티콘 제공자가 재정의되었습니다.
- 스타일 맞춤설정.
API 변경사항
그림 이모티콘 선택 도구 라이브러리가 다음과 같은 새로운 API를 포함하도록 업데이트되었습니다.
EmojiPickerView
클래스: 클릭 가능한 가로 헤더가 있는 세로 스크롤 가능 뷰에 최신 그림 이모티콘을 제공합니다.- XML 속성
emojiGridColumns
및emojiGridRows
또는setEmojiGridColumns()
및setEmojiGridRows()
메서드를 통해 그림 이모티콘 선택 도구 그리드에서 열과 행 수를 설정하는 기능 setOnEmojiPickedListener()
메서드를 통해 이모티콘 선택 리스너를 설정하는 기능 사용자가 그림 이모티콘을 클릭할 때마다 리스너가 알림을 받습니다.setRecentEmojiProvider()
메서드를 통해 최근 그림 이모티콘 제공자를 제공하는 기능 이는 선택적 함수입니다. 최근 그림 이모티콘 제공자가 설정되지 않은 경우 라이브러리에서 기본 최근 그림 이모티콘 제공자를 사용합니다. 기본 동작은 다음과 같이 정의됩니다. <ph type="x-smartling-placeholder">- </ph>
- 선택한 모든 그림 이모티콘은 공유 환경설정에 앱별로 저장됩니다.
- 선택 도구에 선택된 이모티콘이 최대 3행까지 표시되며, 중복 삭제된 이모티콘은 시간 역순으로 표시됩니다.
EmojiViewItem
클래스: 표시된 그림 이모티콘과 그림 이모티콘 변형을 포함합니다.RecentEmojiProvider
인터페이스: 최근 그림 이모티콘 목록을 제공하기 위해 구현할 수 있습니다.recentEmojiProvider
는 '최근 사용' 카테고리에 그림 이모티콘을 표시한 제공자입니다.RecentEmojiAsyncProvider
인터페이스: 최근 그림 이모티콘 목록을 제공하기 위해 구현할 수 있습니다.RecentEmojiAsyncProvider
는 '최근 사용' 카테고리에 그림 이모티콘을 표시한 제공자입니다. 이 인터페이스는 클라이언트가getRecentEmojiListAsync()
메서드를 재정의하여 최근 그림 이모티콘을 제공할 수 있게 해주는RecentEmojiProvider
와 동일합니다.RecentEmojiProviderAdapter
클래스:RecentEmojiAsyncProvider
의 어댑터이며RecentEmojiProvider
를 구현합니다.
버전 1.4.0-alpha01
2023년 3월 22일
androidx.emoji2:emoji2-*:1.4.0-alpha01
이 출시되었습니다. 버전 1.4.0-alpha01에 포함된 커밋을 확인하세요.
버그 수정
- 테스트를 수정하고 플레이크 테스트를 사용 중지하며 삭제합니다.
버전 1.3
버전 1.3.0
2023년 3월 22일
androidx.emoji2:emoji2-*:1.3.0
이 출시되었습니다. 버전 1.3.0에 포함된 커밋을 확인하세요.
1.2.0 이후 중요 변경사항
- 이 출시에서는 Compose Foundation
1.4.0
이상에서 그림 이모티콘 2 통합을 사용 설정할 수 있습니다. - 또한
EmojiSpans
를 맞춤 그리기 코드로 대체하는 기능과 Android에 정의된 그림 이모티콘 제외를 지원할 수 있습니다.
버전 1.3.0-rc01
2023년 3월 8일
androidx.emoji2:emoji2-*:1.3.0-rc01
이 출시되었습니다. 버전 1.3.0-rc01에 포함된 커밋을 확인하세요.
새로운 기능
- 이 버전은moji2 Compose 통합을 지원합니다.
API 변경사항
- 맞춤 그리기 코드의 스팬을 대체합니다.
- 시스템 제외를 쿼리할 수 있습니다.
버그 수정
EmojiSopans
뒤에 백그라운드 스팬이 올바르게 적용되지 않는 버그를 수정했습니다.
버전 1.3.0-beta03
2023년 2월 23일
androidx.emoji2:emoji2-bundled:1.3.0-beta03
, androidx.emoji2:emoji2-views:1.3.0-beta03
및 androidx.emoji2:emoji2-views-helper:1.3.0-beta03
가 출시되었습니다.
2023년 2월 22일
androidx.emoji2:emoji2:1.3.0-beta03
이 출시되었습니다. 버전 1.3.0-beta03에 포함된 커밋을 확인하세요.
새로운 기능
- 변경사항이 없습니다. 이 버전은 Compose 통합을 준비하기 위한 버전입니다.
버전 1.3.0-beta02
2023년 2월 8일
androidx.emoji2:emoji2-*:1.3.0-beta02
가 출시되었습니다. 버전 1.3.0-beta02에 포함된 커밋을 확인하세요.
새로운 기능
- 이 버전은 Compose 통합을 지원하는 안정화 버전입니다.
버전 1.3.0-beta01
2023년 1월 25일
androidx.emoji2:emoji2-*:1.3.0-beta01
이 출시되었습니다. 버전 1.3.0-beta01에 포함된 커밋을 확인하세요.
새로운 기능
- 시스템 제외를 쿼리할 수 있습니다.
- 맞춤 그리기 코드의 스팬을 대체했습니다.
EmojiSopans
뒤에 백그라운드 스팬이 올바르게 적용되지 않는 버그를 수정했습니다.- 이 버전에서는 Compose에서
EmojiCompat
를 지원하는 데 필요한 API를 추가합니다. 곧 출시될 버전에서 그림 이모티콘 호환성을 위한 Compose 지원이 제공될 예정입니다.
버전 1.3.0-alpha01
2023년 1월 11일
androidx.emoji2:emoji2-*:1.3.0-alpha01
이 출시되었습니다. 버전 1.3.0-alpha01에 포함된 커밋을 확인하세요.
낮은 수준의 상호작용을 위한 새로운 API
- 시스템 제외 쿼리
- 맞춤 그리기 코드의 스팬 대체
EmojiSopans
뒤에 백그라운드 스팬이 올바르게 적용되지 않는 버그를 수정했습니다.- 이 버전에서는 Compose에서
EmojiCompat
를 지원하는 데 필요한 API를 추가합니다. 곧 출시될 버전에서 그림 이모티콘 호환성을 위한 Compose 지원이 제공될 예정입니다.
API 변경사항
- 시스템 제외를 쿼리하는 기능을
TypefaceEmojiRasterizer
에 추가했습니다. (I5653e) - 기본
EmojiSpan
동작을 맞춤 그리기 및 크기 조절 코드로 대체하는 새로운 APIEmojiCompat.SpanFactory
를 추가했습니다. (Ib69d9) - Compose에
EmojiCompat
를 추가했습니다. (I96f37, b/139326806)
버그 수정
- 이제 Emoji2가
BackgroundSpan
에서 배경을 올바르게 그립니다. (Ide6a8, b/230525134) - 1.5.0-beta01용 AppCompat API를 완료합니다. (I2a43d, b/236866227)
버전 1.2
버전 1.2.0
2022년 8월 10일
androidx.emoji2:emoji2-*:1.2.0
이 출시되었습니다. 버전 1.2.0에 포함된 커밋을 확인하세요.
1.1.0 이후 중요 변경사항
버그 수정 출시입니다. 1.1.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
의 인스턴스를 래핑하지 않으므로TextView
가NumberKeyListeners
에서 언어를 올바르게 구성할 수 있습니다. (Ibf113, b/207119921)
1.0
버전 1.0.1
2021년 12월 15일
androidx.emoji2:emoji2-*:1.0.1
이 출시되었습니다. 버전 1.0.1에 포함된 커밋을 확인하세요.
버그 수정
Emoji2
이NumberKeyListener
의 인스턴스를 래핑하지 않으므로TextView
에서 언어를 구성할 수 있습니다.- Appcompat이
setKeyListener
에 전달된NumberKeyListener
의 인스턴스를 래핑하지 않으므로TextView
가NumberKeyListeners
에서 언어를 올바르게 구성할 수 있습니다. (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 변경사항
setLoadingExecutor
를FontRequestEmojiCompatConfig
에 추가했습니다.setHandler
의 이전 API를 대체합니다. 이 API를 사용하면 앱에서FontRequestEmojiCompatConfig
를 구성하여 모든 백그라운드 실행기를 사용할 수 있습니다.이 변경사항은
androidx.emoji:emoji
의 브레이킹 체인지이므로 이전을 돕기 위해setHandler
는 지원 중단된 무작동 API로 유지됩니다. (I6cd48)EmojiCompat이 Android 11에서
EditorInfo.extras
를 올바르게 설정합니다.- EditText를 서브클래스로 분류하지 않는 IME를 사용하는 맞춤 위젯이
EmojiCompat.updateEditorInfo
를 호출하여 IME에 EmojiCompat 처리를 지원한다고 알릴 수 있습니다. (I1ea9b)
- EditText를 서브클래스로 분류하지 않는 IME를 사용하는 맞춤 위젯이
버그 수정
- 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에 포함된 커밋을 확인하세요.
새로운 기능
이 버전은 버그 수정 및 안정화 버전입니다.
- 이제 EmojiEditTextHelper가
null
을 KeyListener로 전달하도록 허용합니다. 이를 통해 EditText 구현을 지원하는 그림 이모티콘에 null이 적용되도록 허용하는 플랫폼 동작이 가능합니다. - 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.onCreate
와Activity.onCreate
를 실행할 수 있고 앱 시작 직후 그림 이모티콘 글꼴이 로드되도록 합니다. (I4bff7)
버전 1.0.0-alpha02
2021년 6월 2일
androidx.emoji2:emoji2:1.0.0-alpha02
, androidx.emoji2:emoji2-views:1.0.0-alpha02
및 androidx.emoji2:emoji2-views-helper:1.0.0-alpha02
가 출시되었습니다. 버전 1.0.0-alpha02에 포함된 커밋을 확인하세요.
API 변경사항
emoji2-views-helper
의 패키지 이름이androidx.emoji2.viewsintegration
으로 바뀌었습니다. 이는 AppCompat1.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-alpha01
및 androidx.emoji2:emoji2-views-helper:1.0.0-alpha01
이 출시되었습니다. 버전 1.0.0-alpha01에 포함된 커밋을 확인하세요.
이번 최초 출시의 기능
모든 앱에서 API19의 최신 그림 이모티콘을 지원하도록 emojicompat를 통합하는 것이 좋습니다. 앱의 모든 사용자 제작 콘텐츠에는 🎉이 포함되어 있습니다.
이제 alpha01에서는 EmojiCompat가 androidx.emoji
아티팩트에서 새로운 androidx.emoji2
로 이동했습니다. 새 아티팩트가 이전 버전을 대체합니다.
emoji2
는 AppCompat 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
를 사용하는 앱은EmojiTextView
및emoji2-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)
에서 가져와 추가로 구성할 수 있습니다.