Я создал приложение, которое может взаимодействовать с USSD-диалогом, но проблема в том, что я хочу, чтобы приложение могло взаимодействовать с серией USSD-диалогов для различных служб.
Оно должно собирать ответыот различных Сервисов USSD до конца сеанса.Я надеюсь, что это можно понять.
Ниже приведены коды для Взаимодействия с любой службой USSD с единственным первым ответом.
if(event.getClassName().equals("android.app.AlertDialog")){
// performGlobalAction(GLOBAL_ACTION_BACK);
Log.d(TAG, text);
Intent intent = new Intent("com.times.ussd.action.REFRESH");
intent.putExtra("message ", text);
/*AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("1");*/
AccessibilityNodeInfo nodeInfo = event.getSource();
if (nodeInfo!= null) {
AccessibilityNodeInfo nodeInput = nodeInfo.findFocus(AccessibilityNodeInfo.FOCUS_INPUT);
Bundle bundle = new Bundle();
if (nodeInput != null) {
bundle.putCharSequence(AccessibilityNodeInfo.ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE,"1");
nodeInput.performAction(AccessibilityNodeInfo.ACTION_SET_TEXT, bundle);
}
//nodeInput.refresh();
List<AccessibilityNodeInfo> list = nodeInfo.findAccessibilityNodeInfosByText("Send");
for(AccessibilityNodeInfo node : list)
node.performAction(AccessibilityNodeInfo.ACTION_CLICK);
}
else
Log.d(TAG, "Null Thing");
}
Они находятся в классе обслуживания, расширяющем AccessibilityService