如何在Android设备中将CA证书添加至系统信任库?含LoadRunner测试疑问
Android系统信任库导入CA证书方法(含LoadRunner测试场景适配)
通用系统证书导入步骤(需Root)
Android系统信任库目录默认只读,必须Root设备才能修改,操作流程如下:
- 生成证书哈希值:用OpenSSL命令处理待导入的CA证书,Android 7及以上版本执行
openssl x509 -subject_hash_old -in 你的证书文件.pem | head -1,旧版本替换为subject_hash命令,取输出的哈希值。 - 重命名证书:将证书文件改名为
<哈希值>.0,例如哈希值为abc123,则命名为abc123.0。 - 推送并移动证书:
- 用adb推送证书到设备存储:
adb push abc123.0 /sdcard/ - 进入adb shell并获取Root权限:
adb shell && su - 重新挂载系统分区为可写:
mount -o rw,remount /system(部分设备需替换为/system_root) - 移动证书到系统信任库:
mv /sdcard/abc123.0 /system/etc/security/cacerts/
- 用adb推送证书到设备存储:
- 设置证书权限:执行
chmod 644 /system/etc/security/cacerts/abc123.0和chown root:root /system/etc/security/cacerts/abc123.0 - 重启设备,系统会自动加载该证书到信任库。
LoadRunner测试场景适配
针对原生/混合应用无网络、无法录制流量的问题,补充以下处理步骤:
- 导出LoadRunner代理证书:在LoadRunner的代理配置界面,导出代理证书为PEM或CER格式;若为CER格式,可通过
openssl x509 -inform der -in 证书.cer -out 证书.pem转换为PEM格式。 - 按上述通用步骤将证书导入系统信任库,确保哈希值生成正确、命名格式无误。
- 检查网络代理设置:确认设备的HTTP/HTTPS代理已指向LoadRunner所在机器的IP和端口,且开启全局代理(部分设备需手动勾选“对所有应用生效”)。
- 排查网络连通性:确保设备和LoadRunner机器在同一局域网,防火墙未拦截代理端口(默认通常为8888)。
内容的提问来源于stack exchange,提问作者Ullas B.C
相关产品推荐
相关产品推荐

