iPhone开发基础学习 在程序里设置Push
iPhone开发基础学习 在程序里设置Push是本文要介绍的内容,最近做项目有一个需求,要在程序得系统设置里进行push的设置。在网上搜了几天资料没找着啥。今天忽然心血来潮跟踪系统注册push时得代码,居然发现有可行得解决方法,思路如下:
1、在iphone得framework里的UIApplication.h中有以下函数:
@interface UIApplication (UIRemoteNotifications)
- (void)registerForRemoteNotificationTypes:(UIRemoteNotificationType)
types __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
- (void)unregisterForRemoteNotifications __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
// calls -registerForRemoteNotificationTypes with UIRemoteNotificationTypeNone
// returns the enabled types, also taking into account any systemwide settings;
doesn't relate to connectivity
- (UIRemoteNotificationType)enabledRemoteNotificationTypes __OSX_AVAILABLE_STARTING(__MAC_NA,__IPHONE_3_0);
@end
2、首先可以用[[UIApplication sharedApplication] enabledRemoteNotificationTypes]获取到允许得push推送类型。然后再调用registerForRemoteNotificationTypes进行修改。若要关闭程序得push服务,可调用unregisterForRemoteNotifications
、补充:以上想法以实现。补充部分代码。settingsData为tableview的数据源数组
a、获取系push设置,用于显示给用户
//push设置
NSMutableArray * pushOptions = [[NSMutableArray alloc] init];
UIRemoteNotificationType notificationType = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];
NSMutableDictionary * soundNotice = [[NSMutableDictionary alloc] initWithObjectsAndKeys: @"声音", @"name", @"0", @"status", nil];
if (notificationType & UIRemoteNotificationTypeSound) {
[soundNotice setValue:@"1" forKey:@"status"];
}
[pushOptions addObject:soundNotice];
[soundNotice release];
NSMutableDictionary * alertNotice = [[NSMutableDictionary alloc] initWithObjectsAndKeys: @"提醒", @"name", @"0", @"status", nil];
if (notificationType & UIRemoteNotificationTypeAlert) {
[alertNotice setValue:@"1" forKey:@"status"];
}
[pushOptions addObject:alertNotice];
[alertNotice release];
NSMutableDictionary * badgeNotice = [[NSMutableDictionary alloc] initWithObjectsAndKeys: @"标记", @"name", @"0", @"status", nil];
if (notificationType & UIRemoteNotificationTypeBadge) {
[badgeNotice setValue:@"1" forKey:@"status"];
}
[pushOptions addObject:badgeNotice];
[badgeNotice release];
NSDictionary * pushConfig = [[NSDictionary alloc] initWithObjectsAndKeys: @"通知设置", @"groupName", pushOptions, @"data", nil];
[self.settingsData addObject:pushConfig];
[pushOptions release];
[pushConfig release];
b、获取用户设置的数据放入pushdata,然后向系统提交设置
NSArray * pushData = [[settingsData objectAtIndex:indexPath.section] objectForKey:@"data"];
NSInteger length = [pushData count];
UIRemoteNotificationType myType = 0;
for (NSInteger i =0; i< length; i++) {
if ([[[pushData objectAtIndex:i] objectForKey:@"status"] intValue] ==1)
{
switch (i) {
case 0:
myTypemyType = myType|UIRemoteNotificationTypeSound;
break;
case 1:
myTypemyType = myType|UIRemoteNotificationTypeAlert;
break;
case 2:
myTypemyType = myType|UIRemoteNotificationTypeBadge;
break;
default:
break;
}
}
}
if (myType != 0) {
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:myType];
}
else {
[[UIApplication sharedApplication] unregisterForRemoteNotifications];
}
以上方案暂未用于代码实现。。。。。。。。。。。。。。
分享到:
相关推荐
《iPhone开发基础教程》是一本全面介绍iOS应用开发的书籍,配合提供的源代码,为初学者提供了详实的学习路径。本书旨在帮助读者掌握使用Xcode工具进行iPhone应用程序开发的基础知识和技能。 首先,我们需要了解iOS...
《IPHONE程序开发基础》是针对初学者设计的...通过《IPHONE程序开发基础》的深入学习,你将具备开发基本iOS应用的能力,为进一步提升到高级主题打下坚实基础。在实践中不断探索,你将成为一名出色的iPhone应用开发者。
《iPhone开发基础教程》是一本由漆振和解巧云等人翻译的全面介绍iPhone应用程序开发的书籍,由人民邮电出版社出版。这本书旨在为初学者提供一条清晰的学习路径,让他们能够掌握开发iOS应用所需的基本技能和知识。...
《iPhone开发基础教程》是一本面向初学者的iOS开发指南,专为想要涉足iPhone应用程序开发的人群设计。这本书深入浅出地讲解了如何利用苹果的iOS SDK和Swift或Objective-C编程语言来创建功能丰富的iPhone应用。以下是...
在iOS开发领域,尤其是对于初学者而言,iPhone开发基础教程是获取知识的重要资源。这个教程通常涵盖了一系列的基础概念,从安装Xcode IDE到创建第一个"Hello, World!"应用,再到更复杂的UI设计、网络编程、数据存储...
通过《iPhone开发基础教程》的学习,开发者将逐步掌握这些技能,从零开始构建自己的iOS应用。源代码文件提供了实际操作的机会,帮助理论知识与实践相结合,加速学习进程。在实践中遇到问题时,可以参考书中的解释或...
《iPhone开发基础教程源码》是一份针对初学者的iPhone应用程序开发资料,源自2009年10月12日。这份资源包含了多个项目,旨在帮助开发者掌握苹果iOS平台上的编程技能,特别是针对iPhone设备。以下是这个压缩包中可能...
在iOS开发领域,iPhone应用程序的开发是至关重要的...通过这个iPhone开发基础教程源码,你将有机会亲自动手实践以上所有知识点,从实践中学习和成长。不断练习,结合官方文档和社区资源,你将成为一名熟练的iOS开发者。
iphone中的基础控件UINavigationController,适合初学者,主要学习UINavigationController的基本属性和常用方法调用。 UINavigationController也是一种常用的容器,跟前边学过的tabbar差不多,在这个容器中可以添加...
《iPhone开发基础教程》是一本面向初学者的iOS开发...总之,《iPhone开发基础教程》的源代码涵盖了iOS开发的多个重要方面,通过学习和实践这些代码,初学者能够逐步建立起扎实的iOS开发基础,从而迈向专业开发者之路。
《Iphone 开发基础》是针对初学者设计的一份简单教程,旨在帮助新手入门iOS应用开发,特别是聚焦在iPhone平台。这份教程涵盖了从基础概念到实际项目开发的多个方面,让学习者能够逐步掌握iPhone应用的开发技能。 一...
《iPhone开发基础教程》是一本全面介绍iOS应用开发的中文指南,主要针对初学者,旨在帮助读者快速掌握使用Xcode和Objective-C进行iPhone应用程序开发的基本技能。教程共分为18个章节,涵盖了从安装开发环境到发布...
在iOS应用开发的世界中,Apple的iPhone平台无疑是最引人注目的舞台之一。对于那些希望踏入这个领域的开发者来说,《 Beginning iPhone 3 Development》是一本不可多得的入门教程。本书旨在帮助初学者理解iOS编程的...
《iPhone3开发基础教程》是一本专为初学者设计的指南,旨在帮助读者掌握iOS应用开发的基本技能。这本书以高清的格式呈现,提供了一个愉快的阅读体验,特别适合那些希望通过学习开发iPhone3应用程序来踏入移动开发...
在iOS开发中,推送通知(Push Notification)是应用与用户互动的重要方式,它可以在应用程序未运行或在后台时,向用户发送消息。本资源提供的"iPhone push功能源码"包括了"pushMe"服务器端和"pushTest"客户端两部分...
《iPhone开发基础教程随书源码》是一份针对初学者的宝贵资源,旨在帮助读者深入理解iOS应用开发的基础知识。这份源码包含了多个项目实例,每个项目都对应书中讲解的关键概念和技术,通过实际操作,让学习者能更直观...
总之,"iPhone 4与iPad开发基础教程代码"旨在引导初学者掌握iOS开发的基本技能,通过实际的代码示例,理解如何针对不同设备进行优化,以及如何利用iOS SDK中的各种框架和功能来构建功能丰富的应用。在学习过程中,...
在iOS开发领域,尤其是针对iPhone应用的开发,开发者需要掌握一系列关键知识点,这些知识点构成了iPhone开发的基础和核心。本文将围绕“iPhone开发常用知识点大集合”进行深入探讨,旨在为开发者提供一个全面的学习...
《iPhone开发实战》一书,主要涵盖了iOS应用开发的核心技术和实战经验,旨在帮助开发者深入理解并掌握iPhone应用程序的开发流程。以下将详细阐述其中的知识点: 1. **Swift编程语言**:作为iOS开发的主要语言,...
《iPhone开发基础教程》是一本面向初学者的iOS应用程序开发指南,主要使用Apple的集成开发环境(IDE)Xcode进行教学。源代码是学习编程的重要组成部分,它提供了实际操作和理解概念的实例。这个压缩包包含了整个教程...