相关疑难解决方法(0)

恢复已经在iPhone上购买了应用内购买?

我到目前为止:重新安装后,用户需要点击"购买功能",然后他会被0.99美元的问题吓到,然后必须登录然后才被告知该功能已经购买并且他免费获得.

我知道苹果是一种宗教,用户是坚定的信徒,但是不是更好的方式吗?:-)我想要的是检查功能而不实际购买它.让用户输入他的帐户信息似乎是必要的,也许买一个0.00美元的功能?或者有某种方法可以做到这一点吗?

我正在使用MKStoreKit进行整个In-App-Purchase,但任何解决方案都会很棒.


UPDATE

thanx到darvids0n,你的方法解决了我的问题!这是其他人尝试相同的工作代码:

- (void)removePreviousPurchases { //just for sandbox testing
    [[MKStoreManager sharedManager] removeAllKeychainData];
}

- (void)restorePreviousPurchases { //needs account info to be entered
    if([SKPaymentQueue canMakePayments]) {
        [[MKStoreManager sharedManager] restorePreviousTransactionsOnComplete:^(void) {
             NSLog(@"Restored.");
             /* update views, etc. */
        }
        onError:^(NSError *error) {
            NSLog(@"Restore failed: %@", [error localizedDescription]);
            /* update views, etc. */
        }];
    }
    else
    {
        NSLog(@"Parental control enabled");
        /* show parental control warning */
    }
}
Run Code Online (Sandbox Code Playgroud)

restore in-app-purchase ios

40
推荐指数
2
解决办法
3万
查看次数

Apple拒绝因为In app购买没有实现还原

苹果公司拒绝了我的一条消息:

...此外,我们发现,虽然您的应用提供了可以恢复的应用内购买,但它不包含所需的"恢复"功能,以允许用户恢复以前购买的应用内购买,如应用程序内购买编程指南的"恢复事务"部分中所述:

"...如果您的应用程序支持必须可恢复的产品类型,则必须包含允许用户恢复这些购买的界面.此界面允许用户将产品添加到其他设备,或者,如果原始设备被擦除,则恢复原始设备上的交易."

要恢复以前购买的应用程序内购买产品,提供"恢复"按钮并在用户点击"恢复"按钮时启动恢复过程是合适的.

有关恢复事务和验证商店收据的更多信息,请参阅应用程序内购买编程指南....

我找到了这个页面,我按照示例代码,但在我打电话后

- (void) checkPurchasedItems{
   [[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
}
Run Code Online (Sandbox Code Playgroud)

另一位代表没有被解雇!

- (void) paymentQueueRestoreCompletedTransactionsFinished:(SKPaymentQueue *)queue
Run Code Online (Sandbox Code Playgroud)

它只会弹出一个警报视图,让你输入你的Apple ID ......什么都没发生?

我设定了一个断点,但它不会像示例所说的那样停止.

关于我的代码有什么问题的任何想法?

iphone restore objective-c in-app-purchase

16
推荐指数
2
解决办法
9523
查看次数

标签 统计

in-app-purchase ×2

restore ×2

ios ×1

iphone ×1

objective-c ×1