欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

In-app Purchase 程序內(nèi)付費(fèi)

系統(tǒng) 2212 0

自從10月16日蘋果發(fā)送給所有開(kāi)發(fā)者的那 一封信 ,通知了程序內(nèi)購(gòu)買將可用于免費(fèi)應(yīng)用,我認(rèn)為這也宣告了LITE版的時(shí)代結(jié)束。

成千上萬(wàn)的免費(fèi)版的軟件或游戲,將作為限制了功能的完整版免費(fèi)發(fā)售,如果用戶覺(jué)得有意購(gòu)買,可以直接解鎖完整版的功能或購(gòu)買附加內(nèi)容。
本文講闡述如何為你現(xiàn)有的應(yīng)用或游戲添加程序內(nèi)購(gòu)買(In App Purchase)功能。

閱讀前提:假設(shè)了你擁有一定的iPhone SDK開(kāi)發(fā)基礎(chǔ),和App Store實(shí)踐經(jīng)驗(yàn)。

你的程序需要唯一的Bundle ID, 如果已經(jīng)發(fā)布的程序使用了通配符,那么就不能直接添加該功能。如果擁有了唯一的ID,請(qǐng)?jiān)趐rogram portal中添加你的app id,允許程序使用內(nèi)購(gòu)買(Enable In App Purchase)。

在設(shè)計(jì)好你的程序內(nèi)購(gòu)買的功能以后,首先需要定義元數(shù)據(jù)。來(lái)到 iTunes Connect ,在Manage Your In App Purchases中為你的程序添加一個(gè)程序內(nèi)購(gòu)買的商品。

上面第一個(gè)部分是添加的內(nèi)部信息。參考名稱,ID,類型,和價(jià)格。以及各種本地化信息。
這里簡(jiǎn)單說(shuō)一下類型的選擇,其他信息,以及In App Purchase支持什么類型的商品請(qǐng)查看 Getting Started with In App Purchase 。

Non-consumable 默認(rèn)類型,非消耗品,具有持久性,特點(diǎn)是一次性購(gòu)買,可用在所有設(shè)備。例如解鎖游戲的儲(chǔ)存關(guān)卡功能。
Consumable 消耗品,用完或使用后消失,可多次購(gòu)買,不能用在所有的設(shè)備,例如游戲中的血瓶或技能書(shū)。
Subscription 訂閱,和消耗品一樣,除了可以在設(shè)備之間共享。

創(chuàng)建購(gòu)買流程
大致可以分為十個(gè)步驟:

  1. 驗(yàn)證App Store存取權(quán)限
    這樣做是因?yàn)?,家長(zhǎng)控制或一些公司的配置文件阻止了此功能,使用支付隊(duì)列的查詢功能canMakePayments來(lái)確定用戶是否有權(quán)限購(gòu)買,返回值YES代表可以購(gòu)買/NO代表沒(méi)有權(quán)限購(gòu)買。
  2. 載入目錄
    載入儲(chǔ)存在本地或者遠(yuǎn)程的商品目錄。
  3. 獲得商品本地化信息
    程序向App Store發(fā)起查詢請(qǐng)求獲得目錄中商品的本地化信息。:
    myPossibleProds = [NSSet setWithObjects: @”myProd1”, @”myProd2”, @”myProd3, nil];
    myProdRequest = [[SKProductsRequest alloc] initWithProductIdentifiers: myPossibleProds];
    myProdRequest.delegate = myProductsRequestDelegate;
    [myProdRequest start];

    程序接收來(lái)自App Store的回應(yīng):
    -(void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
    response包含可能的信息
    response.products //產(chǎn)品信息
    response.invalidProductIdentifiers //錯(cuò)誤的產(chǎn)品標(biāo)示符

    錯(cuò)誤的產(chǎn)品可能由下面的原因?qū)е拢?

    • 商品未在 iTunes Connect中錄入。
    • 商品沒(méi)有選擇“Cleared for Sale”。
    • 商品還沒(méi)有傳播到所有服務(wù)器。
  4. 創(chuàng)建商品信息
    前面的步驟獲得了產(chǎn)品信息的數(shù)組用以呈現(xiàn):
    myAvailableProductsArray = response.products;
    for (SKProduct* aProduct in myAvailableProductsArray) {
    diplayTitle = aProduct.localizedTitle;
    displayDesc = aProduct.localizedDescription;
    displayPrice = aProduct.price;
    }
  5. 呈現(xiàn)商品信息
    在UI中顯示前面獲得的信息
  6. 請(qǐng)求支付
    myPayment = [SKPayment paymentForProductIdentifier: selectedProdID userInfo: nil];

    myPayment = [SKPayment paymentForProduct: selectedProduct userInfo: nil];
    然后 提交到隊(duì)列
    defaultPaymentQueue = [SKPaymentQueue defaultQueue];
    [defaultPaymentQueue addTransactionObserver: myObserver];
    [defaultPaymentQueue addPayment: myPayment];
    [defaultPaymentQueue addPayment: myRequest];

    - (void)paymentQueue:(SKPaymentQueue *)queue updatedTransactions:(NSArray *)transactions
  7. 驗(yàn)證支付的事務(wù)
    for(SKPaymentTransaction *aTransaction in transactions) {
    switch (aTransaction.transactionState ) {

    // 商品進(jìn)入購(gòu)買流程
    case SKPaymentTransactionStatePurchasing:
    ...
    break;
    // 成功購(gòu)買商品
    case SKPaymentTransactionStatePurchased:
    ...
    break;
    // 已經(jīng)購(gòu)買過(guò)該商品
    case SKPaymentTransactionStateRestored:
    ...
    break;

    // 用戶取消交易
    case: SKPaymentTransactionStateFailed
    ...
    break;

    App Store的交易回執(zhí)
    aTransaction.transactionReceipt

    • Used to validate e-commerce transaction
    • Cryptographically signed chunk of data
    • Contains information about the purchase
    • Can validate using Web-based API

    收到交易回執(zhí)以后可以傳送到你的服務(wù)器處理該交易。
    你的服務(wù)器可以向蘋果發(fā)送交易驗(yàn)證信息。
    蘋果的交易驗(yàn)證地址:https://buy.itunes.apple.com/verifyReceipt
    驗(yàn)證數(shù)據(jù)格式:{ receipt-data : …}
    蘋果的返回值如果是{ status : 0 } 那么交易是正確,如果返回任何其他值 { status : any_other_value } 交易就是不成立。
    你的服務(wù)器收到蘋果的驗(yàn)證成功信息以后,返回給應(yīng)用程序類似于解鎖功能等消息。

  8. 解鎖內(nèi)置物品火提供遠(yuǎn)程存取地址
    需要注意的地方

    • 用戶可能隨時(shí)退出程序。
    • Store Kit 的交易隊(duì)列是持久化的。
    • 交易是持久化的。
    • 驗(yàn)證存取。
    • 移除交易。

    [[SKPaymentQueue defaultQueue] finishTransaction: transaction];

  9. 儲(chǔ)存購(gòu)買
    需要將非消耗的購(gòu)買記錄在服務(wù)器上,以供用戶更換設(shè)備或刪除程序以后重新安裝時(shí)再次解鎖功能。
  10. 提供物品恢復(fù)
    前面的代碼中,已經(jīng)購(gòu)買過(guò)該商品的處理就是直接解鎖。
    defaultPaymentQueue = [SKPaymentQueue defaultQueue];
    [defaultPaymentQueue restoreCompletedTransactions];

測(cè)試沙盒環(huán)境
只供給測(cè)試用戶,并且設(shè)備上才有效,不能使用模擬器測(cè)試。
可以為每個(gè)國(guó)家的商店添加測(cè)試帳號(hào)。
不能用來(lái)測(cè)試其他的iTunes Store特性。
需要為每個(gè)測(cè)試添加唯一的email地址,可以考慮使用+
payam+usa@example.com—測(cè)試美國(guó)的商品
payam+uk@example.com—測(cè)試英國(guó)的商品
payam+jp@example.com—測(cè)試日本的商品
測(cè)試步驟,需要在設(shè)備的設(shè)置菜單中iTunes Store登出原有帳戶。
然后不要在設(shè)置菜單中登錄測(cè)試帳號(hào),而是直接打開(kāi)需要測(cè)試的程序進(jìn)行測(cè)試。
在這之前需要在iTunes Connect的Manage Users菜單中添加In App Purchase測(cè)試用戶。

財(cái)務(wù)報(bào)表

  • 收入和應(yīng)用程序同樣的規(guī)則
    • 你獲得總收入的70%。
    • 支付日程,使用稅,報(bào)表等全部都一樣。
  • 報(bào)表
    • 一樣的報(bào)表格式。
    • 販賣的標(biāo)示符欄顯示物品的產(chǎn)品ID。
    • 所有者標(biāo)示符欄顯示程序的ID。

本文部分內(nèi)容參考自 In App Purchase Programming Guide 和WWDC 2009 Sessions,如需轉(zhuǎn)載請(qǐng)注明出處。

add

add

In-app Purchase 程序內(nèi)付費(fèi)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦?。?!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 5g影视天天看最新网站 | 成人嗯啊视频在线观看 | 国产一区二区三区在线观看免费 | 在线观看黄色小视频 | av一级久久 | 欧美综合视频在线 | 欧美日韩性高爱潮视频 | 久久国产精品久久 | 伊人久久国产 | 免费一级毛片不卡不收费 | 成人精品视频在线观看 | 精品96久久久久久中文字幕无 | 成人在线免费网站 | 孕妇体内谢精满日本电影 | 毛片2 | 一区二区免费在线观看 | 久操久热 | 精品一卡2卡三卡4卡免费观看 | 99热久久这里只有精品99 | 色图综合网 | 91中文字幕在线观看 | 凤囚凰 电视剧 | 高清激情小视频在线观看 | 久久综合久久久久 | 欧美日韩亚洲一区 | 91亚洲影院| 成人免费在线电影 | 欧美一级一毛片 | 成人午夜视频网站 | 欧美国产高清欧美 | 国产二区精品 | 老子午夜影院 | 日本精品一区二区三区在线 | 在线免费观看毛片 | 午夜精品久久久久久久90蜜桃 | 婷婷尹人香蕉久久天堂 | 国产剧情一区二区三区 | 色操插 | 国产婷婷色一区二区三区在线 | 超级碰碰碰频视频免费观看 | 成人av免费 |