我正在尝试为我的应用程序设置推送通知系统。我有服务器和开发人员许可证来设置推送通知服务。
我目前正在Swift中运行我的应用。我希望能够从服务器远程发送通知。我怎样才能做到这一点?
尽管可以很好地处理推送通知,但我仍然相信可以立即共享完整的完整案例以简化操作:
要注册APNS的应用程序,(在AppDelegate.swift中的didFinishLaunchingWithOptions方法中包含以下代码)
iOS 9
var settings : UIUserNotificationSettings = UIUserNotificationSettings(forTypes:UIUserNotificationType.Alert|UIUserNotificationType.Sound, categories: nil)
UIApplication.sharedApplication().registerUserNotificationSettings(settings)
UIApplication.sharedApplication().registerForRemoteNotifications()
在IOS 10之后
引入了UserNotifications框架:
导入UserNotifications框架,并在AppDelegate.swift中添加UNUserNotificationCenterDelegate
注册APNS的申请
let center = UNUserNotificationCenter.current()
center.requestAuthorization(options:[.badge, .alert, .sound]) { (granted, error) in
// If granted comes true you can enabled features based on authorization.
guard granted else { return }
application.registerForRemoteNotifications()
}
这将调用以下委托方法
func application(application: UIApplication,didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) {
//send this device token to server
}
//Called if unable to register for APNS.
func application(application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: NSError) {
println(error)
}
在收到通知后,以下代表将致电:
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
println("Recived: \(userInfo)")
//Parsing userinfo:
var temp : NSDictionary = userInfo
if let info = userInfo["aps"] as? Dictionary<String, AnyObject>
{
var alertMsg = info["alert"] as! String
var alert: UIAlertView!
alert = UIAlertView(title: "", message: alertMsg, delegate: nil, cancelButtonTitle: "OK")
alert.show()
}
}
要确定给定的许可,我们可以使用:
UNUserNotificationCenter.current().getNotificationSettings(){ (setttings) in
switch setttings.soundSetting{
case .enabled:
print("enabled sound")
case .disabled:
print("not allowed notifications")
case .notSupported:
print("something went wrong here")
}
}
因此,APNS的清单:
注意: 如果在SSL证书后创建配置文件,那会很好。
使用代码:
我正在尝试设置firebase-cloud-messaging来向用户显示通知。使用web通知,所有工作都按预期进行。 不过,我也想通过应用程序发送它们,但应用程序还不认可服务工作者。 我的头都绕不过去了。如何使用vue.js安卓/iOS应用接收推送通知?我应该使用插件吗?如果是,哪些插件?目前使用quasar、Vue.js、FCM。
我正在尝试从远程服务器向应用程序进行非常简单的推送。 我已根据[1]在Azure上设置了通知中心,但我无法获取设备的调试消息。我不想使用移动服务从DB表读/写 我在Swift中这样做,但我在互联网上没有发现任何真正从服务器接收推送的是iOS Swift作为完整的教程。 例如,我不知道如何在swift中编写以下代码: 到目前为止,这是我在AppDelegate中的代码(我从[2]中获得的一些代码):
我知道在我发送请求并期望响应的情况下,或者在IP链接了域的情况下,IP地址会更有效,而不是域作为服务器的ID。但是,我的手机没有链接的域名和IP可以很容易地改变。 那个“ID”是什么,使Google的服务器能够将通知发送给我?
我成功地集成了firebase。当我仅出于测试目的使用firebase站点的云消息发送通知时,设备会收到通知。但在我的应用程序中,我需要使用firebase从一台设备向另一台设备发送通知。。如何实现这一点。Swift 4,Xcode 10以下是一些代码:
我正在尝试使用PHP和V3 api为Google日历设置推送通知。 我拥有Auth2.0权限,可以从我的应用程序在谷歌上创建事件。现在我想知道用户何时对google日历进行任何更改(CRUD操作)。 这是我的代码: 这是输出: 到目前为止,我不知道为什么address返回null,也许这就是问题所在。但我不知道如何修复它。 同时阅读以下内容:#26730263和我自己的代码没有太大区别。 我做了g
我试图让我的应用程序在Xcode 8.0下运行,但遇到了一个错误。我知道这段代码在以前的swift版本中运行良好,但我假设新版本中的代码有所更改。以下是我试图运行的代码: 我得到的错误是“参数标签”(forTypes:,categories:)“不匹配任何可用的重载” 有没有其他命令可以让我试着让它工作?