簡體   English   中英

iOS通過應用內購買從服務器下載非消耗性內容

[英]iOS download non-consumable content from server with in-app purchase

我已經在iOS應用內主題上閱讀和搜索了所有內容。 至少來自谷歌(減去無盡的應用內黑客鏈接)。 我無法找到的一件事是關於如何從服務器獲取內容並在收據驗證后將其存儲到手機上的說明或教程。 我知道我可以將內容存儲在我自己的服務器上,或者使用應用程序加載器將其打包並讓Apple托管它。 我獲得了整個非消耗性內容,並使用您自己的服務器或NSUserDefaults來記住購買的物品。 我找不到的是關於如何從我自己的服務器或Apple獲取應用程序內購買內容的編碼教程,以及我可以在手機上存儲它的地方? 正常套接字呼叫? 我可以將內容存儲在應用程序的目錄中嗎?

作為一個例子,我有一個現有的應用程序,我想通過應用內購買銷售新圖像。 現有圖像是捆綁在一起的。 如何將捆綁的圖像從服務器恢復到我的應用程序? 我很樂意為每次購買添加新捆綁包,我知道您無法修改現有捆綁包。

如果您的購買成功,您將獲得交易對象。 不是嗎?

- (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions

遍歷每個事務對象並使用以下代碼:

if (transaction.downloads)
{
    [[SKPaymentQueue defaultQueue] startDownloads:transaction.downloads];
}

成功下載后,您將收到一個代表電話:

-(void)paymentQueue:(SKPaymentQueue *)queue updatedDownloads:(NSArray *)downloads
{
    for (SKDownload *download in downloads)
    {
        switch (download.downloadState) {
            case SKDownloadStateActive:
                NSLog(@"Download progress = %f and Download time: %f", download.progress, download.timeRemaining);
                break;
            case SKDownloadStateFinished:
                NSLog(@"%@",download.contentURL);
                // Download is complete. Content file URL is at
                // path referenced by download.contentURL. Move
                // it somewhere safe, unpack it and give the user
                // access to it
                break;
            default:
                break;
        }
    }
}

下載后,您將獲得下載數據的URL,現在您可以將其存儲在庫的應用程序支持文件夾中,並防止它自動同步到雲(如有必要)。 而已。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM