2014-10-03 5 views
5

sto usando SKStoreProductViewController su iPad con iOS 8. La pressione di un pulsante si apre un'istanza di esso:SKStoreProductViewController non funziona su iPad iOS 8

[self.storeProductViewController loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier:appStoreIdNumber} 
       completionBlock:^(BOOL result, NSError *error) {...}]; 
[[self getPresentingViewController] presentViewController:self.storeProductViewController animated:YES completion:^{...}]; 

Si apre la prima bel momento. Ma dopo che è stato chiuso, premendo nuovamente il pulsante per riaprirlo si genera un'eccezione e il pop-up non appare mai.

<SKRemoteProductViewController: 0x15c1ec00> timed out waiting for fence barrier from com.apple.ios.StoreKitUIService 

Qualcuno sa cosa sta succedendo o come aggirare?

risposta

0

Ho anche avuto alcuni altri problemi con UIAppearance e StoreKit non lavorare insieme (vedi StoreKit's SKStoreProductViewController leaving space between the nav bar and the view?)

ho avuto lo stesso problema che ora avete e la rimozione di tutto il codice UIAppearance fisso, ma ho notato che la SKStoreProductViewController non caricherà alcuna app per iPad su un iPhone su iOS 8 e fallirà silenziosamente. Fammi sapere se hai lo stesso problema.

0

Ho avuto lo stesso problema, dove la prima volta che presento SKRemoteProductViewController funziona correttamente, ma le presentazioni successive danno l'errore come descritto dall'OP. Apparentemente il problema è legato alla presentazione dello stesso SKRemoteProductViewController più di una volta. Se dispongo di SKRemoteProductViewController dopo averlo presentato e quindi ricarico un altro ogni volta che voglio che venga nuovamente visualizzato, le cose funzionano senza problemi.

0

Aveva anche questo problema. Assicurarsi che identifier è in realtà un NSString

@{ SKStoreProductParameterITunesItemIdentifier : identifier } 

mi è stato inavvertitamente passando un oggetto NSURL, che ha portato lo stesso errore - "Timeout durante l'attesa per la barriera di recinzione da com.apple.ios.StoreKitUIService"