报错: Domain=NSCocoaErrorDomain Code=3000 "未找到应用程序的“aps-environment”的权利字符串"

Code=3000 "未找到应用程序的“aps-environment”的权利字符串" 解决办法

push,即远程通知,教材的资料较少,想实践的话,只能每年花99美元买苹果开发者帐号才能玩这个,所以国内资料较少~

搞了一天证书问题~基本弄明白了

push ,develop需要三个验证:

应用程序服务器的证书,用于连接APNs

苹果机上装的证书,用于向iphone安装程序

iphone上装的配置文件

code=3000是由于iphone上的配置文件的app identity是带通配符的那种,导致能装上但拿不到token

打开

第零步

用来调试的iphone插电脑,xCode里command+control+O打开organizer,把这台iphone用做开发机。此过程会将手机信息上传给苹果,所以需要一两分钟,骚等片刻。

第一步

如果你的App ID已经正确建立,跳过此步。需注意的是,可push的程序ID不允许带通配符!App ID中 带通配符的请自觉一点。

进入App IDs,点击New App ID,新建一个App.

Desciption填注释性的文字,例如PushTest。

bundle seed ID相同的话,可以用带通配符的配置文件。可以Push的应用程序不允许带通配符。这里我们选择生成新的还是使用已有的都无所谓。

Bundle identifier作为程序的唯一标识。建议用反向域名样式的字符串,比如com.alibaba.pushtestdemo

填好以后submit

第二步

在provisioning中,点击New Profile,Profile Name起注释性的名字,我起的是OpenThreadPushTest。

Certificates勾选你向iphone安装程序时,电脑上装的证书。一般用户这里都是只有一个certificate可选,勾选之。

App ID选第一步建立的App。

Devices中为了方便直接点Select All,然后点Submit。

提交之后下载配置文件,这个配置文件要安装在手机的,下载后名字为OpenThreadPushTest.mobileprovision.

手机连上电脑,把这个mobileprovision安装到手机上

第三步

打开项目的Targets-AppName

Properties-Identifier

改为com.alibaba.pushtestdemo

Build-Code Signing-Code Signing Identity

左边Any iOS,右边选择第4步中安装的配置文件(OpenThreadPushTest)。这个配置文件不能是带通配符的其他的配置文件,否则会导致error code 3000,未找到应用程序的权利字符串。
原文地址:https://www.cnblogs.com/linxiu-0925/p/5055489.html