赞
踩
最近在做flutter跳转去应用市场评分的功能,虽然是一个很小的功能,但是要做的既简单又高效,同时又能把细节考虑到,还是有坑要走的,这边记录一下。
做应用市场相关的运营,在app内增加评分引导,提高市场好评数量和评分
其实在网上搜一大圈,Android的跳转大概就是这么几种方式
常见方案 | 优点 | 缺点 |
---|---|---|
通过market://details?id=xxx跳转 | 简单直接 | 会唤起系统应用商店选择弹窗 |
拉取应用商店列表定制跳转 | 可指定相应的应用市场 | 实现繁琐 |
通过渠道包判断定制跳转 | 可指定相应的应用市场 | 实现繁琐/渠道包不一定准确(当然关于渠道包可能有特定的产品需求) |
判断设备型号定制跳转 | 可指定相应的应用市场 | 不一定准确,存在品牌和商店不对应的情况,如一加手机是oppo应用商店 |
用Flutter实现还跟Android原生不一样,最好能简单一点,其实我觉得直接通过Uri跳转就可以了
最关键的就是两点:
所以就有了这个方案:
方案 | 优点 | 缺点 |
---|---|---|
循环遍历应用市场url列表 | 超级简单/可指定相应的应用市场 | 几乎无 |
应用内拉起评分弹窗 | 跳转后进入详情页的 | |
---|---|---|
华为 | 不支持 | 推荐栏 |
小米 | 不支持 | 详情栏 |
oppo | 部分手机支持 | 评论栏 |
vivo | 不支持 | 评论栏 |
ios | 支持/可评星不可评论 | 评论弹窗 |
附:
vivo应用评论调起能力接入指南:https://dev.vivo.com.cn/documentCenter/doc/257
oppo应用评论调起能力接入指南:https://open.oppomobile.com/new/developmentDoc/info?id=11038
pubspec.yaml中依赖url_launcher这个三方库
List<String> _marketUrls = [ "vivomarket://details?id=your_package_name&th_name=need_comment", "oaps://mk/developer/comment?pkg=your_package_name", "appmarket://details?id=your_package_name", "mimarket://details?id=your_package_name", "itms-apps://itunes.apple.com/app/idyour_package_id?action=write-review", ]; Future<String?> _getLaunchUrl() async { for (String item in _marketUrls) { if (await canLaunchUrl(Uri.parse(item)) { return item; } } return null; } // 评分引导弹窗出现的时机调用: if (await _getLaunchUrl() != null) { // 显示评分引导弹窗 } // 评分按钮点击事件调用: Future<void> _toMarket() async { String url = (await _getLaunchUrl())!; await launchUrl(Uri.parse(url); }
直接通过market://details?id=xxx实现真的很简单。
但是我觉得我们应该考虑:针对当前的产品背景和实际情况,还有没有其他更合理的实现方式?
做这个功能的目的是想拉一拉市场的评分,从而获得更多的转化。
我们在技术层面考虑的越全面越合理,那么到了产品那边产生的价值就会越大。
代码真的很少,但是却查了很多,思考了很多,所以选择记录下来。
希望这简短的代码可以帮你们快速的实现跳转应用市场评分的功能。
真的没有找到华为和小米能直接跳转到应用市场评论栏的方法,好像是不支持的。
有谁找到了欢迎评论告知,谢谢~
创作不易~
给个赞吧~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。