【问题标题】:in app purchase in iosios中的应用内购买
【发布时间】:2013-07-25 21:24:17
【问题描述】:

我对恢复 iap 感到困惑,如何恢复它我已经管理了所有代码,如何恢复它工作正常。 我面临的问题是在哪里调用恢复以前的购买 1)在应用程序第一次运行时调用视图只加载一次......

[[SKPaymentQueue defaultQueue] addTransactionObserver:self];
[[SKPaymentQueue defaultQueue] restoreCompletedTransactions];

2)在用户再次点击购买功能之前调用它 如果无法恢复,则调用购买功能。

我很困惑如何解决它...... 我面临的另一个问题是,当它尝试从不同的苹果 id 恢复之前购买的东西(实际上没有购买该功能)然后在模拟器弹出窗口中打开 connot connect to ITUNE ...

【问题讨论】:

    标签: ios objective-c ios6 in-app-purchase


    【解决方案1】:

    要恢复,您必须提供一个恢复按钮,以便每当用户单击该按钮时,用户所做的所有购买都应恢复。在IBAction方法中写下这些代码来恢复

    -(IBAction)restorePurchase:(id)sender
    {
        [[SKPaymentQueue defaultQueue] addTransactionObserver:self];
        [[SKPaymentQueue defaultQueue] restoreCompletedTransactions];
    }
    

    记住一件事,应用购买测试应该在设备上而不是在模拟器上进行。

    【讨论】:

      【解决方案2】:

      你有一些选择来呼唤这个:

      1. 将其称为应用程序的首次运行:- 保留一个 NSUserDefaults 值来计算应用程序的运行时间,就像在您的 didFinishLaunchingWithOptions 方法中一样:

        int i = [[NSUserDefaults standardUserDefaults] integerForKey:@"usageCount"];
        i = i+1;
        
        [[NSUserDefaults standardUserDefaults] setInteger:i forKey:@"usageCount"];
        [[NSUserDefaults standardUserDefaults] synchronize];
        

      从应用程序的任何地方,您都可以查看和调用

      if([[NSUserDefaults standardUserDefaults] integerForKey:@"usageCount"]==0)
      {
          //Call you action
      }
      

      第一次运行,可以调用恢复购买的价值。

      1. 您可以在应用程序的其他/更多/设置屏幕中保留一个选项/按钮,您可以在表格视图中保留用户反馈、评分、应用内购买、恢复购买。

      【讨论】:

        猜你喜欢
        • 2011-09-17
        • 2015-03-13
        • 1970-01-01
        • 1970-01-01
        • 2014-05-26
        • 1970-01-01
        • 2011-04-21
        • 1970-01-01
        相关资源
        最近更新 更多