我在iOS上遇到静音通知问题.
当我的申请处于后台时,我不会收到FCM发送的无声通知.但是,如果我尝试直接发送到APNS,则会成功收到通知.
这是发送给FCM的JSON:
{
"to" : "<token>",
"priority": "high",
"content_available": true,
"data" : {
"<key>" : "<string>",
"<key2>" : "<string>"
}
Run Code Online (Sandbox Code Playgroud)
}
这是直接发送给APNS的JSON:
{
"aps": {
"content-available": 1
},
"<key>": "<string>",
"<key>": "<string>"
}
Run Code Online (Sandbox Code Playgroud)
我已经尝试删除"优先级"键,因为我看到有人说如果已经设置了"content_available",我不应该设置优先级.它没用.
notifications apple-push-notifications ios firebase firebase-cloud-messaging
我使用JavaScriptCore框架在iOS中执行以下javascript代码.javascript代码是浏览器化的.
var myCallback = undefined;
*browserify logic*
{
1: [function(require, module, exports) {
var q = require('./user');
var p = new Promise(function(resolved, reject) {
myCallback = function() {
resolved('test');
}
});
p.then(function(x) {printFunc('test');}).catch(function(e){printFunc('test2');});
q();
}, {
"./user": 2
}],
2: [function(require, module, exports) {
function q() {
printFunc("Callback called!");
myCallback();
printFunc("Callback called end!");
}
module.exports = q;
}, {}]
}, {}, [1]);
Run Code Online (Sandbox Code Playgroud)
printFunc是一个在Swift中实现的方法,只是打印一些东西到控制台.这是实施:
let printFunction : @convention(block) (String) -> String = {input in
print("|\(input)|")
return ""
}
Run Code Online (Sandbox Code Playgroud)
问题是我收到以下错误:
|Callback …Run Code Online (Sandbox Code Playgroud)