Zhe*_*hen 16 objective-c apple-push-notifications ios
我正在通过以下行为为我的应用程序实施APNS推送
1)如果应用程序未激活,即在后台或尚未启动:
用户将收到弹出消息,点击后会将他/她带到应用程序的第3个标签页(参见下面的代码)
-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
self.tabController.selectedIndex = 3;
}
Run Code Online (Sandbox Code Playgroud)
2)如果应用程序已启动且当前处于活动状态
将不会显示弹出警报,并且新通知的数量将在第3个选项卡上显示为数字

我的问题是如何确定用户的应用程序是否处于活动状态?如何以及在何处实施检查以便我可以设置2种不同的行为?
Sta*_*glo 38
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
if (application.applicationState == UIApplicationStateActive) {
// update the tab bar item
}
else {
self.tabController.selectedIndex = 3;
}
}
Run Code Online (Sandbox Code Playgroud)
我对新现代游客的回答......
Swift变量:简单地将其放在外部类的任何位置以检查app活动状态.
var isApplicationActive:Bool {
get {return UIApplication.sharedApplication().applicationState == .Active}
}
Run Code Online (Sandbox Code Playgroud)
所以你的代码在swift中会是
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
if isApplicationActive {
//Change badge number ...
} else {
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13225 次 |
| 最近记录: |