Bugtags 远程配置功能介绍
远程配置顾名思义是在不发版的情况下,更改应用的行为和外观。
举个例子,如下图:
在 Demo Page 中,BUTTON 的颜色不一样,如果想实时修改按钮颜色,测试不同颜色的按钮实际点击情况,该怎么做呢?
其实很简单,只需要三步:
- Web 云平台创建远程配置
- 客户端添加代码
- 开始测试
Web 云平台创建远程配置
进入远程配置,点击创建参数
PS:远程配置与企业版是单独收费的,新用户创建公司后可以免费体验 15 天,若想购买远程配置请联系公司拥有者。
填写参数信息
上图中,红框与绿框区域一会儿我们会在代码中用到。
设置下发规则
在下发规则中,可以指定下发版本、比例、范围、用户属性,请根据自己的实际情况进行设置。
上图中,已经指定下发版本 > 2.0.1,下发比例 50%,设备类型包含 iPhone 7 与 iPhone 7 Plus。
远程配置创建完成
创建完成后,会有配置测试方法的提示,将这些代码添加到初始化 Bugtags SDK 中。
上图为 iOS 开启测试状态的代码。
客户端添加代码
现在,需要调用远程配置,根据参数判断按钮的颜色。
请确保集成 Bugtags SDK 2.0.0 以上版本,然后添加以下代码:
iOS
UIButton *bottomButton = [UIButton buttonWithType:UIButtonTypeCustom];
NSInteger flag = [[Bugtags remoteConfig] integerForKey:@"bottom_btn_color"]; //这里的参数名要与创建参数的名称一致
UIColor *color = nil;
switch (flag) {
case 1: //这里是参数值
color = [UIColor redColor];
break;
case 2: //这里是参数值
color = [UIColor greenColor];
break;
case 3: //这里是参数值
color = [UIColor blueColor];
break;
default:
color = [UIColor blackColor];
break;
}
[bottomButton setTitleColor:color forState:UIControlStateNormal];
Android
//find text view
TextView textView = (TextView) findViewById(R.id.bottomButton);
int color = Bugtags.remoteConfig().getInteger("bottom_btn_color");
switch (color) {
case 1:
textView.setTextColor(Color.RED);
break;
case 2:
textView.setTextColor(Color.GREEN);
break;
case 3:
textView.setTextColor(Color.BLUE);
break;
default:
textView.setTextColor(Color.BLACK);
break;
}
- iOS API:https://docs.bugtags.com/zh/remoteconfig/ios/index.html
- Android API:https://docs.bugtags.com/zh/remoteconfig/android/index.html
开始测试
我们看到,刚创建的参数已经到了开发环境。一共分为三个环境:
开发环境:开发人员使用,创建者与应用管理员可任意编辑该参数。注意,开发环境中的参数无法下发到客户端,请先同步到测试环境后进行测试。
测试环境:内部测试使用,仅支持修改描述、下发比例与下发值,只有应用管理员可以发布到生产环境。
生产环境:线上用户使用,仅支持修改描述、下发比例与下发值,只有应用管理员可以操作该参数上线、下线或删除。
若想更改客户端中按钮的颜色,只需要切换参数值即可。
如果你的应用线上版本是在 Live 模式,可以点击同步到 Live,同步后默认是线下状态,请手动上线该参数。
好了,远程配置的介绍就到这里,快去试试吧!
如果还有疑问,欢迎加入 Bugtags QQ 群:428020377,我们尽力为你解决!
Bugtags 远程配置功能介绍的更多相关文章
- [转载]eclipse的远程调试功能配置
原文地址:eclipse的远程调试功能配置作者:我的 用途:web应用部署并运行于外部(区别于eclipse环境中启动的)应用服务器中,当出现问题时,可以使用eclipse工程的源代码进行跟踪调试. ...
- x-pack 功能介绍及配置传输层安全性(TLS / SSL)
x-pack 功能介绍及配置传输层安全性(TLS / SSL) 学习了:https://blog.csdn.net/wfs1994/article/details/80411047
- 【转载】salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载
salesforce 零基础开发入门学习(一)Salesforce功能介绍,IDE配置以及资源下载 目前国内已经有很多公司做salesforce,但是国内相关的资料确是少之又少.上个月末跳槽去了新 ...
- Docker 中的网络功能介绍 外部访问容器 容器互联 配置 DNS
Docker 中的网络功能介绍 | Docker 从入门到实践 https://vuepress.mirror.docker-practice.com/network/ Docker 允许通过外部访问 ...
- CentOS以及Oracle数据库发展历史及各版本新功能介绍, 便于构造环境时有个对应关系
CentOS版本历史 版本 CentOS版本号有两个部分,一个主要版本和一个次要版本,主要和次要版本号分别对应于RHEL的主要版本与更新包,CentOS采取从RHEL的源代码包来构建.例如CentOS ...
- fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址)
fedora21发布与新功能介绍(附fedora21安装教程与fedora21下载地址) 最新的Fedora 21终于正式发布了,Fedora Server 是一款强大可定制化的操作系统,包括了最好最 ...
- 服务注册发现consul之一:consul介绍、安装、及功能介绍
Consul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用 Go 语言开发.它具有很多优点.包括:基于 raft 协议,比较简洁: 支持健康检查, 同时支持 HTTP 和 ...
- 微信小程序产品定位及功能介绍
产品定位及功能介绍 微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验. 小程序注册 注册小程序帐号 在微信公众平台官网首页(mp.weixin.qq ...
- 带你走近AngularJS - 基本功能介绍
带你走近AngularJS系列: 带你走近AngularJS - 基本功能介绍 带你走近AngularJS - 体验指令实例 带你走近AngularJS - 创建自定义指令 ------------- ...
随机推荐
- 安装.cer证书并将证书从.cer格式转化为.pem格式
## 安装.cer证书并将证书从.cer格式转化为.pem格式 ### 安装.cer证书到本地 打开*运行*窗口 输入MMC.exe, 单击*确定* 在打开的控制台1的窗口中. 选择*文件*, 选择* ...
- PythonS12-day4学习笔记
# 迭代器.装饰器.生成器 # 迭代器 li = [1, 3, 'he', '&'] n = iter(li) print(n.__next__()) import os, sys # 生成器 ...
- Intent和IntentFilter详解
Intent用于启动Activity,Service, 以及BroadcastReceiver三种组件, 同时还是组件之间通信的重要媒介. 使用Intent启动组件的优势1, Intent为组件的启动 ...
- 移动端头像上传AJax input file
jQuery中的Ajax不能支持 input file 需要用ajaxupload.js但是先需要引入jQuery文件 <script src="__PUBLIC__/js/ajaxf ...
- js获取url的常用方法
//设置或获取对象指定的文件名或路径. console.log(window.location.pathname) //设置或获取整个 URL 为字符串. console.log(window.loc ...
- oracle 锁表查询与解锁
查询锁住的表 SELECT s.sid, s.serial#, s.username, s.schemaname, s.osuser, s.process, s.machine,s.terminal, ...
- 手把手原生js简单轮播图
在团队带人,突然被人问到轮播图如何实现,进入前端领域有一年多了,但很久没自己写过,一直是用大牛写的插件,今天就写个简单的适合入门者学习的小教程.当然,轮播图的实现原理与设计模式有很多种,我这里讲的是用 ...
- (转)COM组件里的AddRef()
D3D是 COM组件,它在服务进程中运行,而不在当前的客户进程中.在DX组件运行过程中,要创建一系列接口对象,如CreateDevice()返回接口指针,这些接口及其占用内存什么时候释放,要通过“引用 ...
- FTP上传-封装工具类
import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import ja ...
- MongoDB学习笔记九:分片
分片(sharding)是指将数据拆分,将其分散存在不同的机器上的过程.有事也用分区(partitioning)来表示这个概念.将数据分散到不同的机器上,不需要功能强大的大型计算机既可以存储更多的数据 ...