iOS 7中指向应用商店的直接链接

5

我有一个免费版本的应用程序,并且在免费版中有一个指向完整版的链接。这个链接在iOS 6中运行良好。但在iOS 7中会显示一个空白页面。 任何帮助都将不胜感激!

我使用的链接:

- (void) getFull
{
    [self hideAnimated];
    NSString *iTunesLink = @"http://phobos.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=604760686&mt=8";
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:iTunesLink]];
}
2个回答

18

你使用的链接很奇怪。我使用:

http://itunes.apple.com/app/id<APP_ID>?mt=8

一切都正常运作...

对于支持 iOS6 及以上版本的应用程序,我建议进一步使用 StoreKit,这样您可以在不离开应用程序的情况下显示您的应用程序页面在 App Store 中。您可以像这样做:

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

- (void)showAppWithIdentifier:(NSNumber *)identifier
{

  if ([SKStoreProductViewController class]) {
     SKStoreProductViewController *controller = [[SKStoreProductViewController alloc] init];
     controller.delegate = self;
     [controller loadProductWithParameters:@{ SKStoreProductParameterITunesItemIdentifier : identifier }
                          completionBlock:NULL];

     [self presentViewController:controller animated:YES completion:nil];
     return;
   }

    // Fall back to opening App Store for iOS 5.
    ... open the link as you are already doing
}

你的链接也无法使用。在iOS 6中,它显示我的产品在俄罗斯应用商店不可用。在iOS 7中,它显示空白页面。稍后将检查StoreKit。 - iWheelBuy
我刚刚尝试了使用您的应用程序ID(http://itunes.apple.com/app/id604760686&mt=8)建议的链接,并且在iOS7上运行良好...很抱歉,我现在意识到我忘记在我的答案中在<APP_ID>开头加上“id”了...已进行编辑。 - sergio
标识符应该是 NSNumber 类型,而不是 NSString。 - cocoapriest
@CocoaPriest:谢谢,我已经编辑了我的答案来修复这个问题。 - sergio

7

请使用这个新的语法,将APP_ID替换为你的应用程序的AppID。该语法适用于iOS 7。

itms-apps://itunes.apple.com/app/idAPP_ID

你可以参考这个链接这个链接获取更多有关此事的信息和讨论。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接