菜鸟教程小白 发表于 2022-12-13 14:54:08

ios - APNs 重复 token


                                            <p><p>我们有一个推送通知服务器,它保存多个不同应用程序的数据(设备 token )。由于 Apple 希望阻止人们使用 UDID 作为标识符,因此我正在考虑更改此服务器,使其不再依赖 UDID 来识别设备。</p>

<p>我了解 APNs 返回的 token 不是全局唯一的,而是每个设备唯一的。但是,在浏览我们的数据库时,我注意到有几种情况(750k+ 注册数百个)<em>相同的 token </em>用于<em>不同的设备</em>。</p >

<p>所以我试图找出造成这种情况的原因。在这一点上,我看到了两种可能性:</p>

<ol>
<li>我们在某处处理服务器注册时存在一个不明显的错误</li>
<li>Apple 会回收这些设备 token (可能在设备重置后?)。我们总是存储某个设备的最后一次注册时间,我注意到使用相同 token 的不同设备的注册之间总是至少有几天的时间。据我所知,没有不同设备<em>同时</em>使用的 token 。</li>
</ol>

<p>如果有人能对此有所了解,我将不胜感激。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我们所知道的是 <a href="http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/IPhoneOSClientImp/IPhoneOSClientImp.html#//apple_ref/doc/uid/TP40008194-CH103-SW2" rel="noreferrer noopener nofollow">Apple tells us</a>使用设备 token 将通知推送到设备。所以,只要你是:</p>

<ol>
<li><p>每次应用程序启动并在数据库中注册时,都在 APNs 中查询新的设备 token </p></li>
<li><p>查询非事件设备的反馈服务并从数据库中清除它们</p></li>
</ol>

<p>...您正在做 Apple 期望您做的事情。</p>

<p>但是,我确实怀疑您的注册码中可能存在错误,因为 100/750k 是一个相当高的冲突率。考虑到这些设备 token 用于推送通知,很多人会提示收到不属于他们的通知...</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - APNs 重复 token ,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/11519435/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/11519435/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - APNs 重复 token