[英]Why are accessibility service not working to take user actions?
@Override
public void onAccessibilityEvent(final AccessibilityEvent event) {
Date date = new Date(event.getEventTime());
SimpleDateFormat format = new SimpleDateFormat("dd/MM/yyyy hh:mm");
String time = format.format(date);
String reqTime = "25/11/2018 04:39";
if (reqTime.equals(time)) {
Log.d("MyAccessibilityService", "onAccessibilityEvent");
if (getRootInActiveWindow() == null) {
return;
}
AccessibilityNodeInfoCompat rootInActiveWindow = AccessibilityNodeInfoCompat.wrap(getRootInActiveWindow());
//Inspect app elements if ready
//Search bar is covered with textview which need to be clicked
List<AccessibilityNodeInfoCompat> clickOnQuestionMark = rootInActiveWindow.findAccessibilityNodeInfosByViewId("com.whatsapp:id/menuitem_search");
if (clickOnQuestionMark.isEmpty() || clickOnQuestionMark == null) {
return;
}
AccessibilityNodeInfoCompat clickMark = clickOnQuestionMark.get(0);
clickMark.performAction(AccessibilityNodeInfoCompat.ACTION_CLICK);
I am using this code for simuating clicking whatsapp search button, but when I opened whatsapp window on 25-11-2018 at 4:39 nothing happened. 我正在使用此代码来模拟单击whatsapp搜索按钮,但是当我在2018年11月25日4:39打开whatsapp窗口时,没有任何反应。 The code was working fine when no time was alloted.
当没有时间分配时,代码运行良好。 But problem was that everytime whatsapp was opened the search button would get clicked.
但是问题是每次打开whatsapp时都会单击搜索按钮。 How to click on the search button only when whatsapp is opened at a specific time?
仅在特定时间打开whatsapp时,如何单击搜索按钮?
You can convert to LocalDate
您可以转换为
LocalDate
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
and use equals method to specific LocalDate
并使用equals方法指定特定的
LocalDate
Compares this LocalDate with another ensuring that the date is the same.
将此LocalDate与另一个进行比较,以确保日期相同。
Only objects of type LocalDate are compared, other types return false.
仅比较LocalDate类型的对象,其他类型返回false。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.