2012-10-05 15 views
8

Sprawdziłem przykładowy kod (Top Paid Apps) ze strony Apple, gdzie można zobaczyć wszystkie najlepsze aplikacje w App Store, chcę zrobić to samo w moja aplikacja, ale pokazuję tylko moje aplikacje w App Store. Oto adres URL, który znalazłem w tej próbce:Otwórz listę moich aplikacji w App Store w mojej aplikacji

http://phobos.apple.com/WebObjects/MZStoreServices.woa/ws/RSS/toppaidapplications/limit=75/xml

Co muszę zmienić w tym adresie URL, aby pokazać tylko mój Apps?

+0

Czy możesz umieścić link do próbki? – alexandresoli

+0

Oto link przykładowego kodu: https://developer.apple.com/library/ios/samplecode/TopPaid/Introduction/Intro.html – 4slices

+0

Wygląda na to, że przykładowy kod nie jest już dostępny. Mogę wysłać go e-mailem do ciebie, jeśli chcesz. – 4slices

Odpowiedz

17

Jest to całkiem proste dzięki wprowadzeniu SKStoreProductViewController w systemie iOS 6. Dzięki temu użytkownicy mogą kupować inne aplikacje bezpośrednio w aplikacji.

Najpierw dodaj StoreKit.framework do swojego projektu. Następnie znajdź adres URL iTunes, który łączy się z twoimi aplikacjami za pomocą iTunes. Możesz skopiować link ze sklepu iTunes Store. Na przykład adres URL aplikacji Apple to http://itunes.apple.com/de/artist/apple/id284417353?mt=12 Zawiera identyfikator iTunes, który przekazujesz do SKStoreProductViewController.

Przykładowy kod:

#import "ViewController.h" 
#import <StoreKit/SKStoreProductViewController.h> 

@interface ViewController()<SKStoreProductViewControllerDelegate> 
@end 

@implementation ViewController 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    [self showMyApps]; 
} 

-(void)showMyApps 
{ 
    SKStoreProductViewController* spvc = [[SKStoreProductViewController alloc] init]; 
    [spvc loadProductWithParameters:@{SKStoreProductParameterITunesItemIdentifier : @284417353} 
        completionBlock:nil]; 
    spvc.delegate = self; 
    [self presentViewController:spvc animated:YES completion:nil]; 

} 

-(void)productViewControllerDidFinish:(SKStoreProductViewController *)viewController 
{ 
    [self dismissViewControllerAnimated:YES completion:nil]; 
} 

@end 
+0

Najpierw chciałbym podziękować za szczegółową odpowiedź i działa dobrze w symulatorze iOS 6, ale nie działając na wcześniejszym systemie iOS, istnieje sposób na udostępnienie wszystkich urządzeń z wcześniejszym systemem iOS. – 4slices

+0

Nie, ta funkcja jest dostępna tylko w systemie iOS 6. We wcześniejszych wersjach można było utworzyć łącze do App Store: '[[UIApplication sharedApplication] openURL: [NSURL URLWithString: @" http://itunes.apple.com/de/artist/apple/id284417353? mt = 12 "]]' – Felix

+0

Ale jak mogę to zrobić, ponieważ moja aplikacja zawiesza się na wcześniejszym iOS po dodaniu powyższego kodu. – 4slices

0

Można użyć DAAppsViewController. Można go skonfigurować za pomocą identyfikatora programisty, aby wyświetlić wszystkie aplikacje tego programisty. Będzie używać StoreKit, jeśli jest dostępny, w przeciwnym razie będzie musiał przejść na App Store.

Powiązane problemy