`
VIP庚
  • 浏览: 220946 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Robolectric 实现 App SDK虚拟化

 
阅读更多

简单介绍
Robolectric测试框架,能一定程度解决了这种困扰。它的设计思路便是通过实现一套jvm能运行的android代码,从而做到脱离android环境进行测试。Robolectric有一些shadow类,使用它们,可以替换掉android相关类,代替它们在jvm上运行。

方案介绍:
本方案的目的是通过Robolectric运行起来一个三方的SDK,并部署到docker容器中

1、使用 Robolectric 模拟 Android 环境,将 SDK 运行于 Jvm 虚拟机上
2、使用 Netty 暴露服务,通过https接口,调用SDK内部的方法
3、将 SDK aar 解压,把 class.jar 放到工程 libs 下,把 assets 目录下的内容拷贝到 `src/main/resources/assetsDir/`目录下。

注意事项:
1、Docker 容器由于是跑在 x86 64位的环境中,所以SDK里面的so包需要支持 x86_64
2、如果用到 sqlite4java 需要自己编译成 x86_64







分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics