Ios 如何加上「;评级5颗星以获得硬币/奖励“;?

Ios 如何加上「;评级5颗星以获得硬币/奖励“;?,ios,objective-c,ios7,app-store,rating,Ios,Objective C,Ios7,App Store,Rating,如何在我的应用程序中添加评级提醒视图,以便用户选择有多少颗星 然后我想给用户一些硬币/奖励,如果他或她评级为5星 我所尝试的: SKStoreProductViewController *productViewController = [[SKStoreProductViewController alloc] init]; [productViewController loadProductWithParameters:@{ SKStoreProductParameterITunesItemId

如何在我的应用程序中添加评级提醒视图,以便用户选择有多少颗星

然后我想给用户一些硬币/奖励,如果他或她评级为5星

我所尝试的:

SKStoreProductViewController *productViewController = [[SKStoreProductViewController alloc] init];
[productViewController loadProductWithParameters:@{ SKStoreProductParameterITunesItemIdentifier : @364709193 } // which is the iBook app id
                                 completionBlock:^(BOOL result, NSError *error) {
                                     // giving me an error:
                                     // Error Domain=SKErrorDomain Code=5 "Cannot connect to iTunes Store" UserInfo=0xa71cd90 {NSLocalizedDescription=Cannot connect to iTunes Store}
                                 }];
productViewController.delegate = self;
[self presentViewController:productViewController animated:YES completion:nil];
但它只显示一个带有取消按钮的空白屏幕。也给了我一个错误:

错误域=SKErrorDomain代码=5“无法连接到iTunes存储” UserInfo=0xa71cd90{NSLocalizedDescription=无法连接到iTunes 存储}

编辑:


我想要的是这样的:

这是一个非常糟糕的主意™。这不仅是完全不道德的,而且也是(第3.10项)禁止的


编辑:显然,现在该文档处于保密协议之下,尽管它以前是公开的。

在测试应用程序时,您使用的是苹果公司称之为沙盒iTunes商店的东西,而不是实际的商店。这意味着并非所有的工作都如预期的那样。在模拟器上测试时,这通常(总是?)会返回错误


然而,我不认为你想做的是可能的(而且可能是反对苹果的TOS)。完成块不会向您提供有关用户在使用SKStoreProductViewController时所做操作的任何信息。

我假设您只有在设备上运行时才会遇到此错误,应用程序保存在沙箱中,因此您应该为其创建一个测试用户


打开itunesconnect->管理用户->测试用户->添加新用户。

而您无法操作苹果评级系统;不过,您可以创建自己的在线评级系统,或许可以在自己的网站上显示。如果一个用户给了定制/在线5星级评分,那么你可以用你喜欢的任何东西来奖励他们。此外,我相信其他人也会同意这是一种更“道德”的方式。

根据苹果的说法,禁止要求用户对应用程序进行五星评级。即使在获得批准后,您也可能因为这样做而被拒绝

但是,如果用户喜欢,你可以让他给应用打分。这是一种相同的东西,但它的罚款由苹果公司


接下来你要知道的是,你无法知道用户是否对该应用程序进行了评分,以及他给了该应用程序多少颗星。你可以做的是假设他对应用程序的评分很好,并给他一些回报(实际上只是为了点击应用程序中的“费率”按钮),因为他只有在喜欢时才按下“费率”按钮。另一个建议是在用户在应用程序中花费一段时间后(例如,连续玩了5个以上的游戏)执行此操作。

允许使用类似于
绘制某物的弹出窗口,因为它不会对应用程序进行评级

然而,一些评级最好的应用程序(即使它们是垃圾应用程序)会给你弹出评级窗口。在这个应用程序中,你会多次被要求对200枚硬币的应用程序进行5星评级

如果你一直拒绝给应用评分,最终你不必这么做,你仍然可以得到硬币。但要传达的信息是,人们通常都是绵羊,通常会将其评级为5星级,以阻止弹出

我上面链接的应用程序是一个很好的例子,说明了垃圾应用程序或重新剥皮的应用程序(有500多个类似副本)如何位于应用程序商店的顶部,以及“免费游戏”和“新游戏”等关键词的顶部


另一方面,我理解开发者们在做什么,因为AppStore正在成为一个地方,在那里,如果不花费大量预算进行付费营销(下载),就不可能做出一些东西。

我会删除关于“道德”的部分,因为这是主观的,而相关的客观部分如下所示——这是违反TOS的。无论如何,如果您了解代码失败的原因(TOS违反除外),也应该包括在答案中。此外,审查指南在NDA w/Apple下发布。@JuJoDi现在这只是一堆poo:(我想这也是我自豪地不支持应用商店的另一个原因。这种情况很不幸,但Marcelo必须签署NDA才能访问他发布的信息链接,因此他应该尊重它。执行NDA不是SO的工作。不过,我会编辑我的答案,因为我还没有意识到应用商店审查指南现在是私有的(它们以前是公共的)。是的,我也这么问过=)我建议你不要要求五星评级,但如果你想添加uialert让用户对你的应用进行评级,那么在github上寻找愤怒的示例代码。谢谢,但我确实研究过这些(比如Appirator)。我只是假设,如果我上面的简单代码不起作用,那么其他的东西就错了,Appirator也不会起作用。提供一些东西来换取评级是让你的应用被拒绝的一种快速方式。也许我不是太清楚,我用我自己的应用程序中我想做的事情的图片编辑了这个问题。尽管该图片显示“5颗星”,实际上没有办法强迫用户选择5颗星,也没有办法检测用户是否给出了任何星星/甚至评级。因此,我认为你最好的选择是建立一个基于服务器的评级系统,该系统将与应用商店评级系统完全分离。这个错误尤其是在模拟器上,但我很抱歉o在Decise中出现类似错误(代码不同)。has StoreKit(应用内购买)在模拟器中不起作用。提到13962338。这可能仍然存在!我在设备上测试(使用iBook应用id测试)时也遇到错误。是否至少可以知道用户是对应用进行了评分还是刚刚取消了应用?