Javascript 承诺在Android中,如何实现?
在Android上实现相同行为的最简单方法是什么?我的意思是我想让我的线程(不是主线程)等待网络操作,然后一个接一个地执行它们。在javascript中,由于Promise,有一种实现这种行为的简单方法Javascript 承诺在Android中,如何实现?,javascript,java,android,firebase,firebase-realtime-database,Javascript,Java,Android,Firebase,Firebase Realtime Database,在Android上实现相同行为的最简单方法是什么?我的意思是我想让我的线程(不是主线程)等待网络操作,然后一个接一个地执行它们。在javascript中,由于Promise,有一种实现这种行为的简单方法 exports.someFunction = functions.https.onRequest((req, res) => { const userId = req.query.user //long time ref.orderBy
exports.someFunction = functions.https.onRequest((req, res) => {
const userId = req.query.user
//long time
ref.orderByChild("parentId").equalTo(userId)
.on("value", function (snapshot) {
if (snapshot.val() === null) {
res.status(402)
return
}
snapshot.forEach(function (childSnapshot) {
const foo = childSnapshot.val();
getAccessToken().then(fistResponse => {
var json = JSON.parse(fistResponse);
accToken = json.access_token;
getMoreInformation(accToken, foo.bar).then(response => {
console.log(response)
if (isValid(response)) {
res.status(200)
} else {
res.status(402)
}
})})})})});
目前我正在使用的界面,但我想学习其他方式
我发现android中有类似的东西,这可能就是我想要的。在android上,你可以使用
任务s来实现这一点。事实上,大多数Firebase Android SDK返回任务
s,但不幸的是Firebase数据库API早于此,并使用自己的ValueEventListener
类
Firebase的Doug Stevenson是任务
s的大师,拥有:
- 给一个
- 写了一封信
- 回答了一个问题,该问题将Firebase侦听器映射到任务,以便您可以使用
任务。Whalll(…)
(相当于承诺。all(…)
等待所有项目加载
在Android上,您可以使用任务
s。事实上,大多数Firebase Android SDK返回任务
s,但不幸的是,Firebase数据库API早于此,并使用自己的ValueEventListener
类
Firebase的Doug Stevenson是任务
s的大师,拥有:
- 给一个
- 写了一封信
- 回答了一个问题,该问题将Firebase侦听器映射到任务,以便您可以使用
任务。Whalll(…)
(相当于承诺。all(…)
等待所有项目加载
java中没有等待操作,您需要使用一个接口。我已经提到过。还没有尝试过,但我会回来提供更多信息。java中没有等待操作,您需要使用一个接口。我已经提到过。还没有尝试过,但我会回来提供更多信息。