# guru_rating

guru_rating is a project that provides a rating guide process for users to rate the app.

## Project structure

- The `core` directory is the main entry point for the rating guide process. See `lib/core/rating_guide.dart` for more details.
- The `page` directory contains the related UI pages for the pop-ups.
- The `lib/mixins` directory defines two interfaces, to get the local and remote configurations for compatibility with old projects.

## Remote config

引导流程中涉及到的remote config:
⚠️如果没有使用实现remoteConfigAware方式，则需配置以下内容，否则不会进入评分引导
- key: `app_rater`
- value: `{"gap_days":1,"last_pop_gap_days":7,"mode":"in_app","validation":"","entry_enable":false}`

- parameters:
    - `gap_days`: 限制首次安装后n天触发，默认1天
    - `last_pop_gap_days`: 限制两次触发间隔n天，默认7天
    - `mode`: Android 挑战评分模式 `in_app`/`url`, `in_app`即为in_app_review，`url`为gp链接需要接入方设置实现`goToGPCallback`
    - `validation`: 字符串类型，接入方自己额外限制配置（check阶段最后判断），默认为空字符串
    - `entry_enable`: 设置评分入口是否开启，默认关闭
