Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
R
ratel-doc
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ratel
ratel-doc
Commits
f4b18e9f
Commit
f4b18e9f
authored
Oct 07, 2019
by
Administrator
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
virtual env doc
parent
25bc8b7f
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
45 additions
and
2 deletions
+45
-2
5.virtual_env.md
5.virtual_env.md
+44
-1
README.md
README.md
+1
-1
5_1_app_panel.jpg
img/5_1_app_panel.jpg
+0
-0
5_2_multi_user_panel.jpg
img/5_2_multi_user_panel.jpg
+0
-0
5_3_create_user.jpg
img/5_3_create_user.jpg
+0
-0
No files found.
5.virtual_env.md
View file @
f4b18e9f
# 虚拟化相关
虚拟化章节主要描述ratel提供的设备指纹对抗功能,设备指纹对抗和改机工具不是等价概念。对改机工具而言,包括修改机型、序列号、imei等,然而手机中存在大量弱唯一ID属性,以及存在一些改机工具逃离方法、存在危险环境检测手段。ratel希望在一个尽量正常的手机环境中(无root、无危险app、考虑模拟器AOSP等),实现ID属性飘逸,且保证ID数据校验可靠性、ID属性飘逸范围合法性、ID属性数据关联不被破坏。ratel希望实现设备指纹方案无法唯一定位ratel放大的各个设备,虽然ratel提供了常规设备定位信息自定义接口(IMEI,serial等),但是我们并不建议通过外部干预这些信息的飘逸。
TODO
\ No newline at end of file
# 一机多号
在前面章节已经叙述过ratel提供的几种虚拟化模式,在这几种模式中,目前看起来使用较多,而且操作较为复杂的为MULTI模式,甚至我把这模式单独命名为
``一机多号``
,一机多号可以达到类似VirtualApp那种无限多开的效果,当然和virtualApp相比有些优势和弱势。下面使用一个demo来叙述ratel一机多号操作流程。
## 操作面板简述
![
ratel app panel
](
img/5_1_app_panel.jpg
)
1.
基础信息面板显示当前被ratel感染的app的基本信息,点击这个面板可以打开app,需要给ratelManager提供打开其他app的权限。
2.
常规操作面板提供一些简单的操作指定app的功能,部分功能需要app处于运行态才能使用。
3.
引擎信息面板显示当前app使用的引擎
4.
构建参数面板显示部分app构建的时候的相关信息。
可以看到,正常情况下,并没有操作一机多号的入口。
## 一机多号操作面板
ratelManager处理一机多号,需要满足两个条件:
1.
app虚拟模式处在multi模式下下,加入构建参数:
``ratel_properties_virtualEnvModel=MULTI``
或者在插件中指定
``<meta-data android:name="virtualEnvModel" android:value="Multi" />``
2.
app处于运行态
满足两个条件之后,即可看到一机多号操作面板,如下:
![
multi user oprate pannel
](
img/5_2_multi_user_panel.jpg
)
可以看到,默认情况下,app有一个默认设备
``default_0``
。这里解释一下,ratel一机多号约定,每个设备需要有一个名字,作为虚拟设备的唯一标记,名字只可以使用数字、下划线、字母组成。
### 创建设备
在操作面板中,有一个创建设备的按钮,点击后在弹窗中输入一个设备ID(随意起名字,只能使用数字、下划线、字母组成),确定之后即可看到一个新的设备出现在一机多号面板中。
![
create user
](
img/5_3_create_user.jpg
)
### 切换设备&删除设备
上图可以看到,一机多号中,点击设备item可以弹出操作菜单,提供删除设备和切换设备功能
### api切换设备冲突解决
在之前章节有过讲诉,ratel支持使用插件代码控制切换设备
`` RatelToolKit.virtualEnv.switchEnv("18782164555");``
在ratel生命周期中,ratelManager控制切换和插件控制切换,都应该生效,但是如果他们传入的id不相同,则会导致二义性,实际表现则是,ratel会使用插件的逻辑为主。
如果你的插件存在控制切换设备逻辑,那么在ratelManager中直接控制切换将会失效,你可以通过两种方案使得设备切换以ratelManager为主。
1.
注释插件中切换设备代码
2.
勾选ratelManager操作面板中,
``禁用API切换``
按钮。
这个功能的主要使用场景是:
1.
在没有编程能力的用户中,使用一机多号功能
2.
在存在编程的自动化控制场景下,切换到指定账户,进行设备状态场景还原(比如,某个账号被封禁,切换到指定账号,观察被封禁的表现)
\ No newline at end of file
README.md
View file @
f4b18e9f
...
...
@@ -21,7 +21,7 @@
# 本月测试证书
```
dNd/TJ0pJI1QLAnjEDe5HpbQWBXXZb4Owg7M+6Jec7HbKfrq0UcPD+WLge2p4ubIKnmLNKBk+DX0slYVdAxPU6D+SYjfH7UxJKQaUeI3nOcdD45ioOrDs/hWZOtY8owS85H+yVycyU4dgJFPlvv7VQZwfP0yPiEWR3PWebNVgM
czHhH0D5ruFHHgWZEfjEDiBasPnnVdkAXfV8IKyFZnQ4K8J57W+6dZ6rARPVXEgylF6JaB3HtN6o2FLLII2Wc6FdHNI23u1lL8qe1jHbNHiCEI0PffyNBpKSDrFJtpaiHygx69LuER0J7mBqG5c8zXy8M9pirXKFH6fr0uadFFBalBHXneTrZrpYxmlL3A8skTG1fwMlEedukbgv5pgc3xTPwga6yXpllCzstGbqD3501MuBwcoETEjp0r4ahwRIA/r2OvmI0ww8uVXqDEwQx8Rf1+0Cm2lwnM66USsoH1LFSw8UmlTbN+qsrU1bP/G/m+T/T3IPJu2E4ZYo3mnbNQZCb4dDkHntaLGSU18JOlQzdzyzbfSXCzxYlTrnn52i/DmXch2evESGHBawTA1G1Rq90/2M8VeNExihxX8dtWnhfywL2OvTrj+C0A12Mg7aXQuamvZlaR1o0ulzArtCa4hpnul8N9nL8339sqfJpxkop6vBnOTc11g/nK1nEhFS4
=
dNd/TJ0pJI1QLAnjEDe5HpbQWBXXZb4Owg7M+6Jec7HbKfrq0UcPD+WLge2p4ubIKnmLNKBk+DX0slYVdAxPU6D+SYjfH7UxJKQaUeI3nOcdD45ioOrDs/hWZOtY8owS85H+yVycyU4dgJFPlvv7VQZwfP0yPiEWR3PWebNVgM
eEG0UVJ3gm2LlQMf3n8y6kwzslG/MUeVOsnIlYZ7CKcOJzD6FBNWCvn6N8Gi/61muWU+LFw5ZPSIjBPRDXre/Qn20r8YG33TBEkvt7hauQ4c+aos+xQRhgHQw+OncuqCS7hwcvvMmSXFsld3VyI1ZMuwCuhNXBfrhh2C9i0vlcxm1PlqwATMx+b52U39XO0S045kETs74e0LFOQGYaG2D++/SvlW0ZYGIw6EsWGgtFtj0GVTG93N9ehklIFtXo7xNPFfx0taX/xf5Fwn37jNMiX8CgJsjnSvCBI9lwFMYRI3rDEiNuBwz02YvxsASTWTi5B1xFXFl5OeQK2/b1aDTkZNZMqPRtNZR/+QOLQ0wG+iFvRKAqeqyvdrQ0kL6OPwWMl4EXa80yDwBXO5QjgXacQ0YaxDXzKtdLw0LLM9kAQ9w3ph/jD7/sEo1ZShuKRTGblhP1PoskNdYPI3T3CugJTXx9QMHhIUTRaCfMKk2GzASaw6T6M18okWApDa+A2iU
=
```
# 分模块文档
...
...
img/5_1_app_panel.jpg
0 → 100644
View file @
f4b18e9f
439 KB
img/5_2_multi_user_panel.jpg
0 → 100644
View file @
f4b18e9f
193 KB
img/5_3_create_user.jpg
0 → 100644
View file @
f4b18e9f
203 KB
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment