EmojiCompat fetchFont 结果不正常

EmojiCompat fetchFont result is not OK

我的应用使用 EmojiCompat 字体下载(未捆绑),我的大量用户报告以下错误:

Non-fatal Exception: java.lang.RuntimeException: fetchFonts result is not OK. (2)
   at android.support.text.emoji.FontRequestEmojiCompatConfig$FontRequestMetadataLoader.createMetadata(FontRequestEmojiCompatConfig.java:307)
   at android.support.text.emoji.FontRequestEmojiCompatConfig$FontRequestMetadataLoader.access0(FontRequestEmojiCompatConfig.java:164)
   at android.support.text.emoji.FontRequestEmojiCompatConfig$FontRequestMetadataLoader.run(FontRequestEmojiCompatConfig.java:218)
   at android.os.Handler.handleCallback(Handler.java:739)
   at android.os.Handler.dispatchMessage(Handler.java:95)
   at android.os.Looper.loop(Looper.java:158)
   at android.os.HandlerThread.run(HandlerThread.java:61)

我找不到对此错误消息的任何引用,也不知道是什么原因造成的。我的猜测是 Google Play Services 字体下载的内部问题。

2017-11-13 编辑:仍在支持库 27.0.0 上发生。

2017-11-15编辑:我的配置。

在我的应用程序 class 上,在 onCreate() 上:

val fontRequest = FontRequest(
        "com.google.android.gms.fonts",
        "com.google.android.gms",
        "Noto Color Emoji Compat",
        R.array.com_google_android_gms_fonts_certs)
val config = FontRequestEmojiCompatConfig(this, fontRequest)
config.setReplaceAll(true)
EmojiCompat.init(config)

正在用表情符号解析文本:

EmojiCompat.get().registerInitCallback(object : EmojiCompat.InitCallback() {
    override fun onInitialized() {
        text = EmojiCompat.get().process(charSequence)
    }

    override fun onFailed(throwable: Throwable?) {
        throwable?.let { Crashlytics.logException(throwable) }
    }
})

上述异常记录在 Crashlytics.logException()

问题更多地与 Google Play 服务和网络连接有关。为 https://issuetracker.google.com/issues/64430424#comment8

处创建的错误添加了评论