我在await
上没有看到任何com.google.android.gms.tasks.Task
同步api。我想念什么吗?我正在尝试迁移以在Play服务中使用新的* Client类。我已经将代码设计为在另一个线程中运行并使用PendingResult.await
。我的代码是这样的:
val pendingResult = Auth.GoogleSignInApi.silentSignIn(TwinkleApplication.instance.gapiClient)
val account = pendingResult.await(10, TimeUnit.SECONDS)
我希望使用它,但是不知道如何继续。
val signin = GoogleSignIn.getClient(ctx, Global.getGSO())
val task = signin.silentSignIn()
答案 0 :(得分:2)
Tasks
类包括静态await
方法-在Java中,我这样做:
GoogleSignInClient googleSignInClient = GoogleSignIn.getClient(context, gso);
Task<GoogleSignInAccount> task = googleSignInClient.silentSignIn();
try {
GoogleSignInAccount account = Tasks.await(task);
...
} catch (ExecutionException e) {
// task failed
} catch (InterruptedException e) {
// an interrupt occurred while waiting for the task to finish
}