突然,我收到用于初始化Google Mobile Ads SDK的代码的警告。(它已经工作了几周,没有任何警告,但是现在看来,这是一种编写代码的新方法。)
这是我的代码:
GADMobileAds.configure(withApplicationID: "ca-app-pub-################~##########")
Run Code Online (Sandbox Code Playgroud)
但是它给了我这个警告:不建议使用“ configure(withApplicationID :)”:使用[GADMobileAds.sharedInstance startWithCompletionHandler:]
我试图这样重写它(带或不带方括号):
GADMobileAds.sharedInstance startWithCompletionHandler: "ca-app-pub-################~##########"
Run Code Online (Sandbox Code Playgroud)
但这只是给我一个预期的错误。
我该怎么写?谢谢!

我有一个计划的云功能(使用Google 的新解决方案),计划在每周一凌晨 12:00 运行。
export const updateHighScores = functions.pubsub.schedule('0 0 * * 1').onRun((context) => {
// (code)
// console.log(‘This code will run every Monday at 12:00 AM UTC’);
});
Run Code Online (Sandbox Code Playgroud)

我原以为它会在 UTC 时间凌晨 12:00 运行;然而,当午夜 UTC 到来时,什么也没发生。所以我上床睡觉,为我预定的云功能不起作用而感到难过,但决定继续努力。
但是第二天我检查了日志,看起来它确实有效,但它在太平洋时间上午 12:00 运行。

知道为什么这在太平洋时间午夜而不是 UTC 运行吗?
(我将通过更改所有这些变量并观察它如何影响预定的云函数来进行大量猜测和检查,但如果有人知道的话,我不妨在这里问一下。谢谢! )
我的应用程序有一个最高得分表,该表使用.queryOrdered(byChild:“ userHighScore”)和.queryLimited(toLast:100)来获得最高100分:
func getTopScores() {
var scores = [String]()
self.reference
.child("users")
.queryOrdered(byChild: "userHighScore")
.queryLimited(toLast: 100)
.observeSingleEvent(of: .value, with: { (snapshot) in
for child in snapshot.children.reversed() {
if let dataSnapshot = child as? DataSnapshot, let user = dataSnapshot.value as? [String:AnyObject] {
if let userHighScore = user["userHighScore"] as? Int {
var stringToAppend = "\(scores.count+1). "
if let userName = user["userName"] as? String {
stringToAppend += " \(userName) • \(userHighScore)"
}
scores.append(stringToAppend)
}
}
}
})
}
Run Code Online (Sandbox Code Playgroud)
问题是当有平局得分时。
理想情况下,第一个获得该分数的用户应高于表中具有相同分数的其他用户(而获得该分数的最新用户将是拥有相同分数的用户中最低的)。
但是,该表以与Firebase实时数据库中出现的相同的随机顺序显示得分相同的得分。
有没有办法按时间顺序排序并列分数?
我已经为此花了好几个小时。在此先感谢您的帮助!
每次得分达到以 09 结尾的数字时,我都会播放 1 个声音。
我还有 4 种声音,每次乐谱达到以 19、29、39、49、59、69、79 和 89 结尾的数字时,它们会依次播放。
然后我有 1 个声音,每次得分达到以 99 结尾的数字时都会播放。
我的代码有效,但我觉得应该有一种更优雅的方法。
if (score == 9 || score == 109 || score == 209 ...) {
play('sound1.mp3');
}
if (score == 19 || score == 59 || score == 119 || score == 159 ...) {
play('sound2.mp3');
}
if (score == 29 || score == 69 || score == 129 || score == 169 ...) {
play('sound3.mp3');
}
if (score == 39 || score …Run Code Online (Sandbox Code Playgroud)