国际化你的测试

对于针对不同国别的app , 将会有很多的版本 ,如en版 , cn版 ,tw版等等
这时候验证文本将变得复杂起来 , 通过文本识别对象的方式也将在不同的版本中失效

Android自带的国际化方式即可解决问题
经过各种尝试 ( 反编译拿到class.jar > 引入jar包 ; 复制string.xml文件到main中的res包中 ; 等都失败了 ) 后得出:
1. 将原app的资源文件反编译出来
2. 提取出其中的values目录中的string.xml ( 这会有很多国别的 )
3. 在AndroidTest中建 res目录
4. 将各种values目录放置在res中
5. 使用:

Context ctx = InstrumentationRegistry.getContext();
        Resources res = ctx.getResources();
        String s = res.getString(com.xxx.xxx.test.R.string.accept);
    这样就能获取到对应的字符串内容了, 并且会根据手机的语言环境而变化( 必须有对应的values才行 )

6. 大功告成 , 最后说一点 , string.xml文件最好通过原app的string.xml文件修改而来 , 并由自己维护 ,理由你懂的.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值