Ios Don';切换到另一个apple帐户后,无法获得任何推送通知

Ios Don';切换到另一个apple帐户后,无法获得任何推送通知,ios,xcode,apple-push-notifications,pem,Ios,Xcode,Apple Push Notifications,Pem,我目前正在开发一个ios应用程序。几天前,我使用了一个作为个人注册的苹果账户。为了接收通知,我使用fastlane pem:创建了一个pem文件。此库为您的Apple帐户中的推送通知(类型:Apple推送服务)生成证书。这个pem文件被添加到我们的服务器上,推送通知生效了,我收到了它们 然而,我们换了一个新的苹果账户,作为个人注册。我在XCode中使用了这个帐户,创建了一个新的应用程序id(之前还有另一个bundle id)和配置文件。我再次使用Fastlane pem创建了一个新的pem文件,

我目前正在开发一个ios应用程序。几天前,我使用了一个作为个人注册的苹果账户。为了接收通知,我使用fastlane pem:创建了一个pem文件。此库为您的Apple帐户中的推送通知(类型:Apple推送服务)生成证书。这个pem文件被添加到我们的服务器上,推送通知生效了,我收到了它们

然而,我们换了一个新的苹果账户,作为个人注册。我在XCode中使用了这个帐户,创建了一个新的应用程序id(之前还有另一个bundle id)和配置文件。我再次使用Fastlane pem创建了一个新的pem文件,并更新了服务器上的pem文件。由于某种原因,我现在没有收到通知。当我们更改为第一个帐户并再次更新pem文件时,它会再次工作。所以,我想这与新的苹果账户有关

有什么想法吗?谢谢

检查以下各项:

  • 您的Xcode项目中是否启用了推送功能
  • 是否在开发者门户中为应用程序启用了推送功能,是否为推送存储了证书
  • 这些证书有效吗?(开发者门户)
  • 检查您在AppDelegate中获得的通知设备令牌(如果仍然相同)。据我所知,是每个设备/应用组合创建的令牌。如果您的应用程序有另一个id,iOS会认为它是“另一个”应用程序,您将获得另一个令牌
  • 使用新id的应用是否请求远程通知?如果没有,您必须询问或查看iOS设置是否启用了注释

    • 我终于解决了这个问题。我不知道是什么原因导致了这个问题。我将苹果账号1上的应用程序转移到了苹果账号2上。因此,应用程序id也被传输。我删除了我以前在apple帐户2上使用的应用程序id。因此,我在苹果账户2上使用了从苹果账户1转移过来的应用程序id。证书没有被传输,所以我像以前一样创建了它们,并创建了pem文件。这就成功了

      在XCode中启用推送(和复选标记)。推送在开发者门户中启用(当我点击应用程序id时),并且有一个类型为“Apple推送服务”的证书。使用valid,您的意思是尚未达到到期日期?在这种情况下,它是有效的。设备令牌仍然相同。这就是为什么它很奇怪。一切看起来都很好。是的,我的意思是。也许你应该从你的设备上删除你的应用程序,然后用XCode重新安装。然后应用程序必须请求通知权限,并且(我认为)将生成一个新的设备令牌。顺便说一句:我们说的是iPhone或iPad,而不是模拟器?)已经这样做了。服务器确实获得了正确的设备令牌并发送通知。我只是在电话里看不到他们。此外,当我们切换回另一个帐户并更新pem文件时,它会起作用。顺便说一句,具有新id的应用程序确实会要求远程通知。看起来像是使用新应用程序id生成pem。您必须生成所有新的cer类分发,并开发新的推送cer。因为一个应用程序id使用所有cer。因此,请按照相同的步骤,使用新的cerI为旧的应用程序id生成所有新文件。因为有了苹果账户,我就有了一个不同的开发者门户。这样我肯定会有新的证书。问题是,我遵循了与旧应用程序相同的步骤。我必须使用生产证书,对吗?类型为“苹果推送服务”