toast("每日答题")
var question = ""
var Title = ""
function GetQuestion(){
sleep(1000)
// className("android.view.View").text("查看提示").findOne().click();
// sleep(1000)
widget = className("android.view.View").find();
log(widget.length)
jj = 0
for (i = 0; i < widget.length; i++) {
widgetText = widget[i].text();
if (widgetText != "") {
question += widgetText;
//indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。
if (widgetText.indexOf('学】') > -1 || widgetText.indexOf('学]') > -1) {
break
}
}
}
if (question.indexOf("题】") != -1) { //【单选题】【多选题】
var index = question.indexOf("题】")
question = question.substring(index + 2, question.length)
}
if (question.indexOf("【出题:武汉大学】") != -1) {
var index = question.indexOf("【出题:武汉大学】")
question = question.substring(0, index)
}
if (question.indexOf("[question来源:") != -1) { //[question来源:湘潭大学西安交通大学上海交通大学]
var index = question.indexOf("[question来源:")
question = question.substring(0, index)
}
//对获取的question进行处理,去除所有特殊字符
pattern = /[`~!@#$^&*()=|{}':;'“”,\\\[\]\.<>\/?~!@#¥……&*()——|{}【】';:""'。,、?\s]/g;
question = question.replace(pattern, "")
log(question)
log("****字符串截取**********")
log(question.substring(10,45))
return question
}
function SingleChoice() {
toastLog("进入单选题1")
//获取所有字符串,包括题目答案。 查找查看提示控件的父控件
var tips = className("android.view.View").text("查看提示").findOne(8000).parent()
if(tips){
sleep(1000);
tips.click();
}else{
toastLog("单击提示出错。")
}
sleep(2000)
//获取所有文字
Title = GetQuestion();
log("######################")
log(Title)//所有字符串
log("######################")
//ABCD在题目和答案中出现的次数
var SChoices = className("android.view.View").depth(13).indexInParent(2).find()
log(SChoices.length)
//多选就是全选
for (var i = 0; i < SChoices.length; i++) {
var tv = SChoices[i];
if (tv) {
toastLog(tv.text());
sleep(1500);
}
}
}
function MultipleChoice() {
toastLog("进入多选题2")
var Choices = className("android.widget.CheckBox").depth(13).find()
// log(Choices)
log("******************")
log(Choices.length)//childCount不可以使用
//多选就是全选
for (var i = 0; i < Choices.length; i++) {
var tv = Choices[i];
if (tv) {
var tr = tv.bounds();
click(tr.centerX(), tr.centerY());
sleep(1500)
}
}
var ChoiceTure = className("android.view.View").text("确定").findOne(8000)
if (ChoiceTure) {
ChoiceTure.click()
sleep(2000)
} else {
toastLog("多选题确定失败.")
}
}
//Fill in the blanks
function FillBlanks() {
toastLog("进入填空题3")
}
function dailyAns() {
sleep(800)//
//每日答题 获取题目类型 多选题(全选) 填空题 OK 单选题
var title = className("android.view.View").depth(11).drawingOrder(0).indexInParent(0).findOne(5000)
if (title) {
log(title.text())
sleep(1000);
} else {
toastLog("未获取题目")
}
//对 单选 多选 填空 分别处理
if (title.text() == "单选题") {
SingleChoice();
}
else if (title.text() == "多选题") {
MultipleChoice();
}
else if (title.text() == "填空题") {
FillBlanks();
}
else {
toastLog("错误-单选-多选-填空")
}
// className("android.widget.ListView").findOne(1000).child(10).child(3).click()//进入订阅
// sleep(1000)
// var Newspaper = className("android.widget.ImageView").depth(12).indexInParent(2).findOne()//
// log(Newspaper)
// if (Newspaper) {
// toastLog("订阅。。。。。")
// // Newspaper.click()//进入学习积分页面 项目列表
// sleep(2000);
// }
}
dailyAns()
auto.js B0037 每日答题版本1.0 2021-10-24
2021/10/24 2:00:03