2011-06-04 136 views

回答

38

这很简单。创建一个动作rateGame并将ID 409954448更改为您的应用ID。

- (IBAction)rateGame { 
    [[UIApplication sharedApplication] 
    openURL:[NSURL URLWithString:@"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=409954448"]];   
} 

这将启动应用商店应用,并直接将用户带到她/他可以评价和审查你的应用程序的页面。如果你想这以后的事情了,说,20倍,用户加载的应用程序,那么您可以在viewDidLoad添加你的主要页面的警报:

- (void)viewDidLoad { 
    [super viewDidLoad]; 

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; 
    NSInteger launchCount = [prefs integerForKey:@"launchCount"]; 
    if (launchCount == 20) { 
     launchCount++; 
     [prefs setInteger:launchCount forKey:@"launchCount"]; 
     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"LIKE MY APP?" 
                 message:@"Please rate it on the App Store!" 
                 delegate:self 
               cancelButtonTitle:@"NO THANKS" 
               otherButtonTitles:@"RATE NOW", nil]; 
     [alert show]; 
     [alert release];     
    } 

} 

这是假设你已经设置了launchCount在AppDelegate中:

- (BOOL)application:(UIApplication *)application 
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults]; 
    NSInteger launchCount = [prefs integerForKey:@"launchCount"]; 
    launchCount++; 
    [prefs setInteger:launchCount forKey:@"launchCount"]; 

// YOUR CODE HERE 

} 
+3

+1,但没有全部上限。 :) – 2011-06-04 14:17:26

+0

@WTP,我认为它对于按钮标题看起来更具可读性,但如果你愿意的话,可以随意调回。我不介意编辑,尤其是那些有所改进的编辑。 – PengOne 2011-06-04 14:19:51

+0

+1,但是您肯定需要在rateGame方法中调整开发者名称?也许国家代码呢? (我只是想知道) – Luke 2011-06-04 15:21:25

2

好,here's one.

这些通常是做简单UIAlertViews三个按钮(现在审查,后来不)存储在NSUserDefaults的喜好来指示用户是否已经这样做了,他们是否从不希望再次被问及等。

2

iRate也是另一个很好的库来呈现“评价这个应用”对话框。

+0

iRate是一个坏主意,因为它不可本地化。 – 2011-06-04 17:08:07

+0

好的,谢谢大家,我会在这个周末尝试一切! :) – 2011-06-05 07:46:59

+0

用AppiRater完成它,就像一个魅力,非常简单!谢谢你们! :)) – 2011-06-05 13:55:20

4

如果您希望用户在20次后查看您的应用程序,则会丢失代码。缺少的部分是

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if (buttonIndex == 0) 
    { 
     // user hit dismiss so don't do anything 
    } 
    else if (buttonIndex == 1) //review the app 
    { 

     [[UIApplication sharedApplication] 
    openURL:[NSURL URLWithString:@"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id=409954448"]]; 

    } 
}