react-native项目上线国内安卓应用市场

8 篇文章 0 订阅
2 篇文章 0 订阅

项目场景:

用户隐私协议审核

国内Android端上线应用是需要在进入程序时弹出一个表述该程序的《隐私政策》和《用户协议》以符合工信部政策


问题描述

在显示隐私协议时就已经初始化程序了

由于使用的是react-native开发,导致我们会引用很多第三方库以及绝大部分的代码逻辑都是在rn端进行编写,而部分第三方库会自己进行 react-native link 操作。也就是在 react-native : 0.59 后省略掉了这一步操作,所以会在进入程序时会立刻进行MainActivity初始化,导致第三方库链接原生不可控。

原因分析:

预期流程:

  1. 用户点击APP程序
  2. 呼出启动页 2s (SplashActivity)
  3. 隐私政策和用户协议页 (PrivacyAgreementActivity)
  4. 同意后进入程序开始初始化 (MainActivity)

目前流程:

  1. 用户点击APP程序
  2. 呼出启动页 2s (MainActivity)
  3. 开始初始化 (react-native)
  4. 呼出隐私政策和用户协议页 (react-native)

MainActivity 会进行rn端的所有初始化,以及那些库,比如你的exporeact-native-orientation-locker等会自动进行链接原生导致权限审核不通过。


解决方案:

原生代码进行分离启动页和主活动页

有些帖子会说去注意import导入,但是用了很多库的情况下,他们部分需要与原生进行react-native link 肯定是忙不过来的,而且极其浪费时间,没法保证哪个会不会立刻初始化

原生方面分离两个模块 一个是启动页Activity 一个是原来的MainActivity

在第一次进入程序时判断 本地是否存在 同意协议的状态,没有就进入启动页Activity 同意后存储这个状态再跳转到MainActivity

存在同意协议的状态就直接去MainActivity

以上是具体逻辑,代码就不贴了,有什么问题可以留言

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值