美文网首页
如果发生了异常情况,怎么快速止损?

如果发生了异常情况,怎么快速止损?

作者: 皓皓amous | 来源:发表于2023-08-27 17:44 被阅读0次
功能开关
统跳中心
动态修复:热修复、资源包更新
自主修复:安全模式
首先,需要让App具备一些高级的能力,我们对于任何要上线的新功能,要加上一个功能的开关,通过配置中心下发的开关呢,来决定是否要显示新功能的入口。如果有异常情况,可以紧急关闭新功能的入口,那就可以让这个App处于可控的状态了。

然后,我们需要给App设立路由跳转,所有的界面跳转都需要通过路由来分发,如果我们匹配到需要跳转到有bug的这样一个新功能时,那我们就不跳转了,或者是跳转到统一的异常正处理中的界面。如果这两种方式都不可以,那就可以考虑通过热修复的方式来动态修复,目前热修复的方案其实已经比较成熟了,我们完全可以低成本地在我们的项目中添加热修复的能力,当然,如果有些功能是由RN或WeeX来实现就更好了,那就可以通过更新资源包的方式来实现动态更新。而这些如果都不可以的话呢,那就可以考虑自己去给应用加上一个自主修复的能力,如果App启动多次的话,那就可以考虑清空所有的缓存数据,将App重置到安装的状态,到了最严重的等级呢,可以阻塞主线程,此时一定要等App热修复成功之后才允许用户进入。

隐式启动,利用URI,和上面的action类似,只是这里由action转成了uri 
步骤一:首先需要定义符合URI通信的协议,这里很简单:hello://test.uri.activity?action=123&secret=buder
(1)scheme协议:hello
(2)host路由地址:test.uri.activity
(3)?query参数:query参数可以有多个,是键值对的表示方式,键值对之间用&连接。本例中key=action,value=123
步骤二:协议定义好后,需要在intent中添加上action字段,这里我们还是自定义self_define_uri作为action字段
/**
* 方式三:URI跳转
*/
String uriString = "hello://test.uri.activity?action=123&secret=buder";
Uri uri = Uri.parse(uriString);
Intent intent = new Intent("self_define_uri");
//Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(uri);
startActivity(intent);

public static Uri getRouteUri(Action action){
      try {
          Uri.Builder builder=new Uri.Builder();
          builder.scheme(action.scheme);
          builder.authority(action.host);
          builder.path(action.path);
          Map<String, String> query=action.query;
          if(query!=null&&!query.isEmpty()){
              for (Map.Entry<String, String> entry:query.entrySet()){
                  builder.appendQueryParameter(entry.getKey(), entry.getValue());
              }
          }
          return builder.build();
      } catch (Exception e) {
          Log.e(TAG, "getRouteUri: build route uri error, action="+action, e);
          return null;
      }
  }

相关文章

  • 捡菌

    做突破。 假突破一次,止损。再一次,再止损。又一次,还止损。 怎么做怎么止损,真特么邪门了。于是下次突破的时候,索...

  • 期货的止损简单思考

    关于止损的划分有几十种:价格止损、技术止损、趋势止损、切线止损、形态止损、K线止损、筹码止损、人气止损、指标...

  • 怎样避免在期货交易中频繁止损?

    我从事期货投机超过7年了。在止损的问题上我做了很多的思考。止损点数如果设置得过小,那就会出现频繁止损的问题。如果止...

  • 如何止损

    关于止损? 在股市里止损是必修的,但是如果盲目止损你的账户会越做越迷茫,还有部分人高吸低抛,错了就止损,最后资金越...

  • 人生需要及时止损

    何谓止损,止损就是在错误的方向上及时收手。如果不懂得及时止损,那样就会元气大伤。 在外汇行业中,如果对于交易订单不...

  • 连续亏损怎么办?这篇文章你需要看看!

    一、连续亏损怎么办? 如果偶尔判断错误一次,止损了这属于正常现象,但当你发现一段时间以来连续止损,怎么做都亏钱的时...

  • 期货交易专业术语

    市场止损:指定某个价格抛出追踪止损:按照当前市场价,再亏损一定的止损价距 限价止盈:按照指定的价格出售,如果当前单...

  • 【秒懂合约】一文搞懂止盈止损,青铜变白银丨概念篇(下)

    在币圈,过山车式的行情真的很常见,如果你在玩合约却不知道什么是止盈止损,不知道怎么止盈止损,那晓生只好很负责任的告...

  • 合约经验总结(转)

    每次开单前,都设置好止损止盈点位,止损位为开仓价一般3%-5%,如果被止损了说明位置不好,千万不要扛单,找好位置再...

  • 今天,我们谈谈止损

    今天,我们来谈谈止损。 如果大家看过一些股票方面的书,大多第一条就会告诉你,要记得止损。例如:“止损并不总是正确,...

网友评论

      本文标题:如果发生了异常情况,怎么快速止损?

      本文链接:https://www.haomeiwen.com/subject/dfuwmdtx.html