zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

[Android]calabash-android再深入

Android 深入
2023-09-14 08:56:48 时间
1.遇见的问题,client与test-server版本不一致 
解释:client指代的是gem包的版本,test-server指代的是calabash-android源码下/ruby-gem/test-server的版本,下载下来源码自然就是这个版本不提供更新卸载等功能,但是client端可以控制 
2.也可以修改gitclone源码下的calabash-android源码,将version对比修改正确,但不保证兼容性 
3.遇到http请求无法连接到模拟器,模拟器接收不到消息,app_runing返回结果为flase,是因为gem安装包内的operations.rb文件内的server_port没有值,修改一下就好,最好也修改一下源码的http请求,添加read_timeout,以及open_timeout。 

如此解决calabash无法运行的问题了。 

然后再讲解一下calabash-android console命令行用法: 
参考文章:http://sriram-iyengar.blogspot.com/2013/04/android-setting-up-calabash-android-for.html 

大致的意思是: 
calabash-android console xxxx.apk 
然后可以执行githup上的query语句了,很爽的说。
点击第6个imageview,加入进货单

irb(main):030:0 touch("imageview index:6")

 "success" = true,

 "message" = "",

 "bonusInformation" = []

查看当前有多少个imageview

irb(main):027:0 query("imageview").count

点击list列表里的第一个

irb(main):083:0 performAction(press_list_item, 1, 0)

 "message" = "",

 "bonusInformation" = [],

 "success" = true

performAction(get_list_item_text) 获取每个item的text文本

performAction(get_url) 获取当前webview的url

performAction(drag,50,50,70,1,10) 下拉一屏,按百分比

performAction( get_list_item_properties, 1 , 1 )[bonusInformation] 获取item的属性

performAction(dump_body_html) 获取当前webview源码

通过webview属性进行点击

irb(main):004:0 performAction(click_by_selector,"a[href=/touch/seller/sellerOfferList?sellerOfferType=AUDITING]")

 "message" = nil,

 "bonusInformation" = [

 [0] "true"

 "success" = true

执行webview JS脚本

performAction(execute_javascript,"(alert(aaa))")




Android组件化开发(七)--从零开始教你分析项目需求并实现 前面几篇文章我们封装了几个组件化功能组件:包括:**网络请求组件,图片加载请求组件,应用保活组件,音乐播放组件封装。** 每个组件都可以直接拿到自己项目中使用,当然还需根据自己项目要求进行优化。
Android组件化开发(六)-- 短视频播放组件封装 前面几篇文章我们封装了几个组件化功能组件: 包括:`网络请求组件`,`图片加载请求组件`,`应用保活组件`,`音乐播放组件封装`。 每个组件都可以直接拿到自己项目中使用,当然还需根据自己项目要求进行优化。
Android组件化开发(五)--完整版音乐播放组件的封装 前面几篇系列文章我们讲解了`组件化开发`中几个常用功能组件的开发,包括:`网络请求组件`,`图片加载请求组件`,`应用保活组件`。今天我们来封装一个`音乐播放组件`。
Android组件化开发(四)--进程保活组件的封装 前面文章我们封装了网络请求组件`lib_nework`和图片加载组件`lib_image_loader`,今天我们来封装一个进程保活的组件`lib_pull_alive`
Android组件化开发(二)--网络请求组件封装 前面一篇文章我们讲解了`maven私服`的搭建,maven私服在`组件化框架`中有一个很重要的地位就是可以将我们的`lib`库放到局域网中,供公司其他开发者使用,实现类库的分享。 下面是这个系列准备实现的一个`组件化实战项目框架`: