对于针对不同国别的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文件修改而来 , 并由自己维护 ,理由你懂的.