如何在android中创建我自己的com.google.android.gms.tasks.Task?

Nay*_*ude 4 java android kotlin firebase google-cloud-firestore

我想在我的代码中实现以下目标

fun addAsync(num1: Int, num2: Int): Task<Int> {
    var result: Task<Int> = //Task.fromResult(add(num1,num2))
    return result
}

fun add(num1: Int, num2:Int): Int {
    return num1+num2
}
Run Code Online (Sandbox Code Playgroud)

在这里,我想知道如何按照 C# 中的方式从结果创建任务。

Her*_*gon 7

正确的方法是使用TaskCompletionSource

fun addAsync(num1: Int, num2: Int): Task<Int> {
    val t = TaskCompletionSource<Int>();

    // in some thread or whatever
    t.setResult(add(num1, num2))

    return t.task
}

fun add(num1: Int, num2:Int): Int {
    return num1+num2
}
Run Code Online (Sandbox Code Playgroud)