2010-08-24 66 views

回答

11

这个其他问题有一个合适的answer。请注意,类型=紫色+软件部分是文字,而不是贵公司的名称。唯一需要更改的是应用程序ID。这个例子有点奇怪,因为字符串被分解成几个字符串,我只是用一个格式来替换应用程序ID。

最终的结果看起来是这样的:

ITMS-应用://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews类型=紫色+软件& ID = 123456789

+3

感谢您关于Purple Software的说明。这让我一个循环! – 2011-02-14 00:47:42

+3

到底是什么“紫软件”? – 2016-07-08 19:41:36

+1

iphone项目被称为紫色。 https://www.wired.com/2012/08/forstall-talks-ingenuity-ui/ – iamdavidlam 2016-12-09 10:13:36

2

iOS7之后@Jon Steinmetz链接已弃用。所以,你应该写一个代码分割版本如下。

if([[UIDevice currentDevice] systemVersion].floatValue >= 7.0f) 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://itunes.apple.com/app/id%@", #YourAppID#]]]; 
else 
    [[UIApplication sharedApplication] openURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?id=%@&pageNumber=0&sortOrdering=1&type=Purple+Software&mt=8", #YourAppID#]]]; 
0

当支持多个操作系统和多平台时,创建评级链接可能会变成一个复杂的问题。例如不支持iOS 7(其中的一些)的的WebObjects,创建将开启另一国储一些链接然后用户等

有2个相关的开放源代码库,可以帮助你:

  1. iLink - 在运行时会找到链接(库会检查应用程序ID和运行的操作系统,并找出应该创建的链接)。其中最好的一点是,在使用它之前不需要进行任何配置,这样就没有错误,并且始终可以正常工作。如果您在同一个项目中拥有很少的目标,那么这也很棒,所以您不必记住要使用哪个应用程序ID或链接。如果商店上有新版本(这是内置的,并且通过简单的标志关闭此功能),该库还会提示用户升级应用程序。

    将2个库文件复制到您的项目中。

    在您appDelegate.m:

    #import "iLink.h" 
    
    + (void)initialize 
    { 
        //configure iLink 
        [iLink sharedInstance].globalPromptForUpdate = YES; // If you want iLink to prompt user to update when the app is old. 
    } 
    

    和要打开例如评级页的地方就用:

    [[iLink sharedInstance] openRatingsPageInAppStore]; 
    

    和进口iLink.h在同一个文件。

    有一个非常好的文档,为整个图书馆和iPhone和Mac的示例项目。

  2. iRate - 如果您希望库自动提示用户评级过程,该库是超级推荐。只需设置你想要的参数,它就可以为你完成工作(也可以翻译很多种语言)。缺点是你会使用一个警报视图,而不是你自己的UI。