Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 即使未启用推送通知,也可以获取设备令牌吗?_Iphone_Ios_Objective C_Devicetoken - Fatal编程技术网

Iphone 即使未启用推送通知,也可以获取设备令牌吗?

Iphone 即使未启用推送通知,也可以获取设备令牌吗?,iphone,ios,objective-c,devicetoken,Iphone,Ios,Objective C,Devicetoken,我需要获取设备令牌,因为我将使用它进行自动登录。但是,如果用户不允许从其设备中的我的应用发送推送通知,我将无法获取设备令牌。我想知道,即使用户未启用APN,是否有可能获取并存储其设备令牌。谢谢。启用/禁用推送通知只是一种设置……它不会阻止设备从APPLE接收访问令牌 检查Kimpoy的回答,甚至这个问题的评论==> 在我对APNS的理解中,您的iOS接收设备令牌并不取决于用户的操作(如您所述,如果用户单击“不允许”按钮) 如果您的应用程序中包含: - (void)application:did

我需要获取设备令牌,因为我将使用它进行自动登录。但是,如果用户不允许从其设备中的我的应用发送推送通知,我将无法获取设备令牌。我想知道,即使用户未启用APN,是否有可能获取并存储其设备令牌。谢谢。

启用/禁用推送通知只是一种设置……它不会阻止设备从APPLE接收访问令牌

检查Kimpoy的回答,甚至这个问题的评论==>

在我对APNS的理解中,您的iOS接收设备令牌并不取决于用户的操作(如您所述,如果用户单击“不允许”按钮)

如果您的应用程序中包含:

 - (void)application:didRegisterForRemoteNotificationsWithDeviceToken
这意味着基于iOS的应用程序正在发送推送通知注册请求。作为回报,苹果将设备令牌发送到iOS;然后iOS将令牌发送到应用程序,然后应用程序将其发送到其服务提供商

并不是说当用户被问到“不允许”时,并不意味着你不会收到设备令牌。“不允许”是指对应用程序收到的任何通知所采取的操作,该通知是针对用户的。比如说,地点。这完全是另一回事。这意味着用户不允许应用程序使用他/她的位置

对。它仍然接收设备令牌,正如我在#1中回答您的问题时所讨论的那样。这只是你的应用程序的一个设置,这意味着每当有与你的应用程序相关的任何信息更新时,你将不会收到任何可见的通知(徽章、消息或声音)。这就像将你的Facebook帐户设置为仅在你的朋友向你发送私人消息时接收通知。除此之外,你根本不会被通知

启用APN的过程是:

申请证书颁发机构 创建应用程序id 为推送通知配置AppId 创建资源调配配置文件 配置设备 在Xcode中启用配置文件 正在创建推送通知提供程序

有关APN的更多了解,请查看

--因此,上述故事的寓意是,即使用户禁用了设备令牌,您仍然可以获得它…希望它有所帮助…祝您好运