Tôi sử dụng trong ứng dụng của mình là SKStoreProductViewController
. Nó hiển thị chính xác, nhưng với một vài giây chậm trễ, làm chậm trải nghiệm người dùng.SKStoreProductViewController hiển thị với độ trễ
Có điều gì sai trong mã của tôi không? Hoặc tôi có nên thông báo cho người dùng rằng VC đang tải không? Bởi vì ngay bây giờ người ta có thể tin rằng không có gì đang xảy ra sau khi nhấn nút (mà gây nên các mã sau):
-(void)launchApp:(id)sender {
// Recall on main thread if necessary
if (![NSThread isMainThread]) {
[self performSelectorOnMainThread:@selector(launchApp:)
withObject:sender
waitUntilDone:NO];
return;
}
// Initialize Product View Controller
SKStoreProductViewController *storeProductViewController = [[SKStoreProductViewController alloc] init];
// Configure View Controller
[storeProductViewController setDelegate:self];
[storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : @"*********"}
completionBlock:^(BOOL result, NSError *error) {
if (error) {
NSLog(@"Error %@ with User Info %@.", error, [error userInfo]);
} else {
// Present Store Product View Controller
[self presentViewController:storeProductViewController animated:YES completion:nil];
}
}];
}
Cảm ơn, tôi đã quên mất một giây lý do đằng sau các khối .. Tôi đã sử dụng giải pháp đầu tiên và tốt, vì VC có nhãn "tải" riêng. Cảm ơn ! – rdurand
@Matthias - bất kỳ ý tưởng nào nếu có thể lập thời gian chờ cũng cho cuộc gọi loadProductWithParameters? – runamok
Một lưu ý - Apple cho biết bạn nên chuyển mã định danh cửa hàng của mình dưới dạng NSNumber thay vì NSString. – Zack