菜鸟教程小白 发表于 2022-12-12 10:48:26

ios - 为什么 iOS 上的 Apple AppStore 应用内收据为空?


                                            <p><p>在应用程序中,我需要实现自动更新订阅购买。
据我了解文档,我应该在应用启动时检查 AppStore 收据,然后使用我的服务器验证该收据。
在我的代码中,我执行以下操作来检索收据:</p>

<pre><code>NSURL *receiptURL = [ appStoreReceiptURL];
NSData *receipt = ;
</code></pre>

<p>有时 <code>receipt</code> 会变成 nil。
例如:</p>

<ul>
<li>我已经启动了一个应用并进行了购买。之后,上面的代码返回非空<code>receipt</code>。</li>
<li>应用通过 Xcode 停止。</li>
<li>在下一次应用启动时,<code>receipt</code> 为零。</li>
</ul>

<p>我不明白,为什么会这样。 <code>receiptURL</code> 指向带有收据的文件,但 <code></code> 返回 nil。</p>

<p>如果我请求刷新收据,则应用会显示用于输入 iTunes 凭据的对话框。这不好,因为此对话框会在应用启动时出现,这是意外行为。</p>

<p>我做错了吗?
或者这可能是特定于沙盒的案例?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>在生产中总会有一张收据(即使应用程序是免费的),其中可以包含您的额外购买,以防您购买了某些东西或从已购买的元素中恢复。<br/>
在测试环境中,直到你买东西收据为 <code>nil</code>,如果你想测试一个接近生产的案例,你应该首先尝试恢复(现在你将有一个收据)并做你需要的。 </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 为什么 iOS 上的 Apple AppStore 应用内收据为空?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/36036030/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/36036030/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 为什么 iOS 上的 Apple AppStore 应用内收据为空?