【问题标题】:InApp Purchase - How to detect when Alert 'Confirm Your In App Purchase' is displayed应用内购买 - 如何检测何时显示“确认您的应用内购买”警报
【发布时间】:2012-02-23 16:01:21
【问题描述】:

我的商店已全部设置完毕,一切正常。

我现在要做的是,当他们单击按钮从我的应用程序中购买东西时,我正在显示自定义 UIActivityIndi​​cator 类型的东西,以向用户显示东西正在实际加载(并阻止他们继续以防警报需要 10 多秒才能显示)。

我设置了一个超时设置,以在 30 秒延迟后隐藏 ActivityIndi​​cator,以防商店没有响应,这样用户就不会永远等待。 这一切都很好。

问题是当显示“确认您的应用内购买”警报时,我不知道如何得到通知它出现了,所以我可以隐藏我仍在后面运行的 ActivityIndi​​cator。

有一些方法可以检测用户何时点击取消或购买,但我想在他们点击之前隐藏 ActivityIndi​​cator,这样用户在阅读时不会在后台看到它。

我是否忽略了一个可以为此工作的代表? 还是我必须编写一些自定义的东西才能按照我想要的方式工作?

谢谢!


我也尝试使用此方法实现 UIAlertViewDelegate,但是它没有捕捉到应用内购买警报视图:(

- (void)didPresentAlertView:(UIAlertView *)alertView;

如果其他人对我提出的解决方案感兴趣。

当您调用 load 并开始连接到您的商店时,您可以添加一个观察者来捕捉您的手机何时退出活动状态。这样,当 In App alert 出现时,您选择的方法就会被调用,您可以取消您的活动监视器。

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(inAppAlertAppeared:) 
                                             name:UIApplicationWillResignActiveNotification 
                                           object:nil];

【问题讨论】:

  • 我认为这是一个很好的解决方案。干得好。
  • 不错的解决方案,但请问您如何知道用户何时点击“购买”?这就是我现在正在努力解决的问题。
  • 在 (void)provideContent:(NSString *)productIdentifier 方法的 In App Purchase 管理器类中,您可以发布到 NSNotificationCenter。据我回忆,只有在用户实际购买某物时才会调用方法。

标签: ios in-app-purchase uiactivityindicatorview


【解决方案1】:

【讨论】:

  • 我没有通读这个,但是 Ray Wenderlich 通常有很棒的教程,所以我相信它也很好!
  • 不要自己发链接试图回答问题
  • 链接只是IAP编程的教程。它并没有真正回答这个问题。
猜你喜欢
  • 2018-12-26
  • 1970-01-01
  • 2020-02-17
  • 2015-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多