每次我创建一个Xcode 4项目(iPhone应用程序,可可库......)时,.app文件或Products组下的.a文件都会显示为红色(缺少).
即使我构建项目,文件仍然是红色的.
我的所有设置都是默认值.
提前致谢.
我的应用程序使用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.access$100(FontRequestEmojiCompatConfig.java:164)
at android.support.text.emoji.FontRequestEmojiCompatConfig$FontRequestMetadataLoader$1.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)
Run Code Online (Sandbox Code Playgroud)
我找不到任何对此错误消息的引用,我不知道是什么导致它.我猜测这是Google Play服务字体下载的内部问题.
编辑2017-11-13:仍在支持库27.0.0上发生.
编辑2017-11-15:我的配置.
在我的Application类上,在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)
Run Code Online (Sandbox Code Playgroud)
使用表情符号解析文本:
EmojiCompat.get().registerInitCallback(object : EmojiCompat.InitCallback() {
override fun onInitialized() {
text = EmojiCompat.get().process(charSequence)
}
override fun onFailed(throwable: Throwable?) {
throwable?.let { Crashlytics.logException(throwable) }
}
})
Run Code Online (Sandbox Code Playgroud)
以上异常记录在Crashlytics.logException()上
我有以下RxJava2 Kotlin代码:
val tester = Completable.complete()
.andThen(SingleSource<Int> { Single.just(42) })
.test()
tester.assertComplete()
tester.assertValue(42)
Run Code Online (Sandbox Code Playgroud)
这模拟了一个Completable observable(想象一个对API的简单更新操作),然后是一个Single observable(在API上映像获取操作).我希望以一种方式连接两个observable,当Completable完成时,Single运行,最后我在我的观察者(Int 42)上获得onSuccess事件.
但是这个测试代码不起作用.断言失败,出现以下错误:
java.lang.AssertionError: Not completed
(latch = 1, values = 0, errors = 0, completions = 0))
Run Code Online (Sandbox Code Playgroud)
我无法理解我做错了什么,我希望Completable在订阅时发出onComplete,然后Single订阅,我的observer(tester
)获得一个值为42的onSuccess事件,但似乎订阅仍然"暂停" "没有发光.
这个想法类似于这篇博文中的内容:https://android.jlelse.eu/making-your-rxjava-intentions-clearer-with-single-and-completable-f064d98d53a8
apiClient.updateMyData(myUpdatedData) // a Completable
.andThen(performOtherOperation()) // a Single<OtherResult>
.subscribe(otherResult -> {
// handle otherResult
}, throwable -> {
// handle error
});
Run Code Online (Sandbox Code Playgroud) 我正在关注 Codelab:https ://codelabs.developers.google.com/codelabs/mlkit-android-custom-model/#0并且它按原样工作,但是一旦我删除提供的本地模型以强制使用云模型,我得到一个模糊的错误。
我与codelab不同的是:
// manager.registerLocalModelSource(localModelSource)
manager.registerCloudModelSource(cloudSource)
return FirebaseModelOptions.Builder()
.setCloudModelName(HOSTED_MODEL_NAME)
// .setLocalModelName("asset")
.build()
Run Code Online (Sandbox Code Playgroud)
注释掉“本地”模型配置,因此我强制项目使用托管的 ML Kit 模型。
但是,运行模型时出现以下错误:
E/MainActivity: com.google.firebase.ml.common.FirebaseMLException: The load task failed
com.google.android.gms.tasks.RuntimeExecutionException: com.google.firebase.ml.common.FirebaseMLException: The load task failed
at com.google.android.gms.tasks.zzu.getResult(Unknown Source:17)
at work.beltran.mlkitcustommodelcodelab.MainActivity$onCreate$$inlined$use$lambda$1.then(MainActivity.kt:61)
at com.google.android.gms.tasks.zzd.run(Unknown Source:26)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:172)
at android.app.ActivityThread.main(ActivityThread.java:6590)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:807)
Caused by: com.google.firebase.ml.common.FirebaseMLException: The load task failed
at com.google.android.gms.internal.firebase_ml.zzgy.zzf(Unknown Source:75)
at com.google.android.gms.internal.firebase_ml.zzgu.call(Unknown Source:8)
at com.google.android.gms.internal.firebase_ml.zzgp.zza(Unknown Source:0)
at com.google.android.gms.internal.firebase_ml.zzgq.run(Unknown Source:4)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:172)
at …
Run Code Online (Sandbox Code Playgroud) 我有一个包含一系列滑块的屏幕,用户可以在其中选择是否同意/不同意某些内容,例如:
Slider(
key: Key(questionId),
min: 0,
max: 5,
divisions: 5,
value: _value,
onChanged: (value) {
setState(() {
_value = value;
});
},
),
Run Code Online (Sandbox Code Playgroud)
我目前正在使用 实现 UI 测试testWidgets
,其中用户在 Sliders 中选择多个值,然后在用户单击按钮时存储,并且我希望能够选择一个值,例如,滑动滑块值'2'。
我怎样才能做到这一点?
我唯一的想法是使用tapAt
值在滑块中的精确像素坐标,但似乎非常复杂。
为了澄清起见,我正在询问 Widget 测试,如下所述:https : //flutter.dev/docs/cookbook/testing/widget/introduction