当我删除我的iOS应用程序推送通知状态仍然存在

当我第一次使用Xcode安装我的iOS应用程序时,我的iPhone询问我是否要启用推送通知。

我可以发送通知,并且徽章显示我发送的号码。

当我从我的iPhone中删除应用程序,并在Xcode中重build它,并重新安装在我的iPhone(使用Xcode):

  • 该设备不询问是否要启用推送。
  • 徽章在那里, 记得最后一个号码。

我尝试了一个新的设备上的相同的应用程序(安装IPA),并要求我的权限。

我怎样才能完全让我的设备忘记了应用程序?

谢谢

有一种解决方法,包括将系统时间提前两天,重新启动设备,然后将系统时间更改回现在。 iOSdevise为每个应用程序只允许每天推送一次。

重置iOS上的推送通知权限警报当第一次启用推送的应用程序注册推送通知时,iOS会询问用户是否希望接收该应用程序的通知。 一旦用户对此警报作出响应,除非设备已恢复或应用程序已卸载至less一天,否则不会再次出现。

如果您想模拟首次运行您的应用,则可以将该应用卸载一天。 您可以实现后者,而无需等待一天,方法是将系统时钟设置为一天或更长时间,完全closures设备,然后重新打开设备。

http://developer.apple.com/library/ios/#technotes/tn2265/_index.html

从Apple的文档更新为iOS 7 – > iOS 10:

在iOS 7及更高版本中,第一次启用推送的应用程序注册推送通知时,iOS会询问用户是否希望接收该应用程序的通知。 一旦用户对此警报作出响应,除非设备已恢复或应用程序已卸载至less一天,否则不会再次显示。

如果您想模拟首次运行您的应用,则可以将该应用卸载一天。 你可以通过以下步骤实现后者,而不需要等待一天:

  1. 从设备上删除您的应用程序。
  2. 完全closures设备并重新打开。
  3. 进入设置>常规>date和时间,并设置date提前一天或更多。
  4. 将设备再次完全closures,然后重新打开。

对于iOS 5和iOS6:

通过从备份还原设备来重置推送通知权限警报(r。11450187)。 以下是有效执行此操作的步骤:

  1. 使用Xcode Organizer在设备上安装您的应用程序。 关键是第一次安装应用程序而不运行它。
  2. 使用iTunes备份设备。
  3. 运行应用程序。 将显示推送通知权限警报。
  4. 如果要重置推送通知权限警报,请从第一步中创build的备份恢复设备。

https://developer.apple.com/library/content/technotes/tn2265/_index.html

我和你在同一条船上 我发现最有用的是稍微改变包标识符。

例如:您的包标识符是com.company.app。 如果您需要testing启用推送通知,请将标识符更改为com.company.app1。 它将作为新的应用程序安装,并具有新的推送通知权限设置。

只要确保在完成testing后将其更改回来。

首先在iOS没有关系记住push settings,badge值和你没有得到push notification 。 我相信还有其他一些问题。 是的, iOS记住应用的push settingsbadge值。 当你第一次安装在设备上时,它要求确认。 您可以通过调用setApplicationIconBadgeNumber:来重置badgesetApplicationIconBadgeNumber:

如果你想重置push settings那么你可以通过重置设备的所有setting来完成。

如果您有任何应用程序初始化代码(例如,在文档文件夹中没有可用数据库的情况下复制/初始化数据库,则您可以重新设置徽章计数为零)。

同样,如果用户从包中手动删除数据库文件,或者没有为您的应用程序进行初始化设置,这可能会失败。

遵循以下步骤,通过以下步骤激发您的应用的首次运行:

1)。 从设备上删除您的应用程序。

2)。 完全closures设备并重新打开。

3)。 进入设置>常规>date和时间,并设置date提前一天或更多。

4)。 将设备再次完全closures,然后重新打开。