`
sinaier
  • 浏览: 35721 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

iPhone开发基础学习 在程序里设置Push(收藏)

阅读更多
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开发基础教程(完整版书+源代码)

    《iPhone开发基础教程》是一本全面介绍iOS应用开发的书籍,配合提供的源代码,为初学者提供了详实的学习路径。本书旨在帮助读者掌握使用Xcode工具进行iPhone应用程序开发的基础知识和技能。 首先,我们需要了解iOS...

    IPHONE程序开发基础

    《IPHONE程序开发基础》是针对初学者设计的...通过《IPHONE程序开发基础》的深入学习,你将具备开发基本iOS应用的能力,为进一步提升到高级主题打下坚实基础。在实践中不断探索,你将成为一名出色的iPhone应用开发者。

    iPhone开发基础教程

    《iPhone开发基础教程》是一本由漆振和解巧云等人翻译的全面介绍iPhone应用程序开发的书籍,由人民邮电出版社出版。这本书旨在为初学者提供一条清晰的学习路径,让他们能够掌握开发iOS应用所需的基本技能和知识。...

    iphone开发基础教程

    《iPhone开发基础教程》是一本面向初学者的iOS开发指南,专为想要涉足iPhone应用程序开发的人群设计。这本书深入浅出地讲解了如何利用苹果的iOS SDK和Swift或Objective-C编程语言来创建功能丰富的iPhone应用。以下是...

    iPhone开发基础教程附带的源代码

    在iOS开发领域,尤其是对于初学者而言,iPhone开发基础教程是获取知识的重要资源。这个教程通常涵盖了一系列的基础概念,从安装Xcode IDE到创建第一个"Hello, World!"应用,再到更复杂的UI设计、网络编程、数据存储...

    iphone 开发基础教程 源代码

    通过《iPhone开发基础教程》的学习,开发者将逐步掌握这些技能,从零开始构建自己的iOS应用。源代码文件提供了实际操作的机会,帮助理论知识与实践相结合,加速学习进程。在实践中遇到问题时,可以参考书中的解释或...

    IPhone 开发基础教程源码

    《iPhone开发基础教程源码》是一份针对初学者的iPhone应用程序开发资料,源自2009年10月12日。这份资源包含了多个项目,旨在帮助开发者掌握苹果iOS平台上的编程技能,特别是针对iPhone设备。以下是这个压缩包中可能...

    iphone开发基础教程源码

    在iOS开发领域,iPhone应用程序的开发是至关重要的...通过这个iPhone开发基础教程源码,你将有机会亲自动手实践以上所有知识点,从实践中学习和成长。不断练习,结合官方文档和社区资源,你将成为一名熟练的iOS开发者。

    iphone开发基础控件UINavigationController

    iphone中的基础控件UINavigationController,适合初学者,主要学习UINavigationController的基本属性和常用方法调用。 UINavigationController也是一种常用的容器,跟前边学过的tabbar差不多,在这个容器中可以添加...

    iphone开发基础教程(源代码)

    《iPhone开发基础教程》是一本面向初学者的iOS开发...总之,《iPhone开发基础教程》的源代码涵盖了iOS开发的多个重要方面,通过学习和实践这些代码,初学者能够逐步建立起扎实的iOS开发基础,从而迈向专业开发者之路。

    Iphone 开发基础

    《Iphone 开发基础》是针对初学者设计的一份简单教程,旨在帮助新手入门iOS应用开发,特别是聚焦在iPhone平台。这份教程涵盖了从基础概念到实际项目开发的多个方面,让学习者能够逐步掌握iPhone应用的开发技能。 一...

    iPhone开发基础教程.rar

    《iPhone开发基础教程》是一本全面介绍iOS应用开发的中文指南,主要针对初学者,旨在帮助读者快速掌握使用Xcode和Objective-C进行iPhone应用程序开发的基本技能。教程共分为18个章节,涵盖了从安装开发环境到发布...

    Beginning iPhone 3 Development souce/ iPhone 开发基础教程 源代码

    在iOS应用开发的世界中,Apple的iPhone平台无疑是最引人注目的舞台之一。对于那些希望踏入这个领域的开发者来说,《 Beginning iPhone 3 Development》是一本不可多得的入门教程。本书旨在帮助初学者理解iOS编程的...

    IPhone3开发基础教程(120M绝对高清)

    《iPhone3开发基础教程》是一本专为初学者设计的指南,旨在帮助读者掌握iOS应用开发的基本技能。这本书以高清的格式呈现,提供了一个愉快的阅读体验,特别适合那些希望通过学习开发iPhone3应用程序来踏入移动开发...

    iPhone push功能源码

    在iOS开发中,推送通知(Push Notification)是应用与用户互动的重要方式,它可以在应用程序未运行或在后台时,向用户发送消息。本资源提供的"iPhone push功能源码"包括了"pushMe"服务器端和"pushTest"客户端两部分...

    iphone开发基础教程随书源码

    《iPhone开发基础教程随书源码》是一份针对初学者的宝贵资源,旨在帮助读者深入理解iOS应用开发的基础知识。这份源码包含了多个项目实例,每个项目都对应书中讲解的关键概念和技术,通过实际操作,让学习者能更直观...

    iphone 4与iPad开发基础教程代码

    总之,"iPhone 4与iPad开发基础教程代码"旨在引导初学者掌握iOS开发的基本技能,通过实际的代码示例,理解如何针对不同设备进行优化,以及如何利用iOS SDK中的各种框架和功能来构建功能丰富的应用。在学习过程中,...

    iphone开发常用知识点大集合

    在iOS开发领域,尤其是针对iPhone应用的开发,开发者需要掌握一系列关键知识点,这些知识点构成了iPhone开发的基础和核心。本文将围绕“iPhone开发常用知识点大集合”进行深入探讨,旨在为开发者提供一个全面的学习...

    iPhone开发实战

    《iPhone开发实战》一书,主要涵盖了iOS应用开发的核心技术和实战经验,旨在帮助开发者深入理解并掌握iPhone应用程序的开发流程。以下将详细阐述其中的知识点: 1. **Swift编程语言**:作为iOS开发的主要语言,...

    iphone开发基础教程(源代码)-完整.7z

    《iPhone开发基础教程》是一本面向初学者的iOS应用程序开发指南,主要使用Apple的集成开发环境(IDE)Xcode进行教学。源代码是学习编程的重要组成部分,它提供了实际操作和理解概念的实例。这个压缩包包含了整个教程...

Global site tag (gtag.js) - Google Analytics