腾讯云移动应用安全(APP应用加固)SDK嵌码

嵌码常见问题
 
嵌码常见技术问题
 
2.1.   移动应用监控SDK支持什么版本的Android和IOS?
 
    移动应用监控SDK的iOS 客户端支持iOS 6.0以上系统,并且支持CocoaPods。Android客户端支持2.3以上5.0以下(含5.0)的系统。

2.2.    同一APP应用不同版本需要插入不同的APP Key么?
 
    不需要。客户端在获取数据时,会同时获取APP版本信息,在前台报告页面展示时,可以基于APP版本进行数据区分。
 
2.3.   移动应用监控SDK安装包有多大?编译后会使App文件增加多少体积?
 
IOS客户端zip包大小是1.6M,编译后会使APP增加366KB。
 
Android客户端Ant版zip包大小是576KB,编译后APP增加332KB。
 
Android客户端Gradle版zip包大小是579KB,编译后APP增加332KB。
 
Android客户端Eclipse版zip包大小是1.39M,编译后APP增加332KB。

2.4.   移动应用监控SDK支持对哪些协议的请求进行性能分析?
支持对HTTP协议、HTTPS协议和纯TCP协议的请求进行性能分析。

2.5.   如果不升级客户端程序,是否对使用有影响?
 
不升级SDK,不会影响原有数据的采集和报表。但如果系统增加的新功能需要采集此前没有采集的数据支持,则用户无法使用这部分功能。

2.6.   如何卸载移动应用监控SDK客户端程序?
 
用户无需卸载客户端程序,只需要在“APP设置”页面中将APP删除,客户端即会停止工作,不再进行数据采集。用户也可以通过移除移动应用监控SDK客户端代码的方式,实现完全卸载。

2.7.   如何找到Main Activity?
 
    打开AndroidManifest.xml文件,查找带有配置如下intent-filter的activity即为Main Activity:
 
<activity android:name="**Activity" android:screenOrientation="portrait">
 
<intent-filter>
 
              <action android:name="android.intent.action.MAIN" />
 
              <category android:name="android.intent.category.LAUNCHER" />
 
</intent-filter>
 
 </activity>

2.8.   在Main Activity初始化之前就发生网络请求的情况下如何嵌码?
 
    情况1:App继承了Application,在Application 的onCreate()方法的第一行增加 Bonree.withApplicationToken("**************").start(this);
 
    情况2:App未继承Application,在入口Activity的onCreate()方法的第一行增加 Bonree.withApplicationToken("**************").start(this);

2.9.   如何判断移动应用监控SDK客户端嵌码是否成功?
 
方法1:查看logcat日志,搜索关键字BRAgent,出现如下日志则嵌码成功:
 
       BRAgent enable (注:BRAgent 启动成功)
 
       BRAgent start succcess (注:BRAgent 嵌码成功)
 
       BRAgent connect server success (注:BRAgent 数据回传成功)
 
    方法2:运行已经嵌码的APP,进行有网络数据交互的操作;登录移动应用监控SDK报表平台, 选择已经嵌码的APP查看是否报告已经有网络数据。如果有,则代表嵌码成功。注:数据返回会有一定延时。

2.10. 为什么嵌码成功后,登录系统看不到数据?
 
    登陆移动应用监控SDK系统看不到数据主要有如下几种可能。
 
(1) 移动应用监控SDK客户端嵌码失败;
 
(2) 所监测的APP没有被启动或是在无网络情况下启动;
 
(3) 网络延迟或其他网络故障;
 
(4)  客户将AppKey写错了;
 
2.11. 移动应用监控SDK都支持哪些编译方式?
 
    目前移动应用监控SDK嵌码支持 Ant、Gradle和Eclipse 三种编译方式,请选择适合您的编译方式。部署详情请参阅部署文档。
 
    注:嵌码apk只适用于一种编译方式,不能同时使用两种编译方式进行打包,例如:使用 ant 编译完成后再用 eclipse(没有安装我们的插件)编译的话,会覆盖ant编译出的已嵌码的apk。

2.12. 错误提示没有“build.xml”文件怎么办?
 
    首先确认当前是处于工程根目录,若根目录依然没有build.xml,则输入android update -p .自动创建build.xml。

2.13. 编译时出错“com.bonree.agent.android.Bonree”不存在怎么办?
 
    首先确认com.bonree.agent.jar已放到工程libs目录下; 其次在报错源文件头部引入com.bonree.agent.android.Bonree;

2.14. 为什么编译能通过,但是嵌码却失败了?
 
首先确认com.bonree.classrewriter.jar已正常引入,然后
 
set ANT_OPTS=”-javaagent:X:xxxcom.bonree.classrewriter.jar”,按照嵌码流程重新打包。

2.15. 编译时出现非法字符:65279或编译后运行程序出现乱码怎么办?
 
    首先请确认不引入移动应用监控sdk的时候无上述问题,若该问题确认是引入移动应用监控sdk后导致,请将打包日志和相应生成的apk反馈到移动应用监控技术人员。

2.16. 应用是多重继承的关系,要怎么编译打包呢?
 
    直接按《嵌码说明》中的内容编译即可

2.17. 为什么运行release命令的时候报错?
 
首先请确认不引入移动应用监控sdk的时候无上述问题,若该问题确认是引入移动应用监控sdk后导致,请将打包日志和相应生成的apk反馈到移动应用监控技术人员。

2.18. 如何使用自定义打包工具对Eclipse生成的apk进行嵌码?
 
    对已生成的apk无法进行SDK嵌码

2.19. 如何配置移动应用监控SDK客户端的过滤信息?
 
移动应用监控SDK支持两种数据过滤机制。
 
(1)  可通过“请求地址过滤”对请求地址进行过滤,操作方式如下:
 
登录移动应用监控SDK;
 
选择“基础设置”-“APP设置”-“添加或修改APP”;
 
选择“请求地址过滤”tab页签;
 
勾选“白名单”或“黑名单”选项,填写要过滤的URL地址,多个URL地址之间用逗号分隔;
 
注:白名单为只采集符合输入规则的URL地址对应的网络数据;黑名单为将符合输入规则的URL地址过滤掉,不采集这些URL地址对应的网络数据。

(2)可通过“采样规则设置”对采集的样本进行过滤,操作方式如下:
 
登录移动应用监控SDK;
 
选择“基础设置”-“APP设置”-“添加或修改APP”;
 
选择“采样规则”tab页签;
 
在采样规则中,用户可设置采集样本数量,可基于地域、运营商、接入方式、APP版本等条件设置样本采集规则;

2.20. 如何配置崩溃日志的采集?
移动应用监控SDK目前无法控制崩溃日志的采集,只要发生崩溃,客户端就会采集崩溃日志。

2.21. 为何Eclipse插件安装后运行失败?
 
针对eclipse版本不同区分为“Eclipse-3.7_4.3”和“Eclipse-4.4_4.5”两个版本,按对应版本安装即可。
 
平台及采集类问题:
移动应用监控APP SDK监测客户端具体会采集哪些数据?
网络性能数据: 请求响应时间、DNS时间、TCP时间、SSL握手时间、请求时间、服务响应时间、数据接收时间、信号量、请求地址、目标IP、客户端IP、地区、网络制式、APP版本、请求头、响应头、请求错误发生时间;
崩溃数据: 崩溃堆栈信息、崩溃时间;
设备信息: 设备名称、设备型号、操作系统名称、操作系统版本、设备唯一标识码;
性能数据多长时间采集一次?
移动应用监控APP SDK监测的数据采集时间粒度是:1分钟,即如果终端用户持续使用APP,系统每间隔1分钟获取一次网络性能数据并上报给数据中心。
历史数据保留时长是多久?
WEB提供3个月内数据可查。
移动应用监控APP SDK监测支持哪些维度的分析?
APP性能支持:视图、主机、域名、地域、运营商、接入方式、APP版本等维度分析。
APP请求错误支持:请求地址、错误类型、视图、主机、域名、地域、运营商、接入方式、APP版本等维度分析。
APP崩溃支持:崩溃函数、视图、OS版本、设备型号、APP版本等维度分析。
移动应用监控APP SDK监测是否支持混合式APP?
iOS客户端和Android客户端均支持混合式APP,即可以获取到APP中WebView组件发起的请求的网络性能数据。
能否分析用户的使用习惯?
用户使用习惯的分析部分可以使用Talking Data,我们与TalkingData不冲突哦,相反我们是互补的,让APP既有用户行为监控也有性能监控。
移动应用监控APP SDK监测是否可以分析崩溃原因?
移动应用监控APP SDK监测支持崩溃分析。首先,移动应用监控APP SDK监测可以从崩溃函数、视图、OS版本、设备型号、APP版本、崩溃原因等维度对崩溃进行统计并查看崩溃的分布。其次,对于相同的崩溃原因,移动应用监控APP SDK监测提供完整的堆栈信息、事件列表、崩溃路径供开发者分析。
月活数量是否有限制?
根据云控制台中创建APP时进行选择并限制,超出月活限制部分数据将不采集。
地域是根据什么定位的?
是根据设备出口IP、GPS、基站和WIFI综合定位的。
iOS7 之后不再开放设备 ID 和 MAC 地址的获取,我们如何识别这种设备?
运用keychain结合 [[[UIDevice currentDevice] identifierForVendor]UUIDString]取得设备唯一标识。
什么是关键元素分析?
在APP应用程序中,会有一些关键的业务接口,它们通常存在于关键的业务过程中(例如:登录或者购买),这类元素远远要比其它元素更为重要,其性能的好坏对业务有着直接的影响。因此,用户常常需要密切监测这些关键元素,当它们的性能表现不佳时,及时获得告警。
数据回传对 APP 有影响么?
数据经过加密和压缩,消耗流量很小,影响可以忽略不计,更多详细信息可以查看测试报告。
嵌入移动应用监控 APP SDK 监测客户端程序后,会对 APPStroe 审核有影响么?
我们已经过严格的测试,不会对APPStore审核有影响。

标签