Используя SKStoreViewController для обновления моего приложения, только кнопка «Готово» запускает завершающий делегат - PullRequest
0 голосов
/ 28 ноября 2018

Используя SKStoreViewController для обновления моего приложения, только кнопка «Готово» запускает завершающего делегата.

Две вещи, которые я не понимаю (1) Документы Apple указывают, что показы завершенного делегата будут вызываться как для Готово, так и дляОбновить.(2) Как узнать, что обновление завершено.

Использование iOS 12.1 и xCode 10.1 & на High Sierra

Помогите, что я делаю не так ??????

Спасибо за любую помощь.

Вот мой код:

-(void)loadAppStoreProductViewController
{
  NSLog(@"\nloadAppStoreProductViewController");

  UIViewController *viewController = self.navigationController.visibleViewController;

  SKStoreProductViewController *storeViewController = [[SKStoreProductViewController alloc]init];
storeViewController.delegate = (id)self;

NSNumber *identifier = [NSNumber numberWithInteger:self.appID];
NSDictionary *parameters = @{ SKStoreProductParameterITunesItemIdentifier:identifier };

  [self showWaitMessageView];

  [storeViewController loadProductWithParameters:parameters
    completionBlock:^(BOOL result, NSError *error) {
        if(result) {
            [viewController presentViewController:storeViewController
                                         animated:YES
                                       completion:
             ^{
                 [self removeWaitMessageView];
             }];
        } else {
            NSLog(@"loadProductWithParameters: %@", error.description);
            [self removeWaitMessageView];
        }
    }
];

  [self handleAppIconBadgeNumber];
}

-(void)productViewControllerDidFinish:(SKStoreProductViewController *)storeViewController
{
  NSLog(@"\nproductViewControllerDidFinish");

 [self removeWaitMessageView];
 [storeViewController dismissViewControllerAnimated:YES completion:nil];

 [self handleAppIconBadgeNumber];
}
...