揭开均线系统的神秘面纱_在应用程式审查API中揭开新玩法的神秘面纱

揭开均线系统的神秘面纱

During the #11WeeksOfAndroid the new Play In-App Review API was announced. This was a long due functionality that the Play team made available via the Play Core library.

d uring的#11WeeksOfAndroid新的Play应用审查API公布。 Play团队通过Play Core库提供了这项应有的功能。

While most of the feedback has been positive, we have seen some concerns from developers who need to adapt their UI flow to the requirements of the new API. To address these concerns, I would like to explain some of the decisions taken and provide some further guidance to make the most of the API.

尽管大多数反馈都是积极的,但我们已经看到了一些开发人员的担忧,他们需要使其UI流程适应新API的要求。 为了解决这些问题,我想解释一些决策,并提供一些进一步的指导,以充分利用API。

“为什么API不提供任何信息?” (“Why is the API not providing any information?”)

Given the criticality and potential for misuse of an API that would expose users’ reviews or even notify if the review panel was shown, the team has designed the API prioritising user privacy and experience.

鉴于滥用API的重要性和潜在可能性,该API会暴露用户的评论,甚至通知是否显示了评论面板,因此该团队设计了API,将用户的隐私和体验放在优先位置。

While this might seem that it is making developers’ lives harder, I believe that it’s not the case. The API is simple to use (just two method calls!) and designed for the developers’ benefit, while also balancing users’ privacy and preventing the incentivising of unwanted behaviours. The important point is to know “when to use it”.

尽管这似乎使开发人员的生活更加艰难,但我认为事实并非如此。 该API易于使用(只需两个方法调用!),并且为开发人员的利益而设计,同时还平衡了用户的隐私并防止了对不良行为的激励。 重要的是要知道“何时使用”。

“审阅面板变蓝了” (“Review panel comes out of the blue”)

The API is NOT “randomly” showing the review panel. Instead, the developer decides the best place and moment to launch the review flow.

API不是“随机”显示审阅面板。 而是由开发人员确定启动审核流程的最佳地点和时间。

What is true, is that the API was designed (as explained above) to protect users. This is done by not providing information if the review was shown and by not always showing the review flow (see “quota”).

的确,API的设计(如上所述)可以保护用户。 这是通过不提供信息(如果显示了评论)以及不总是显示评论流程(请参阅“配额”)来完成的。

This prevents possible misuses, for example, apps enforcing users to rate them or misleading UIs that would only promote “5 stars” (see “When to request an in-app review”).

这样可以防止可能的滥用,例如,强迫用户进行评分的应用程序或只会提升“ 5星”的误导性UI(请参阅“何时要求应用程序内审阅”)。

“我可以将API用于“为我评分”按钮” (“Can I use the API for my “rate me” button”)

As explained above, the API should NOT be triggered from a call-to-action (i.e “rate me” button) instead it should be triggered as part of the user flow.

如上所述,该API应该从一个号召性的行动(即“速度我”按钮),而不是它应该被触发的用户流程的一部分触发。

Otherwise, the user might not see any action happening after clicking the button if the conditions for showing the review dialog were not met.

否则,如果不满足显示查看对话框的条件,则用户在单击按钮后可能看不到任何动作。

“我的应用程序没有任何“成功”屏幕,因此我无法触发评论” (“My app does not have any “success” screen, so I cannot trigger the review”)

There are plenty of other situations where launching the review would be appropriate. For example, after the user has used the app X times or for longer than Y days. The review flow could be launched after application starts, just make sure not to over-trigger it and continue with your user flow after the review completes.

在许多其他情况下,启动审查将是适当的。 例如,在用户使用该应用X次或超过Y天之后。 审核流程可以在应用程序启动后启动,只需确保不要过度触发即可,并在审核完成后继续您的用户流程。

“此行为将导致用户对我的应用进行差评” (“This behavior will cause users to rate my app poorly”)

Some of the early adopters have shown that when placed in the right place, the API can help users, that would maybe never have rated the app otherwise, to write a review when asked.

一些早期采用者已经表明,如果放置在正确的位置,API可以帮助用户(可能永远不会对应用程序进行评级),在被询问时撰写评论。

At the same time, if the API is misused it could definitely have a counterproductive effect.

同时,如果API被滥用,肯定会产生适得其反的效果。

“我可以使用一些解决方法来查看是否显示了审核面板” (“I can use some workaround to find if the review panel was shown”)

Congrats! While a workaround might seem viable it’s still a workaround, and basing your production code on internal implementation details is dangerous. Plus it defeats the design purpose, which could backfire with negative effects.

恭喜! 尽管解决方法似乎可行,但仍然是解决方法,将生产代码基于内部实现细节是危险的。 另外,它违反了设计目的,而设计目的可能会适得其反。

“ API不可靠且无法正常工作” (“The API is unreliable and not working”)

The API has strict requirements to work, as explained in the “Test in-app reviews” section. The most common mistakes are:

如“测试应用内评论”部分所述,API具有严格的工作要求。 最常见的错误是:

  • Not using an app that is published to Google Play

    不使用发布到Google Play的应用

  • Using an account that never installed the app via Google Play or an account that already reviewed the app.

    使用从未通过Google Play安装过该应用程序的帐户或已经查看过该应用程序的帐户。

  • The primary account (and the one that installed the app) is NOT selected when having multiple accounts in the device.

    当设备中有多个帐户时,不会选择主帐户(和安装应用程序的帐户)。

For more, check the troubleshooting section.

有关更多信息,请参阅故障排除部分。

“我必须知道配额是多少! 我应该如何知道多久进行一次审核?” (“I must know what the quotas are! How am I supposed to know how often to ask for review?”)

Given the API design of not providing completion/result feedback, the quota mechanism is designed to help developers avoid the misuse of the API and over-triggering the review request. The exact quota is an implementation detail, and they are subject to change in the future.

考虑到API设计不提供完成/结果反馈,配额机制旨在帮助开发人员避免滥用API和过度触发审阅请求。 确切的配额是实施细节,将来可能会更改。

Instead of trying to figure out the quota, the app should add its own logic (when/where is the best time to request for review) and rely on the API to launch the review when conditions apply.

该应用程序应尝试添加自己的逻辑(何时/何处是请求审查的最佳时间),而不是试图找出配额,并在适用条件下依靠API发起审查。

那么……使用API​​的最佳方法是什么? (So… what’s the best way to use the API?)

There is no single way or “best way”, furthermore every app has different use cases and user base. Although, the following suggestions might help you:

没有单一的方式或“最佳方式”,而且每个应用程序都有不同的用例和用户群。 虽然,以下建议可能会对您有所帮助:

  • Ensure the user has experienced the app before launching the review flow.

    在启动审阅流程之前,请确保用户已经体验过该应用程序

  • Launch the review flow after screen transitions. For example, after performing some action and subsequently bringing back the user to the “main” screen.

    屏幕转换后启动审阅流程。 例如,在执行一些动作之后,随后将用户带回到“主”屏幕。

  • Avoid calling the API after call-to-action buttons where users might not be expecting a dialog/panel to be shown.

    避免在用户可能不希望显示对话框/面板的号召性用语按钮之后调用API

  • Do NOT block users when launching the review by pre-loading the review flow ahead of time (requestReviewFlow) and skipping the launch if the request was not loaded on time (check sample’s ReviewViewModel).

    启动审阅时,请勿通过提前预加载审阅流( requestReviewFlow )来阻止用户,如果未按时加载请求,则跳过启动(请检查示例的ReviewViewModel )。

  • Do NOT over-trigger the review (i.e every app launch). Even when pre-loaded it can add some small delay to the UI.

    不要过度触发评论(即每次启动应用程序)。 即使预先加载,它也可以给UI添加一些小的延迟。

The PlayCoreKtx sample app shows some of the suggestions above in a simplified way, by showcasing a flashlight app that allows you to pick the flashlight background color.

PlayCoreKtx示例应用程序通过展示允许您选择手电筒背景色的手电筒应用程序,以简化的方式显示了上述一些建议。

  • The ReviewViewModel is responsible to “pre-warm” the review to keep the ReviewInfo object ready and provide it if conditions for the review are met.

    ReviewViewModel负责“预热”审阅,以使ReviewInfo对象保持就绪状态,并在满足审阅条件的情况下提供该对象。

  • PaletteFragment requests the ReviewViewModel to pre-warm the review once launched.

    PaletteFragment请求ReviewViewModel在启动后对预热。

  • After the user selects a background from the PaletteFragment, comes back to the main screen and turns off the flashlight, the MainFragment requests the ReviewViewModel for the ReviewInfo to launch it.

    用户从PaletteFragment中选择背景后,返回主屏幕并关闭手电筒,MainFragment请求ReviewViewModel来启动ReviewInfo。

Note: To keep the sample simple it’s not persisting the last time the review was triggered and also it uses a simple logic that might be met many times. For a production app, a more complex logic should be used.

注意:为了使示例简单,它不会在上一次触发审阅时持续存在,并且使用了可能多次满足的简单逻辑。 对于生产应用程序,应使用更复杂的逻辑。

Hopefully, this post helps clarify some concepts and lets you implement the new In-app Review API.

希望本文有助于澄清一些概念,并让您实现新的应用内审核API。

For more or any questions follow me on Twitter @marxallski

如有任何疑问,请在Twitter @ marxallski上关注我

翻译自: https://medium.com/googleplaydev/demystifying-the-new-play-in-app-review-api-1a78e351db7a

揭开均线系统的神秘面纱

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值