Android Kotlin Promise 是啥?
Posted
技术标签:
【中文标题】Android Kotlin Promise 是啥?【英文标题】:Android Kotlin what is Promise?Android Kotlin Promise 是什么? 【发布时间】:2020-02-02 15:36:43 【问题描述】:我在 android (Kotlin) 上使用加载一些页面的 WebView 工作,并且我与这个页面有交互 @javascript接口
我的客户写了一些我必须实现的功能,例如:
@JavascriptInterface
fun fileExists(path: String): Promise<Boolean>?
return null
但是没有找到类Promise,也不知道它是什么,需要使用哪个库。
他唯一的答案是“看看 Cordova 如何将 Promise 转换为 Java 对象”
也许有人可以帮助我,或者只是提供一些信息,现在我什至不知道方向
我试过这个 2 实现“org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version” 实现“org.jetbrains.kotlin:kotlin-stdlib-js:$kotlin_version”
但里面没有 Pormise 对象。
感谢您的帮助
【问题讨论】:
【参考方案1】:Promise 作为一种模式在JS
世界中是众所周知的,但它在Android
的人们中并不那么流行,可能是因为我们有一个非常强大的RxJava
库。但是,如果您只需要 RxJava
用于单值响应(Single),例如单个网络请求和像 flatMap
和 map
这样的耦合转换操作,该怎么办。如果是这种情况,那么您应该考虑适用于单值响应的 Promise
模式。
Promise
的使用示例:
fun postItem(item: Item)
preparePostAsync()
.thenCompose token ->
submitPostAsync(token, item)
.thenAccept post ->
processPost(post)
fun preparePostAsync(): Promise<Token>
// makes request an returns a promise that is completed later
return promise
【讨论】:
我的问题是“Promise”类不存在。我需要添加哪个库才能拥有它?以上是关于Android Kotlin Promise 是啥?的主要内容,如果未能解决你的问题,请参考以下文章
在Android Kotlin中,将onclick事件传递给viewholder的正确方法是啥?
android kotlin 确保 viewPager2 pageItem resume 仅在屏幕上触发的当前方法是啥?