1.开发者账号
2.配置SSL证书和provisioning profiles
3.创建证书步骤
删除多余证书的命令:grep -ifirstpush*
a.App IDs 创建
进入iTunes Connect开发者中心 --- Certificates,Identifiers&Profiles---iOS Apps---Identifiers(App IDs)
起名:xxPushID
App ID Suffix: 必须选Explicit App ID,含推送服务。com.domainname.appname
勾选Push Notifications
submit
b.创建推送证书
Certificates--- Development
勾选SSL证书--next --select an App ID(选择a步骤创建的App IDs)
Choose CSR file (钥匙串访问--证书助理 -- 从证书颁发结构请求证书 -- 输入开发者账号,选择存储到磁盘) -- Generete -- Download(会生成一个证书文件,双击安装)
c.绑定App ID和界面证书的ProvisioningProfiles
Development --选择ID和签名和测试设备 -- 起名 -- Generate -Download (会生成一个.mobileprovison的配置文件,双击安装)
(注:如果要发布 ,请选择Distruction)
在钥匙串中导出push证书的.p12证书,此证书是服务器推送需要的证书。
4.推送
推送证书生成参考网址:最后三步骤合并文件
http://www.cnblogs.com/qq78292959/archive/2012/07/16/2593651.html
创建新工程 -- Organization Identifier要跟ID创建的名称相同(com.domainname.appname)--create
在appdelegate中didFinishLauching方法中写推送服务,注意8.0的方法已经改变,需要判断一下当前设备的版本
if ([IOS_VERSION intValue] >= 8) {
UIUserNotificationSettings * notificationSettings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge |UIUserNotificationTypeSound | UIUserNotificationTypeAlert categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
[[UIApplication sharedApplication] registerForRemoteNotifications];
} else {
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeAlert)];
}
在方法里拿到deviceToken传给服务器
如果自己没有服务器可以用www.parse.com来测试推送
不需要秘钥可以重新创建。如果是自家服务器可以导入的.p12证书给服务器。
下载iOS的SDK,配置ID
//红框里的id是服务器给的。demo的key在parse网站的setting的keys里可以找到。
接下来更改相应的证书:Build Settings -- Code Signing -- Provisioning Profiles和Code Signing Identity里选择相应的配置文件
更改General里的Bundle Identifier,也可在plist文件里更改为com.domainname.appname
SDK里需要完成接收到推送消息的方法。
真机测试证书和发布证书的生产方式是类似的。
5.越狱打包方法
越狱打包:
1.plist中添加键值对
key:SignerIdentity
value:Apple iPhone OS Application Signing
2.终端运行
zip -r HNAir.ipa *
配置文件:
http://www.cnblogs.com/bandy/p/3501456.html