1
0
forked from BRT/arc

Daily commit

This commit is contained in:
slava 2025-07-31 11:32:52 +05:00
parent 6ded374ee8
commit c9e266225a
26 changed files with 7176 additions and 21 deletions

View File

@ -7,6 +7,7 @@
#include "adb/AdbUtils.h"
#include "net/NetworkService.h"
#include "time/DateUtils.h"
CommonBirbankScript::CommonBirbankScript(QObject *parent)
: QObject(parent) {
@ -164,10 +165,10 @@ void CommonBirbankScript::postNewTransactionData(const AccountInfo &account, con
obj["status"] = transactionStatusToString(transaction.status);
obj["type"] = transactionTypeToString(transaction.type);
obj["phone"] = transaction.phone;
obj["description"] = transaction.description;
obj["description"] = transaction.description + " | " + transaction.bankTime;
obj["updatedDescription"] = transaction.updatedDescription;
obj["bankName"] = transaction.bankName;
obj["bankTime"] = transaction.bankTime;
obj["bankTime"] = DateUtils::toUtcString(transaction.completeTime);
obj["bankTransactionId"] = transaction.bankTrExternalId;
// FIXME доставить десктоп ид из настроеек

View File

@ -470,24 +470,39 @@ QDomElement findElementWithPaymentsBirbank(const QDomElement &parent, const QStr
}
QDateTime getUtcFromBakuDate(const QString &date, const QString &time) {
int year = QDate::currentDate().year(); // Или укажи вручную нужный год
QString combined = QString("%1 %2 %3").arg(date).arg(year).arg(time); // "24 июля 2025 0:31"
QLocale ruLocale(QLocale::Russian, QLocale::Russia);
QDateTime dt = ruLocale.toDateTime(combined, "d MMMM yyyy H:mm");
if (dt.isValid()) {
// Установка часового пояса Asia/Baku
dt.setTimeZone(QTimeZone("Asia/Baku"));
// Перевод в UTC
QDateTime utc = dt.toTimeZone(QTimeZone::utc());
return utc;
} else {
qWarning() << "Ошибка разбора даты/времени";
QDate baseDate;
QTime parsedTime = QTime::fromString(time, "H:mm");
if (!parsedTime.isValid()) {
qWarning() << "Невалидное время:" << time;
return {};
}
return {};
}
QString dateLower = date.trimmed().toLower();
if (dateLower == "сегодня") {
baseDate = QDate::currentDate();
} else if (dateLower == "вчера") {
baseDate = QDate::currentDate().addDays(-1);
} else if (dateLower == "позавчера") {
baseDate = QDate::currentDate().addDays(-2);
} else {
// Пробуем разобрать обычную дату, например "24 июля"
QLocale ruLocale(QLocale::Russian, QLocale::Russia);
int year = QDate::currentDate().year();
QString combined = QString("%1 %2 %3").arg(date).arg(year).arg(time); // "24 июля 2025 0:31"
QDateTime dt = ruLocale.toDateTime(combined, "d MMMM yyyy H:mm");
if (!dt.isValid()) {
qWarning() << "Ошибка разбора даты:" << combined;
return {};
}
dt.setTimeZone(QTimeZone("Asia/Baku"));
return dt.toTimeZone(QTimeZone::utc());
}
// Собираем и переводим в UTC, если дата относительная
QDateTime bakuDateTime(baseDate, parsedTime, QTimeZone("Asia/Baku"));
return bakuDateTime.toTimeZone(QTimeZone::utc());
}
QList<TransactionInfo> ScreenXmlBirbankParser::parsePositiveTransactions() {
QList<TransactionInfo> transactions;

View File

@ -0,0 +1,217 @@
#include "CommonTossScript.h"
#include <QJsonArray>
#include <QJsonObject>
#include <QRandomGenerator>
#include <QThread>
#include "adb/AdbUtils.h"
#include "net/NetworkService.h"
#include "time/DateUtils.h"
CommonTossScript::CommonTossScript(QObject *parent)
: QObject(parent) {
}
CommonTossScript::~CommonTossScript() = default;
void CommonTossScript::start() {
doStart();
emit finished();
}
Node CommonTossScript::swipeToButton(
const QString &deviceId,
const QString &text, int &counter, const int width, const int height
) {
for (int i = 0; i < 10; ++i) {
if (Node button = xmlScreenParser.findButtonNode(text, true); button.x() > 0 && button.y() > 0) {
return button;
}
const int x = width / 2;
const int offset = height / 4;
AdbUtils::makeSwipe(deviceId, x, height - offset, x, offset);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(deviceId, ++counter));
}
return {};
}
bool CommonTossScript::runAppAndGoToHomeScreen(
const QString &deviceId,
const QString &packageName,
const QString &pinCode,
const int width,
const int height
) {
// Запустить устройство
if (const QString pid = AdbUtils::tryToGetRunningAppPid(deviceId, packageName); !pid.isEmpty()) {
qDebug() << "Process already running, pid: " << pid;
AdbUtils::getScreenDumpAsXml(deviceId, 1000);
AdbUtils::tryToKillApplication(deviceId, packageName);
}
if (!AdbUtils::tryToStartApplication(deviceId, packageName)) {
AdbUtils::takeScreenshot(deviceId, "run_app_error");
qWarning() << "Process has not started";
return false;
}
// Даем минимальное время на запуск
QThread::msleep(2500);
int counter = 0;
bool findAndInputPincode = false;
while (true) {
counter++;
// Если более 10 раз мы пытаемся перейти на домашнюю
if (counter > 10) {
AdbUtils::takeScreenshot(deviceId, "too_many_attempts");
return false;
}
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(deviceId, ++m_counter));
// Node closeBannerNode = xmlScreenParser.findButtonNode("Maraqlı deyil", false);
// if (!closeBannerNode.isEmpty()) {
// AdbUtils::makeTap(deviceId, closeBannerNode.x(), closeBannerNode.y());
// QThread::msleep(1000);
// continue;
// }
if (xmlScreenParser.isHomeScreen()) {
return true;
}
// Проверяем, что это экран ввода пин-кода
if (!findAndInputPincode) {
if (const QList<Node> pincode = xmlScreenParser.findPinCodeNodes(pinCode); pincode.size() == 6) {
for (const Node &node: pincode) {
AdbUtils::makeTap(deviceId, node.x(), node.y());
QThread::msleep(QRandomGenerator::global()->bounded(200, 901));
}
// После ввода пин-код нужно сделать задержку, пока подгрузка идет, чтобы снова не спарсить
findAndInputPincode = true;
QThread::msleep(3000);
continue;
}
}
QThread::msleep(1000);
}
}
bool CommonTossScript::goToAllProducts(
const QString &deviceId,
const int width,
const int height
) {
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(deviceId, m_counter));
Node closeBannerNode = xmlScreenParser.findButtonNode("Maraqlı deyil", false);
if (!closeBannerNode.isEmpty()) {
AdbUtils::makeTap(deviceId, closeBannerNode.x(), closeBannerNode.y());
QThread::msleep(500);
}
if (xmlScreenParser.isHomeScreen()) {
Node allMyAccountBtn = xmlScreenParser.findButtonNode("All My Accounts", false);
if (!allMyAccountBtn.isEmpty()) {
AdbUtils::makeTap(deviceId, allMyAccountBtn.x(), allMyAccountBtn.y());
QThread::msleep(500);
return true;
}
}
return false;
}
void CommonTossScript::postAccountsData(const QList<AccountInfo> &accounts) {
if (accounts.isEmpty()) {
return;
}
auto *thread = new QThread;
auto *worker = new NetworkService;
QJsonArray list;
for (const AccountInfo &account: accounts) {
QJsonObject obj;
obj["appName"] = account.appCode;
obj["lastNumbers"] = account.lastNumbers;
obj["amount"] = account.amount;
obj["currency"] = account.currency;
obj["description"] = account.description;
obj["status"] = accountStatusToString(account.status);
list.append(obj);
}
// FIXME доставить десктоп ид из настроеек
worker->setDeviceId(accounts.first().deviceId);
worker->setPayload(QJsonDocument(list).toJson());
worker->moveToThread(thread);
connect(thread, &QThread::started, worker, &NetworkService::postAccountsData);
connect(worker, &NetworkService::finished, thread, &QThread::quit);
connect(worker, &NetworkService::finished, worker, &QObject::deleteLater);
connect(thread, &QThread::finished, thread, &QThread::deleteLater);
thread->start();
}
void CommonTossScript::postNewTransactionData(const AccountInfo &account, const TransactionInfo &transaction) {
auto *thread = new QThread;
auto *worker = new NetworkService;
QJsonObject obj;
obj["id"] = transaction.id;
obj["amount"] = transaction.amount;
obj["name"] = transaction.name;
obj["fee"] = transaction.fee;
obj["status"] = transactionStatusToString(transaction.status);
obj["type"] = transactionTypeToString(transaction.type);
obj["phone"] = transaction.phone;
obj["description"] = transaction.description + " | " + transaction.bankTime;
obj["updatedDescription"] = transaction.updatedDescription;
obj["bankName"] = transaction.bankName;
obj["bankTime"] = DateUtils::toUtcString(transaction.completeTime);
obj["bankTransactionId"] = transaction.bankTrExternalId;
// FIXME доставить десктоп ид из настроеек
worker->setDeviceId(account.deviceId);
worker->addExtra("lastNumbers", account.lastNumbers);
worker->addExtra("transactionId", transaction.id);
worker->setPayload(QJsonDocument(obj).toJson());
worker->moveToThread(thread);
connect(thread, &QThread::started, worker, &NetworkService::insertTransactionData);
connect(worker, &NetworkService::finished, thread, &QThread::quit);
connect(worker, &NetworkService::finished, worker, &QObject::deleteLater);
connect(thread, &QThread::finished, thread, &QThread::deleteLater);
thread->start();
}
void CommonTossScript::updateTransactionData(
const AccountInfo &account,
const int transactionId,
const TransactionStatus status,
const QString &oldDesc,
const QString &newDesc
) {
auto *thread = new QThread;
auto *worker = new NetworkService;
QJsonObject obj;
obj["id"] = transactionId;
obj["status"] = transactionStatusToString(status);
obj["description"] = newDesc;
obj["updatedDescription"] = oldDesc;
// FIXME доставить десктоп ид из настроеек
worker->setDeviceId(account.deviceId);
worker->addExtra("lastNumbers", account.lastNumbers);
worker->setPayload(QJsonDocument(obj).toJson());
worker->moveToThread(thread);
connect(thread, &QThread::started, worker, &NetworkService::updateTransactionData);
connect(worker, &NetworkService::finished, thread, &QThread::quit);
connect(worker, &NetworkService::finished, worker, &QObject::deleteLater);
connect(thread, &QThread::finished, thread, &QThread::deleteLater);
thread->start();
}
void CommonTossScript::stop() {
m_running = false;
}

View File

@ -0,0 +1,68 @@
#pragma once
#include <QObject>
#include "ScreenXmlTossParser.h"
#include "android/xml/Node.h"
#include "db/AccountInfo.h"
#include "db/TransactionInfo.h"
class CommonTossScript : public QObject {
Q_OBJECT
public:
explicit CommonTossScript(QObject *parent = nullptr);
~CommonTossScript() override;
protected:
virtual void doStart() = 0;
bool goToAllProducts(
const QString &deviceId,
int width,
int height
);
void postAccountsData(const QList<AccountInfo> &accounts);
void postNewTransactionData(const AccountInfo &account, const TransactionInfo &transaction);
void updateTransactionData(
const AccountInfo &account,
int transactionId,
TransactionStatus status,
const QString &oldDesc,
const QString &newDesc
);
Node swipeToButton(
const QString &deviceId,
const QString &text,
int &counter, int width, int height
);
bool runAppAndGoToHomeScreen(
const QString &deviceId,
const QString &packageName,
const QString &pinCode,
int width,
int height
);
bool m_running = true;
ScreenXmlTossParser xmlScreenParser;
int m_counter = 0;
signals:
void finished();
void finishedWithResult(const QString &result);
public slots:
virtual void start() final;
virtual void stop() final;
private:
Q_DISABLE_COPY(CommonTossScript);
};

View File

@ -0,0 +1,164 @@
#include "GetLastDaysHistoryTossScript.h"
#include <QJsonObject>
#include <QRandomGenerator>
#include <QThread>
#include <utility>
#include "DatabaseManager.h"
#include "adb/AdbUtils.h"
#include "dao/AccountDAO.h"
#include "dao/ApplicationDAO.h"
#include "dao/DeviceDAO.h"
#include "dao/TransactionDAO.h"
#include "db/DeviceInfo.h"
#include "net/NetworkService.h"
#include "time/DateUtils.h"
GetLastDaysHistoryTossScript::GetLastDaysHistoryTossScript(
AccountInfo account,
QObject *parent
) : CommonTossScript(parent),
m_account(std::move(account)) {
}
GetLastDaysHistoryTossScript::~GetLastDaysHistoryTossScript() = default;
bool GetLastDaysHistoryTossScript::saveAndPostNewTransactionData(
const AccountInfo &account,
const TransactionInfo &transaction,
const TransactionStatus &status
) {
TransactionInfo tr;
tr.accountId = account.id;
tr.description = transaction.description;
tr.bankTime = transaction.bankTime;
tr.bankName = transaction.bankName;
tr.amount = transaction.amount;
tr.phone = transaction.phone;
tr.updateTime = DateUtils::getUtcNow();
tr.fee = transaction.fee;
tr.name = transaction.name;
tr.bankTrExternalId = transaction.bankTrExternalId;
tr.status = status;
tr.type = TransactionType::Card;
tr.completeTime = transaction.completeTime;
tr.id = TransactionDAO::insertTransaction(tr);
if (tr.id == -1) {
return false;
}
postNewTransactionData(account, tr);
return true;
}
bool GetLastDaysHistoryTossScript::updateAndPostTransactionData(
const AccountInfo &account,
const int transactionId,
const TransactionStatus status,
const QString &oldDesc,
const QString &newDesc
) {
if (TransactionDAO::updateTransaction(transactionId, status, oldDesc, newDesc)) {
updateTransactionData(account, transactionId, status, oldDesc, newDesc);
return true;
}
return false;
}
void GetLastDaysHistoryTossScript::doStart() {
// берем все транзакции из БД
const DeviceInfo device = DeviceDAO::getDeviceById(m_account.deviceId);
const ApplicationInfo app = ApplicationDAO::getApplication(m_account.deviceId, m_account.appCode);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_account.deviceId, ++m_counter));
if (!xmlScreenParser.isHomeScreen()) {
if (!runAppAndGoToHomeScreen(device.id, app.package, app.pinCode, device.screenWidth, device.screenHeight)) {
m_error = "Не смогли дойти до домашней страницы";
qCritical() << m_error;
emit finishedWithResult(m_error);
return;
}
}
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_account.deviceId, ++m_counter));
if (xmlScreenParser.isHomeScreen()) {
QList<AccountInfo> oldAccounts = AccountDAO::getAccounts(m_account.deviceId, m_account.appCode);
QMap<QString, AccountInfo> accountMap;
for (AccountInfo &oldAccount: oldAccounts) {
if (oldAccount.status == AccountStatus::Active) {
accountMap.insert(oldAccount.lastNumbers, oldAccount);
}
}
QList<AccountInfo> accounts = xmlScreenParser.parseAccountsInfo();
if (accounts.length() == 1 && accountMap.size() == 1) {
AccountInfo account = accounts[0];
account.deviceId = m_account.deviceId;
account.appCode = m_account.appCode;
account.lastNumbers = accountMap.first().lastNumbers;
account.description = accountMap.first().description;
account.currency = accountMap.first().currency;
account.description = accountMap.first().description;
account.status = AccountStatus::Active;
if (!AccountDAO::upsertAccount(account)) {
m_error = "Not updated: " + account.lastNumbers;
qCritical() << m_error;
}
}
QList<AccountInfo> savedAccounts = AccountDAO::getAccounts(m_account.deviceId, m_account.appCode);
postAccountsData(savedAccounts);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_account.deviceId, ++m_counter));
Node transferText = xmlScreenParser.findTextContainsNode("토스뱅크 통장");
if (!transferText.isEmpty()) {
AdbUtils::makeTap(device.id, transferText.x(), transferText.y());
QThread::msleep(3000);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_account.deviceId, ++m_counter));
for (int i = 0; i < 5; ++i) {
Node myBankText = xmlScreenParser.findTextNode("My Toss Bank");
Node accountText = xmlScreenParser.findTextNode("Account");
if (!myBankText.isEmpty() && !accountText.isEmpty()) {
QList<TransactionInfo> transactions = xmlScreenParser.parsePositiveTransactions();
QList<TransactionInfo> savedTransactions = TransactionDAO::getTransactionsWithinHours(m_account.id, 48);
for (TransactionInfo &transaction: transactions) {
bool isSaved = false;
for (TransactionInfo &savedTransaction: savedTransactions) {
if (savedTransaction.amount == transaction.amount
&& savedTransaction.bankTime == transaction.bankTime) {
isSaved = true;
break;
}
}
if (!isSaved) {
if (!saveAndPostNewTransactionData(m_account, transaction, TransactionStatus::Complete)) {
qDebug() << "--- saveAndPostNewTransactionData failed";
}
}
}
} else {
m_error = "Card page not found: " + m_account.deviceId + " " + m_account.lastNumbers;
qWarning() << m_error;
emit finishedWithResult(m_error);
return;
}
QThread::msleep(1000);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_account.deviceId , ++m_counter));
}
} else {
m_error = "Card not found: " + m_account.deviceId + " " + m_account.lastNumbers;
qWarning() << m_error;
emit finishedWithResult(m_error);
return;
}
}
AdbUtils::goBack(m_account.deviceId);
emit finishedWithResult(m_error);
}

View File

@ -0,0 +1,35 @@
#pragma once
#include "CommonTossScript.h"
class GetLastDaysHistoryTossScript final : public CommonTossScript {
Q_OBJECT
public:
~GetLastDaysHistoryTossScript() override;
explicit GetLastDaysHistoryTossScript(
AccountInfo account,
QObject *parent = nullptr
);
protected:
void doStart() override;
private:
const AccountInfo m_account;
QString m_error;
bool saveAndPostNewTransactionData(
const AccountInfo &account,
const TransactionInfo &transaction,
const TransactionStatus &status
);
bool updateAndPostTransactionData(
const AccountInfo &account,
int transactionId,
TransactionStatus status,
const QString &oldDesc,
const QString &newDesc
);
};

View File

@ -0,0 +1,208 @@
#include "LoginAndCheckAccountsTossScript.h"
#include <QThread>
#include "adb/AdbUtils.h"
#include "dao/AccountDAO.h"
#include "dao/ApplicationDAO.h"
#include "dao/DeviceDAO.h"
#include "dao/TransactionDAO.h"
#include "time/DateUtils.h"
LoginAndCheckAccountsTossScript::LoginAndCheckAccountsTossScript(
QString deviceId,
QString appCode,
QObject *parent
) : CommonTossScript(parent),
m_deviceId(std::move(deviceId)), m_appCode(std::move(appCode)) {
}
LoginAndCheckAccountsTossScript::~LoginAndCheckAccountsTossScript() = default;
/**
NongHyup
KakaoBank
Kookmin
Toss Bank
Shinhan
Woori
IBK
Hana
MG
Busan Bank
iM Bank(Daegu)
Kbank
Credit Union
Postal Sav.
SC
Kyongnam
Kwangju
Suhyup
Jeonbuk
Savings Banks
Jeju Bank
Jeonbuk
Savings Banks
Jeju Bank
Citibank
KDB
NFCF
SBI Sav.
BOA
Bank of China
HSBC
ICBC
Deutsche
JPMorgan
BNP Paribas
CCB
*/
void LoginAndCheckAccountsTossScript::doStart() {
const DeviceInfo device = DeviceDAO::getDeviceById(m_deviceId);
const ApplicationInfo app = ApplicationDAO::getApplication(m_deviceId, m_appCode);
if (true) {
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_deviceId, ++m_counter));
// искать Transfer кнопку
// Node transferText = xmlScreenParser.findTextContainsNode("토스뱅크 통장");
// if (transferText.isEmpty()) {
// }
Node transferText = xmlScreenParser.findFirstAccountLine();
if (!transferText.isEmpty()) {
AdbUtils::makeTap(device.id, transferText.x(), transferText.y());
QThread::msleep(3000);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_deviceId, ++m_counter));
bool historyFound = false;
for (int i = 0; i < 5; ++i) {
Node topUpBtn = xmlScreenParser.findButtonNode("Top up", false);
Node sendBtn = xmlScreenParser.findButtonNode("Send", false);
if (!topUpBtn.isEmpty() && !sendBtn.isEmpty()) {
// подгрузка истории идет
QThread::msleep(2000);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_deviceId, ++m_counter));
QList<TransactionInfo> transactions = xmlScreenParser.parsePositiveTransactions();
for (auto &transaction: transactions) {
qDebug().noquote().nospace() << convertTransactionToString(transaction);
}
historyFound = true;
break;
}
QThread::msleep(1000);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_deviceId, ++m_counter));
}
if (!historyFound) {
m_error = "Top up or send button not found: " + m_deviceId + " " + m_appCode;
qWarning() << m_error;
emit finishedWithResult(m_error);
return;
}
} else {
m_error = "Card not found: " + m_deviceId + " " + m_appCode;
qWarning() << m_error;
emit finishedWithResult(m_error);
return;
}
} else {
// "Maraqlı deyil" - не интересно
if (device.id.isEmpty() || app.id == -1) {
m_error = "Device or app not found: " + m_deviceId + " " + m_appCode;
qCritical() << m_error;
emit finishedWithResult(m_error);
return;
}
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_deviceId, ++m_counter));
if (!runAppAndGoToHomeScreen(device.id, app.package, app.pinCode, device.screenWidth, device.screenHeight)) {
m_error = "Cant open the home screen: " + m_deviceId + " " + m_appCode;
qWarning() << m_error;
if (!ApplicationDAO::updatePinCodeStatus(app.id, "no", "Не прошла проверка [дата]")) {
qWarning() << "Cant update the pincode: " << m_deviceId << " " << m_appCode;
}
AdbUtils::tryToKillApplication(m_deviceId, app.package);
emit finishedWithResult(m_error);
return;
} else {
if (!ApplicationDAO::updatePinCodeStatus(app.id, "yes", "")) {
qWarning() << "Cant update the pincode: " << m_deviceId << " " << m_appCode;
}
Node mainAccount = xmlScreenParser.findTextContainsNode("Main account");
if (!mainAccount.isEmpty()) {
// AdbUtils::makeTap(device.id, mainAccount.x(), mainAccount.y());
// QThread::msleep(1000);
// for (int i = 0; i < 5; ++i) {
// xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_account.deviceId, ++m_counter));
// Node mainAccount = xmlScreenParser.findTextContainsNode("Main account");
// if (!byDayTitle.isEmpty()) {
// qWarning() << "--- beforeYesterdayTitle found!";
// break;
// }
// AdbUtils::makeSwipe(
// m_account.deviceId,
// device.screenWidth / 2, device.screenHeight / 4 * 3,
// device.screenWidth / 2, device.screenHeight / 4
// );
// QThread::msleep(1000);
//
// }
}
QThread::msleep(2000);
xmlScreenParser.parseAndSaveXml(AdbUtils::getScreenDumpAsXml(m_deviceId, ++m_counter));
QList<AccountInfo> oldAccounts = AccountDAO::getAccounts(m_deviceId, m_appCode);
QMap<QString, AccountInfo> accountMap;
for (AccountInfo &oldAccount: oldAccounts) {
if (oldAccount.status == AccountStatus::Active) {
accountMap.insert(oldAccount.lastNumbers, oldAccount);
}
}
QList<AccountInfo> accounts = xmlScreenParser.parseAccountsInfo();
if (accounts.length() == 1 && accountMap.size() == 1) {
AccountInfo account = accounts[0];
account.deviceId = m_deviceId;
account.appCode = m_appCode;
account.lastNumbers = accountMap.first().lastNumbers;
account.description = accountMap.first().description;
account.currency = accountMap.first().currency;
account.description = accountMap.first().description;
account.status = AccountStatus::Active;
if (!AccountDAO::upsertAccount(account)) {
m_error = "Not updated: " + account.lastNumbers;
qCritical() << m_error;
}
}
// for (auto account: accounts) {
// if (accountMap.contains(account.lastNumbers)) {
// account.deviceId = m_deviceId;
// account.appCode = m_appCode;
// account.currency = accountMap[account.lastNumbers].currency;
// account.description = accountMap[account.lastNumbers].description;
// account.status = AccountStatus::Active;
// if (!AccountDAO::upsertAccount(account)) {
// m_error = "Not updated: " + account.lastNumbers;
// qCritical() << m_error;
// }
// }
// }
QList<AccountInfo> savedAccounts = AccountDAO::getAccounts(m_deviceId, m_appCode);
postAccountsData(savedAccounts);
}
AdbUtils::tryToKillApplication(m_deviceId, app.package);
}
emit finishedWithResult(m_error);
}

View File

@ -0,0 +1,23 @@
#pragma once
#include "CommonTossScript.h"
class LoginAndCheckAccountsTossScript final : public CommonTossScript {
Q_OBJECT
public:
~LoginAndCheckAccountsTossScript() override;
explicit LoginAndCheckAccountsTossScript(
QString deviceId,
QString appCode,
QObject *parent = nullptr
);
protected:
void doStart() override;
private:
const QString m_deviceId;
const QString m_appCode;
QString m_error;
};

View File

@ -0,0 +1,452 @@
#include "ScreenXmlTossParser.h"
#include <QRegularExpression>
#include <QMap>
#include <QSet>
#include <QList>
#include <QXmlStreamReader>
#include <QDomDocument>
#include <QFile>
#include <QDateTime>
#include "adb/AdbUtils.h"
#include "android/xml/Node.h"
#include "db/AccountInfo.h"
#include "db/TransactionInfo.h"
#include "time/DateUtils.h"
ScreenXmlTossParser::ScreenXmlTossParser(QObject *parent) : QObject(parent) {
}
ScreenXmlTossParser::~ScreenXmlTossParser() = default;
static const QRegularExpression boundsRegex(R"(\[([0-9]+),([0-9]+)\]\[([0-9]+),([0-9]+)\])");
Node ScreenXmlTossParser::findTextNode(const QString &text) {
for (const Node &node: m_nodes) {
if (node.className == "android.widget.TextView" && node.text.trimmed() == text) {
return node;
}
}
return {};
}
Node ScreenXmlTossParser::findTextContainsNode(const QString &text) {
for (const Node &node: m_nodes) {
if (node.className == "android.widget.TextView" && node.text.contains(text)) {
return node;
}
}
return {};
}
Node ScreenXmlTossParser::findTextNode(const QString &text, const int x1, const int y1, const int x2, const int y2) {
for (const Node &node: m_nodes) {
if (node.className == "android.widget.TextView" && node.text.trimmed() == text
&& node.x() >= x1 && node.x() <= x2 && node.y() >= y1 && node.y() <= y2) {
return node;
}
}
return {};
}
Node ScreenXmlTossParser::findEditText(const QString &text) {
for (const Node &node: m_nodes) {
if (node.className == "android.widget.EditText" && node.text == text) {
return node;
}
}
return {};
}
Node ScreenXmlTossParser::findEditTextByResourceId(const QString &resourceId) {
for (const Node &node: m_nodes) {
if (node.className == "android.widget.EditText" && node.resourceId == resourceId) {
return node;
}
}
return {};
}
Node ScreenXmlTossParser::findButtonNode(const QString &text, const bool contains) {
for (const Node &node: m_nodes) {
if (contains) {
if (node.className == "android.widget.Button" && node.text.contains(text)) {
return node;
}
} else {
if (node.className == "android.widget.Button" && node.text.trimmed() == text) {
return node;
}
}
}
return {};
}
bool ScreenXmlTossParser::isHomeScreen() {
Node activitiesBtn;
for (const Node &node: m_nodes) {
if (node.text.contains("Transfer") && node.resourceId == "viva.republica.toss:id/rightButton") {
activitiesBtn = node;
}
}
return !activitiesBtn.isEmpty();
}
QList<Node> ScreenXmlTossParser::findPinCodeNodes(const QString &pinCode) {
QMap<QString, Node> buttons;
const QSet<QString> numberSet = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"};
for (const Node &node: m_nodes) {
const QString &text = node.text.trimmed();
if (node.className == "android.widget.Button" && numberSet.contains(text)) {
buttons[text] = node;
}
}
QList<Node> nodes;
for (int i = 0; i < pinCode.length(); ++i) {
nodes.append(buttons[QString(pinCode.at(i))]);
}
return nodes;
}
Node convertTossDomElementToNode(const QDomElement &element) {
auto node = Node();
if (element.hasAttribute("bounds")) {
const QString bounds = element.attribute("bounds");
if (const QRegularExpressionMatch match = boundsRegex.match(bounds); match.hasMatch()) {
node.setBounds(
match.captured(1).toInt(),
match.captured(2).toInt(),
match.captured(3).toInt(),
match.captured(4).toInt()
);
}
}
if (element.hasAttribute("text")) {
node.text = element.attribute("text");
}
if (element.hasAttribute("content-desc")) {
node.contentDesc = element.attribute("content-desc");
}
if (element.hasAttribute("class")) {
node.className = element.attribute("class");
}
if (element.hasAttribute("clickable")) {
node.clickable = element.attribute("clickable") == "true";
}
if (element.hasAttribute("focusable")) {
node.focusable =element.attribute("focusable") == "true";
}
if (element.hasAttribute("resource-id")) {
node.resourceId = element.attribute("resource-id");
}
return node;
}
void ScreenXmlTossParser::parseAndSaveXml(const QString &xml) {
QDomDocument doc;
doc.setContent(xml);
m_xml = doc.documentElement();
m_nodes.clear();
QXmlStreamReader reader(xml);
while (!reader.atEnd()) {
reader.readNext();
if (reader.isStartElement() && reader.name() == "node") {
Node node = Node();
if (reader.attributes().hasAttribute("bounds")) {
QString bounds = reader.attributes().value("bounds").toString();
if (QRegularExpressionMatch match = boundsRegex.match(bounds); match.hasMatch()) {
node.setBounds(
match.captured(1).toInt(),
match.captured(2).toInt(),
match.captured(3).toInt(),
match.captured(4).toInt()
);
}
}
if (reader.attributes().hasAttribute("text")) {
node.text = reader.attributes().value("text").toString();
}
if (reader.attributes().hasAttribute("content-desc")) {
node.contentDesc = reader.attributes().value("content-desc").toString();
}
if (reader.attributes().hasAttribute("class")) {
node.className = reader.attributes().value("class").toString();
}
if (reader.attributes().hasAttribute("clickable")) {
node.clickable = reader.attributes().value("clickable").toString() == "true";
}
if (reader.attributes().hasAttribute("focusable")) {
node.focusable = reader.attributes().value("focusable").toString() == "true";
}
if (reader.attributes().hasAttribute("resource-id")) {
node.resourceId = reader.attributes().value("resource-id").toString();
}
m_nodes.append(node);
}
}
}
QDomElement findSubElementToss(const QDomElement &elem, const QString &index) {
if (elem.hasChildNodes()) {
QDomNodeList subInfoList = elem.childNodes();
for (QDomNode subInfoNode: subInfoList) {
if (!subInfoNode.isElement()) continue;
QDomElement subInfo = subInfoNode.toElement();
if (subInfo.attribute("index") == index) {
return subInfo;
}
}
}
return {};
}
QString findSubInfoToss(const QDomElement &elem, const QString &index) {
QDomElement subInfo = findSubElementToss(elem, index);
if (!subInfo.isNull()) {
return subInfo.attribute("text");
}
return "";
}
QDomNode findNodeToss(const QDomNode &node, const QString &text) {
if (node.isElement()) {
QString nodeText = node.toElement().attribute("text");
if (nodeText.toLower().startsWith(text)) {
return node;
}
}
QDomNode child = node.firstChild();
while (!child.isNull()) {
QDomNode result = findNodeToss(child, text);
if (!result.isNull()) {
return result;
}
child = child.nextSibling();
}
return {};
}
QList<QDomElement> findElementsWithPaymentsToss(const QDomElement &parent, const QString &attribute,
const QString &value) {
QList<QDomElement> result;
QDomElement element = parent.firstChildElement();
while (!element.isNull()) {
// Проверка самого element
// if (element.hasAttribute(attribute) && element.attribute(attribute) == value) {
// result.append(element);
// }
// Проверка его дочерних элементов
QDomElement child = element.firstChildElement();
while (!child.isNull()) {
if (child.hasAttribute(attribute) && child.attribute(attribute) == value) {
result.append(child);
}
child = child.nextSiblingElement();
}
// Рекурсивный обход
result.append(findElementsWithPaymentsToss(element, attribute, value));
element = element.nextSiblingElement();
}
return result;
}
QDomElement findElementWithPaymentsToss(const QDomElement &parent, const QString &attribute, const QString &value) {
QDomElement element = parent.firstChildElement();
while (!element.isNull()) {
QDomElement child = element.firstChildElement();
while (!child.isNull()) {
if (child.hasAttribute(attribute) && child.attribute(attribute) == value) {
return child;
}
child = child.nextSiblingElement();
}
QDomElement found = findElementWithPaymentsToss(element, attribute, value);
if (!found.isNull()) {
return found;
}
element = element.nextSiblingElement();
}
return {};
}
QDateTime getUtcFromSeoulDate(const QString &date, const QString &time) {
int year = QDate::currentDate().year(); // или укажи вручную нужный год
QString withYear = QString("%1년 %2 %3").arg(year).arg(date).arg(time); // "2025년 7월 28일 17:54"
QLocale korean(QLocale::Korean, QLocale::SouthKorea);
QString format = "yyyy년 M월 d일 H:mm";
QDateTime dt = korean.toDateTime(withYear, format);
if (dt.isValid()) {
dt.setTimeZone(QTimeZone("Asia/Seoul"));
return dt.toTimeZone(QTimeZone::utc());
} else {
qWarning() << "Ошибка разбора даты:" << withYear;
return {};
}
}
Node ScreenXmlTossParser::findFirstAccountLine() {
Node node;
auto elements = findElementsWithPaymentsToss(m_xml, "text", "Transfer");
if (elements.length() == 2) {
for (QDomElement &element: elements) {
qDebug() << "Found account: " << element.attribute("content-desc");
}
}
if (!elements.isEmpty()) {
node = convertTossDomElementToNode(elements[0].parentNode().toElement());
}
return node;
}
QList<TransactionInfo> ScreenXmlTossParser::parsePositiveTransactions() {
QList<TransactionInfo> transactions;
QDomElement child = findElementWithPaymentsToss(m_xml, "class", "android.widget.ListView");
QDomNodeList listView = child.childNodes();
qDebug() << listView.count();
if (!listView.isEmpty()) {
QString date = "";
for (QDomNode node: listView) {
QString title = node.toElement().attribute("text");
if (title == "전체" || title.startsWith("AD") || title.endsWith("AD")) {
continue;
}
if (!title.isEmpty()) {
date = node.toElement().attribute("text");
}
if (date.isEmpty()) {
continue;
}
const QDomNodeList trBoxGroup = node.childNodes();
if (trBoxGroup.count() > 0) {
TransactionInfo transaction;
for (QDomNode item: trBoxGroup) {
QDomElement groupItem = item.toElement();
QString line = groupItem.attribute("text");
if (line.contains("잔액") && line.contains("입금")) {
QString beforeBalance = line.split("잔액").first().trimmed();
QString time = beforeBalance.split("입금").first().trimmed().last(5);
QString desc = beforeBalance.split("입금").first().replace(time, "").trimmed();
QString amount = beforeBalance.split("입금").last().replace("", "").replace(",", "").trimmed();
transaction.amount = amount.toDouble();
transaction.description = desc;
transaction.bankTime = date + " " + time;
transaction.completeTime = getUtcFromSeoulDate(date, time);
}
}
if (transaction.amount > 0) {
transactions.append(transaction);
}
}
}
} else {
qDebug() << "ListView is empty";
}
return transactions;
}
float extractKoreanWonFromText(const QString &input) {
QRegularExpression re(R"(₩([\d,]+))");
QRegularExpressionMatch match = re.match(input);
if (!match.hasMatch()) {
qWarning() << "Не удалось найти сумму в строке:" << input;
return 0.0f;
}
QString numberStr = match.captured(1);
numberStr.remove(','); // удаляем запятые
return numberStr.toFloat();
}
QList<AccountInfo> ScreenXmlTossParser::parseAccountsInfo() {
const QDomNodeList nodes = m_xml.elementsByTagName("node");
QList<AccountInfo> accounts;
for (int i = 0; i < nodes.count(); ++i) {
const QDomElement el = nodes.at(i).toElement();
// 토스뱅크 통장
if (el.attribute("content-desc").contains("토스뱅크 통장") && el.attribute("content-desc").contains("")) {
AccountInfo info;
info.amount = extractKoreanWonFromText(el.attribute("content-desc"));
info.updateTime = DateUtils::getUtcNow();
accounts.append(info);
break;
// auto amount = el.attribute("text").replace("₼", "").trimmed();
// const QDomElement parent = el.parentNode().parentNode().toElement();
// // Перебираем потомков
// QDomNode n = parent.firstChild().firstChild().firstChild().firstChild();
// while (!n.isNull()) {
// const QDomElement e = n.toElement();
// if (e.attribute("resource-id") == "az.kapitalbank.mbanking:id/tvNumber") {
// const QString account = e.attribute("text");
//
// AccountInfo info;
// info.lastNumbers = account;
// info.amount = amount.toFloat();
// info.description = account;
// info.updateTime = DateUtils::getUtcNow();
//
// accounts.append(info);
// break;
// }
// n = n.nextSibling();
// }
}
}
return accounts;
}
void ScreenXmlTossParser::test() {
// TransactionInfo info2 = parseExpandedInfo(m_xml);
// qDebug().noquote().nospace() << convertTransactionToString(info2);
// return;
QFile file("assets/rshb/all_products.xml");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) {
qDebug() << "Cannot open file";
}
QDomDocument doc;
if (!doc.setContent(&file)) {
qDebug() << "Failed to parse XML";
}
file.close();
qDebug() << "Start parsing XML:";
// Номер карты с последними цифрами
QDomElement root = doc.documentElement();
parseAndSaveXml(doc.toString());
// for (const AccountInfo &info: parseAccountsInfo()) {
// qDebug().noquote().nospace() << convertAccountToString(info);
// }
// TransactionInfo info = parseExpandedInfo(root);
// qDebug().noquote().nospace() << convertTransactionToString(info);
// ЕСПП
}

View File

@ -0,0 +1,46 @@
#pragma once
#include <QObject>
#include <QDomElement>
#include "android/xml/Node.h"
#include "db/AccountInfo.h"
#include "db/TransactionInfo.h"
class ScreenXmlTossParser final : public QObject {
Q_OBJECT
public:
explicit ScreenXmlTossParser(QObject *parent = nullptr);
~ScreenXmlTossParser() override;
Node findTextNode(const QString &text);
Node findTextContainsNode(const QString &text);
Node findFirstAccountLine();
Node findTextNode(const QString &text, int x1, int y1, int x2, int y2);
Node findEditText(const QString &text);
Node findEditTextByResourceId(const QString &resourceId);
Node findButtonNode(const QString &text, bool contains);
bool isHomeScreen();
void parseAndSaveXml(const QString &xml);
QList<TransactionInfo> parsePositiveTransactions();
QList<AccountInfo> parseAccountsInfo();
QList<Node> findPinCodeNodes(const QString &pinCode);
void test();
private:
QList<Node> m_nodes;
QDomElement m_xml;
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -0,0 +1,800 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<hierarchy rotation="0">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="0" hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="2" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/action_bar_root"
class="android.widget.LinearLayout" package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="android:id/content" class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,0][1080,2400]"
drawing-order="2" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/activity_drawer"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/activity_screen_container"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2337]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/root_progress_panel"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,0][1080,2337]" drawing-order="1"
hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/transfers"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2337]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/header"
class="android.widget.LinearLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,347]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/back_layout"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,226]" drawing-order="1" hint="">
<node index="0" text="" resource-id=""
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,79][1080,226]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/header_back"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc="Back"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,79][147,226]" drawing-order="1"
hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/header_right"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc="Back"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[933,79][1080,226]" drawing-order="6"
hint=""/>
</node>
</node>
<node index="1" text="На карту любого банка"
resource-id="az.kapitalbank.mbanking:id/title"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[42,226][851,326]" drawing-order="2" hint=""/>
</node>
<node index="1" text="" resource-id="az.kapitalbank.mbanking:id/body"
class="android.widget.ScrollView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,347][1080,2122]" drawing-order="2" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,347][1080,2038]"
drawing-order="1" hint="">
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/group_details"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,347][1080,2038]" drawing-order="7"
hint=""/>
<node index="2" text=""
resource-id="az.kapitalbank.mbanking:id/source_container"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,368][1080,716]" drawing-order="3" hint="">
<node index="0" text="" resource-id=""
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,368][1080,716]" drawing-order="1"
hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/product_view"
class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,368][1080,716]"
drawing-order="1" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,368][1080,716]" drawing-order="1" hint="">
<node index="0" text="Оплатить с"
resource-id="az.kapitalbank.mbanking:id/title"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[42,411][248,464]"
drawing-order="1" hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/container_product"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[42,506][1038,674]"
drawing-order="3" hint="">
<node index="0" text="" resource-id=""
class="androidx.cardview.widget.CardView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[42,506][1038,674]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/clContainer"
class="android.view.ViewGroup"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false"
bounds="[42,506][1038,674]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/card"
class="android.view.ViewGroup"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[74,546][210,635]"
drawing-order="1" hint="">
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/iv_card"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking"
content-desc="TODO"
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[74,546][210,635]"
drawing-order="2" hint=""/>
<node index="2" text="• 2480"
resource-id="az.kapitalbank.mbanking:id/card_text"
class="android.widget.TextView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[139,598][199,627]"
drawing-order="4" hint=""/>
</node>
<node index="1" text="Birbank Cashback"
resource-id="az.kapitalbank.mbanking:id/tv_card_name"
class="android.widget.TextView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[242,538][932,581]"
drawing-order="2" hint=""/>
<node index="2" text="50.00 AZN"
resource-id="az.kapitalbank.mbanking:id/tv_card_balance"
class="android.widget.TextView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[242,591][932,642]"
drawing-order="4" hint=""/>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/iv_selection"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[964,569][1006,611]"
drawing-order="7" hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/destination_container"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,716][1080,996]" drawing-order="4" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,716][1080,996]" drawing-order="1"
hint="">
<node index="0" text="Зачислить на"
resource-id="az.kapitalbank.mbanking:id/title"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,758][289,822]"
drawing-order="1" hint=""/>
<node NAF="true" index="1" text=""
resource-id="az.kapitalbank.mbanking:id/flow_suggestion"
class="android.view.View"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[598,737][1038,821]"
drawing-order="3" hint=""/>
<node index="2" text=""
resource-id="az.kapitalbank.mbanking:id/iv_suggestion"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc="TODO"
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[630,758][672,800]"
drawing-order="4" hint=""/>
<node index="3" text="Выбрать получателя"
resource-id="az.kapitalbank.mbanking:id/tv_suggestion"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[693,758][1006,801]"
drawing-order="5" hint=""/>
<node index="4" text=""
resource-id="az.kapitalbank.mbanking:id/card_view"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,822][1080,996]"
drawing-order="2" hint="">
<node index="0" text="" resource-id=""
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,822][1080,996]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/card_number"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,822][1080,996]"
drawing-order="2" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/root"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[42,822][1038,996]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/card"
class="androidx.cardview.widget.CardView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false"
bounds="[42,833][1038,985]"
drawing-order="3" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/input_container"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[42,833][1038,985]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/input_layout"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[42,833][1038,985]"
drawing-order="2" hint="">
<node index="0" text=""
resource-id=""
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking"
content-desc=""
checkable="false"
checked="false"
clickable="false"
enabled="true"
focusable="false"
focused="false"
scrollable="false"
long-clickable="false"
password="false"
selected="false"
bounds="[42,833][1038,985]"
drawing-order="1" hint="">
<node index="0"
text="Номер карты"
resource-id="az.kapitalbank.mbanking:id/value"
class="android.widget.EditText"
package="az.kapitalbank.mbanking"
content-desc=""
checkable="false"
checked="false"
clickable="true"
enabled="true"
focusable="true"
focused="false"
scrollable="false"
long-clickable="true"
password="false"
selected="false"
bounds="[42,833][1038,985]"
drawing-order="1"
hint="Номер карты"/>
<node index="1" text=""
resource-id=""
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking"
content-desc=""
checkable="false"
checked="false"
clickable="false"
enabled="true"
focusable="false"
focused="false"
scrollable="false"
long-clickable="false"
password="false"
selected="false"
bounds="[901,833][1038,985]"
drawing-order="3" hint="">
<node index="0" text=""
resource-id=""
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking"
content-desc=""
checkable="false"
checked="false"
clickable="false"
enabled="true"
focusable="false"
focused="false"
scrollable="false"
long-clickable="false"
password="false"
selected="false"
bounds="[901,833][1038,985]"
drawing-order="2"
hint="">
<node NAF="true"
index="0" text=""
resource-id="az.kapitalbank.mbanking:id/text_input_end_icon"
class="android.widget.ImageButton"
package="az.kapitalbank.mbanking"
content-desc=""
checkable="false"
checked="false"
clickable="true"
enabled="true"
focusable="true"
focused="false"
scrollable="false"
long-clickable="false"
password="false"
selected="false"
bounds="[912,846][1038,972]"
drawing-order="1"
hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node index="4" text="Детали перевода"
resource-id="az.kapitalbank.mbanking:id/details_title"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,1038][363,1091]" drawing-order="8"
hint=""/>
<node index="5" text=""
resource-id="az.kapitalbank.mbanking:id/amount_view"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,1102][1080,1535]" drawing-order="10" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,1102][1080,1535]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/amount"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,1102][739,1330]"
drawing-order="4" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/root"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[42,1102][718,1330]" drawing-order="1"
hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/card"
class="androidx.cardview.widget.CardView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[42,1113][718,1265]"
drawing-order="3" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/input_container"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[42,1113][718,1265]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/input_layout"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false"
bounds="[42,1113][718,1265]"
drawing-order="2" hint="">
<node index="0" text="" resource-id=""
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[42,1113][718,1265]"
drawing-order="1" hint="">
<node index="0" text="Сумма"
resource-id="az.kapitalbank.mbanking:id/value"
class="android.widget.EditText"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="true"
enabled="true" focusable="true"
focused="false" scrollable="false"
long-clickable="true"
password="false" selected="false"
bounds="[42,1113][718,1265]"
drawing-order="1" hint="Сумма"/>
<node index="1" text="" resource-id=""
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false"
password="false" selected="false"
bounds="[581,1113][718,1265]"
drawing-order="3" hint="">
<node index="0" text=""
resource-id=""
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking"
content-desc=""
checkable="false"
checked="false"
clickable="false"
enabled="true"
focusable="false"
focused="false"
scrollable="false"
long-clickable="false"
password="false"
selected="false"
bounds="[581,1113][718,1265]"
drawing-order="2" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/text_input_end_icon"
class="android.widget.ImageButton"
package="az.kapitalbank.mbanking"
content-desc=""
checkable="false"
checked="false"
clickable="false"
enabled="true"
focusable="false"
focused="false"
scrollable="false"
long-clickable="false"
password="false"
selected="false"
bounds="[592,1126][718,1252]"
drawing-order="1"
hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
<node index="1" text="Mин: 0.01AZN, Макс: 50.00AZN"
resource-id="az.kapitalbank.mbanking:id/helper"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[47,1276][557,1319]"
drawing-order="1" hint=""/>
</node>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/currency_view"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[739,1113][1038,1265]"
drawing-order="6" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[739,1113][1038,1265]" drawing-order="1"
hint="">
<node index="0" text="" resource-id=""
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[781,1139][954,1240]"
drawing-order="1" hint="">
<node index="0" text="Валюта"
resource-id="az.kapitalbank.mbanking:id/title_view"
class="android.widget.TextView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[781,1139][895,1182]"
drawing-order="1" hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/spinner"
class="android.widget.Spinner"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="true"
enabled="true" focusable="true"
focused="false" scrollable="true"
long-clickable="true" password="false"
selected="false" bounds="[781,1187][954,1240]"
drawing-order="3" hint="">
<node index="0" text="AZN"
resource-id="az.kapitalbank.mbanking:id/text"
class="android.widget.TextView"
package="az.kapitalbank.mbanking"
content-desc="" checkable="false"
checked="false" clickable="false"
enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false"
bounds="[781,1187][954,1240]"
drawing-order="1" hint=""/>
</node>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/dropdown_icon"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[954,1168][996,1210]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="2" text=""
resource-id="az.kapitalbank.mbanking:id/fixed_buttons"
class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,1330][1080,1519]"
drawing-order="5" hint="">
<node index="0" text="10"
resource-id="az.kapitalbank.mbanking:id/pay_button"
class="android.widget.Button"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[42,1351][346,1498]" drawing-order="1"
hint=""/>
<node index="1" text="20"
resource-id="az.kapitalbank.mbanking:id/pay_button"
class="android.widget.Button"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[388,1351][692,1498]" drawing-order="2"
hint=""/>
<node index="2" text="50"
resource-id="az.kapitalbank.mbanking:id/pay_button"
class="android.widget.Button"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[734,1351][1038,1498]" drawing-order="3"
hint=""/>
</node>
</node>
</node>
</node>
</node>
<node index="2" text="" resource-id="" class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,2059][1080,2143]" drawing-order="3" hint=""/>
<node index="3" text="Продолжить" resource-id="az.kapitalbank.mbanking:id/next"
class="android.widget.Button" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="false" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[42,2143][1038,2295]" drawing-order="6" hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</hierarchy>

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

View File

@ -0,0 +1,719 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<hierarchy rotation="0">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="0" hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="2" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/action_bar_root"
class="android.widget.LinearLayout" package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="android:id/content" class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,0][1080,2400]"
drawing-order="2" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/activity_drawer"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/activity_screen_container"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2158]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/root_progress_panel"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,0][1080,2158]" drawing-order="1"
hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2158]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/header"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,226]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout"
package="az.kapitalbank.mbanking" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,79][1080,226]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/header_back"
class="android.widget.ImageView" package="az.kapitalbank.mbanking"
content-desc="Back" checkable="false" checked="false"
clickable="true" enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,79][147,226]" drawing-order="1"
hint=""/>
<node index="1" text="Переводы"
resource-id="az.kapitalbank.mbanking:id/header_text"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[147,79][918,226]" drawing-order="4"
hint=""/>
<node index="2" text=""
resource-id="az.kapitalbank.mbanking:id/header_text_one"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[918,79][995,226]" drawing-order="5"
hint=""/>
</node>
</node>
<node index="1" text="" resource-id="az.kapitalbank.mbanking:id/rvCategories"
class="androidx.recyclerview.widget.RecyclerView"
package="az.kapitalbank.mbanking" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="true"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,247][1080,1087]" drawing-order="2" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/cellCategory"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,247][1080,415]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,247][1080,415]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/flow_start_images"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[42,268][200,394]"
drawing-order="3" hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_field_l"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,268][168,394]" drawing-order="1"
hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_l"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,268][167,393]"
drawing-order="1" hint=""/>
</node>
<node index="2" text="Между моими картами и счетами"
resource-id="az.kapitalbank.mbanking:id/tv_header"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[200,307][922,356]" drawing-order="4"
hint=""/>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/flow_center_text"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[200,307][922,356]"
drawing-order="6" hint=""/>
<node index="4" text=""
resource-id="az.kapitalbank.mbanking:id/iv_end_icon"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[933,279][1017,384]"
drawing-order="10" hint=""/>
<node index="5" text=""
resource-id="az.kapitalbank.mbanking:id/flow_end_items"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[933,279][1017,384]"
drawing-order="13" hint=""/>
<node index="6" text=""
resource-id="az.kapitalbank.mbanking:id/separator"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[168,412][1038,415]"
drawing-order="14" hint=""/>
</node>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/cellCategory"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,415][1080,583]" drawing-order="2" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,415][1080,583]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/flow_start_images"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[42,436][200,562]"
drawing-order="3" hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_field_l"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,436][168,562]" drawing-order="1"
hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_l"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,436][167,561]"
drawing-order="1" hint=""/>
</node>
<node index="2" text="На карту любого банка"
resource-id="az.kapitalbank.mbanking:id/tv_header"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[200,475][922,524]" drawing-order="4"
hint=""/>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/flow_center_text"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[200,475][922,524]"
drawing-order="6" hint=""/>
<node index="4" text=""
resource-id="az.kapitalbank.mbanking:id/iv_end_icon"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[933,447][1017,552]"
drawing-order="10" hint=""/>
<node index="5" text=""
resource-id="az.kapitalbank.mbanking:id/flow_end_items"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[933,447][1017,552]"
drawing-order="13" hint=""/>
<node index="6" text=""
resource-id="az.kapitalbank.mbanking:id/separator"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[168,580][1038,583]"
drawing-order="14" hint=""/>
</node>
</node>
<node index="2" text=""
resource-id="az.kapitalbank.mbanking:id/cellCategory"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,583][1080,751]" drawing-order="3" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,583][1080,751]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/flow_start_images"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[42,604][200,730]"
drawing-order="3" hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_field_l"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,604][168,730]" drawing-order="1"
hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_l"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,604][167,729]"
drawing-order="1" hint=""/>
</node>
<node index="2" text="Перевод другу"
resource-id="az.kapitalbank.mbanking:id/tv_header"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[200,643][922,692]" drawing-order="4"
hint=""/>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/flow_center_text"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[200,643][922,692]"
drawing-order="6" hint=""/>
<node index="4" text=""
resource-id="az.kapitalbank.mbanking:id/iv_end_icon"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[933,615][1017,720]"
drawing-order="10" hint=""/>
<node index="5" text=""
resource-id="az.kapitalbank.mbanking:id/flow_end_items"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[933,615][1017,720]"
drawing-order="13" hint=""/>
<node index="6" text=""
resource-id="az.kapitalbank.mbanking:id/separator"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[168,748][1038,751]"
drawing-order="14" hint=""/>
</node>
</node>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/cellCategory"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,751][1080,919]" drawing-order="4" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,751][1080,919]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/flow_start_images"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[42,772][200,898]"
drawing-order="3" hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_field_l"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,772][168,898]" drawing-order="1"
hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_l"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,772][167,897]"
drawing-order="1" hint=""/>
</node>
<node index="2" text="Запрос средств у друзей"
resource-id="az.kapitalbank.mbanking:id/tv_header"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[200,811][922,860]" drawing-order="4"
hint=""/>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/flow_center_text"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[200,811][922,860]"
drawing-order="6" hint=""/>
<node index="4" text=""
resource-id="az.kapitalbank.mbanking:id/iv_end_icon"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[933,783][1017,888]"
drawing-order="10" hint=""/>
<node index="5" text=""
resource-id="az.kapitalbank.mbanking:id/flow_end_items"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[933,783][1017,888]"
drawing-order="13" hint=""/>
<node index="6" text=""
resource-id="az.kapitalbank.mbanking:id/separator"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[168,916][1038,919]"
drawing-order="14" hint=""/>
</node>
</node>
<node index="4" text=""
resource-id="az.kapitalbank.mbanking:id/cellCategory"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,919][1080,1087]" drawing-order="5" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,919][1080,1087]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/flow_start_images"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[42,940][200,1066]"
drawing-order="3" hint=""/>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_field_l"
class="android.widget.FrameLayout"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,940][168,1066]" drawing-order="1"
hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/iv_start_icon_l"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[42,940][168,1066]"
drawing-order="1" hint=""/>
</node>
<node index="2" text="Перевод через AniPay"
resource-id="az.kapitalbank.mbanking:id/tv_header"
class="android.widget.TextView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[200,979][922,1028]"
drawing-order="4" hint=""/>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/flow_center_text"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[200,979][922,1028]"
drawing-order="6" hint=""/>
<node index="4" text=""
resource-id="az.kapitalbank.mbanking:id/iv_end_icon"
class="android.widget.ImageView"
package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[933,951][1017,1056]"
drawing-order="10" hint=""/>
<node index="5" text=""
resource-id="az.kapitalbank.mbanking:id/flow_end_items"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[933,951][1017,1056]" drawing-order="13" hint=""/>
<node index="6" text=""
resource-id="az.kapitalbank.mbanking:id/separator"
class="android.view.View" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[168,1084][1038,1087]" drawing-order="14" hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/bnv_activity_screen_navigation"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,2158][1080,2400]" drawing-order="2" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="az.kapitalbank.mbanking" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,2158][1080,2305]" drawing-order="1" hint="">
<node index="0" text="" resource-id="az.kapitalbank.mbanking:id/tab_home"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="Главная" checkable="false" checked="false" clickable="false"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="true"
bounds="[0,2158][216,2305]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_labels_group"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="true"
bounds="[59,2236][157,2305]" drawing-order="2" hint="">
<node index="0" text="Главная"
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_large_label_view"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="true"
bounds="[59,2236][157,2302]" drawing-order="2" hint=""/>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_container"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="true"
bounds="[76,2179][139,2242]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_view"
class="android.widget.ImageView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="true"
bounds="[76,2179][139,2242]" drawing-order="2" hint=""/>
</node>
</node>
<node index="1" text="" resource-id="az.kapitalbank.mbanking:id/tab_umico_market"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="Выгода" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[216,2158][432,2305]" drawing-order="2" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_labels_group"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[278,2236][369,2305]" drawing-order="2" hint="">
<node index="0" text="Выгода"
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_small_label_view"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[278,2236][369,2302]" drawing-order="1" hint=""/>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_container"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[292,2179][355,2242]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_view"
class="android.widget.ImageView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[292,2179][355,2242]" drawing-order="2" hint=""/>
</node>
</node>
<node index="2" text="" resource-id="az.kapitalbank.mbanking:id/tab_qr"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="QR" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[432,2158][648,2305]" drawing-order="3" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_container"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[508,2179][571,2242]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_view"
class="android.widget.ImageView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[508,2179][571,2242]" drawing-order="2" hint=""/>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_labels_group"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[522,2236][557,2305]" drawing-order="2" hint="">
<node index="0" text="QR"
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_small_label_view"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[522,2236][556,2302]" drawing-order="1" hint=""/>
</node>
</node>
<node index="3" text=""
resource-id="az.kapitalbank.mbanking:id/tab_payments_and_transfers"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="Платежи" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[648,2158][864,2305]" drawing-order="4" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_labels_group"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[701,2236][810,2305]" drawing-order="2" hint="">
<node index="0" text="Платежи"
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_small_label_view"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[701,2236][810,2302]" drawing-order="1" hint=""/>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_container"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[724,2179][787,2242]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_view"
class="android.widget.ImageView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[724,2179][787,2242]" drawing-order="2" hint=""/>
</node>
</node>
<node index="4" text="" resource-id="az.kapitalbank.mbanking:id/tab_more"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="Еще" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[864,2158][1080,2305]" drawing-order="5" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_container"
class="android.widget.FrameLayout" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[940,2179][1003,2242]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_icon_view"
class="android.widget.ImageView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[940,2179][1003,2242]" drawing-order="2" hint=""/>
</node>
<node index="1" text=""
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_labels_group"
class="android.view.ViewGroup" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[946,2236][998,2305]" drawing-order="2" hint="">
<node index="0" text="Еще"
resource-id="az.kapitalbank.mbanking:id/navigation_bar_item_small_label_view"
class="android.widget.TextView" package="az.kapitalbank.mbanking"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[946,2236][998,2302]" drawing-order="1" hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</hierarchy>

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 KiB

View File

@ -0,0 +1,738 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<hierarchy rotation="0">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="0" hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2337]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,136][1080,2337]" drawing-order="2" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/action_bar_root"
class="android.widget.LinearLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,136][1080,2337]" drawing-order="1" hint="">
<node index="0" text="" resource-id="android:id/content" class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,136][1080,2337]"
drawing-order="2" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,136][1080,2337]"
drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/app_bar_layout"
class="android.widget.LinearLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,136][1080,279]" drawing-order="3" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/toolbar"
class="android.view.ViewGroup" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,136][1080,278]" drawing-order="1"
hint="">
<node index="0" text="" resource-id="" class="android.widget.ImageButton"
package="viva.republica.toss" content-desc="Navigate up" checkable="false"
checked="false" clickable="true" enabled="true" focusable="true"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,136][147,278]" drawing-order="1" hint=""/>
<node index="1" text="" resource-id=""
class="androidx.appcompat.widget.LinearLayoutCompat"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[826,136][1048,278]" drawing-order="2" hint="">
<node index="0" text="Manage"
resource-id="viva.republica.toss:id/accessory_button"
class="android.widget.Button" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[826,144][1048,270]" drawing-order="1" hint=""/>
</node>
</node>
</node>
<node index="1" text="" resource-id="viva.republica.toss:id/top_tab"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,279][1080,413]" drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/tabBorder"
class="android.view.View" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,412][1080,413]" drawing-order="1"
hint=""/>
<node index="1" text="" resource-id="viva.republica.toss:id/tabLayout"
class="android.widget.HorizontalScrollView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true"
focusable="true" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[53,279][1027,413]" drawing-order="2"
hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[53,279][1027,413]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc="Account" checkable="false"
checked="false" clickable="false" enabled="true" focusable="true"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="true" bounds="[53,279][377,413]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="true" bounds="[53,318][377,374]"
drawing-order="3" hint="">
<node index="0" text="Account" resource-id="android:id/text1"
class="android.widget.TextView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="true" bounds="[128,318][303,374]" drawing-order="1"
hint=""/>
</node>
</node>
<node index="1" text="" resource-id="" class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc="My Toss Bank"
checkable="false" checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[377,279][702,413]"
drawing-order="2" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[377,318][702,374]"
drawing-order="3" hint="">
<node index="0" text="My Toss Bank" resource-id="android:id/text1"
class="android.widget.TextView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[400,318][679,374]" drawing-order="1"
hint=""/>
</node>
</node>
<node index="2" text="" resource-id="" class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc="Products" checkable="false"
checked="false" clickable="true" enabled="true" focusable="true"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[702,279][1027,413]" drawing-order="3" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[702,318][1027,374]"
drawing-order="3" hint="">
<node index="0" text="Products" resource-id="android:id/text1"
class="android.widget.TextView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[770,318][959,374]" drawing-order="1"
hint=""/>
</node>
</node>
</node>
</node>
</node>
<node index="2" text="" resource-id="viva.republica.toss:id/view_pager"
class="androidx.viewpager.widget.ViewPager" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true"
focusable="true" focused="false" scrollable="true" long-clickable="false"
password="false" selected="false" bounds="[0,413][1080,2337]" drawing-order="2"
hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/lab_frame_layout"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,413][1080,2337]" drawing-order="1"
hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/lab_web_view_container"
class="android.widget.ViewAnimator" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,413][1080,2337]" drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/lab_swipe_refresh_layout"
class="android.view.ViewGroup" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,413][1080,2337]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.webkit.WebView"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,413][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="" resource-id="" class="android.webkit.WebView"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="true"
focused="true" scrollable="true" long-clickable="false"
password="false" selected="false" bounds="[0,413][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="" resource-id="" class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,413][1080,2337]" drawing-order="0"
hint="">
<node index="0" text="" resource-id="__next"
class="android.view.View" package="viva.republica.toss"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,413][1080,2337]" drawing-order="0" hint="">
<node index="0" text="토스뱅크 1002-0112-4440" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[63,623][821,678]" drawing-order="0" hint="">
<node index="0" text="토스뱅크 1002-0112-4440"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[49,623][464,667]" drawing-order="0"
hint=""/>
</node>
<node index="1" text="1만 1원" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[63,675][821,775]" drawing-order="0" hint=""/>
<node index="2" text="card" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[826,667][1018,775]" drawing-order="0"
hint=""/>
<node index="3" text="Top up" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[63,835][527,964]" drawing-order="0" hint=""/>
<node index="4" text="Send" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[553,835][1018,964]" drawing-order="0"
hint=""/>
<node index="5"
text="Interest accrued until yesterday Get ₩2 now"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,982][1080,1153]" drawing-order="0"
hint=""/>
<node index="6" text="" resource-id=""
class="android.widget.ListView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,1213][1080,2337]" drawing-order="0"
hint="">
<node index="0" text="전체" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,1213][273,1321]" drawing-order="0"
hint=""/>
<node index="1" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="검색"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[939,1234][1042,1337]" drawing-order="0"
hint=""/>
<node index="2" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,1339][1080,1607]"
drawing-order="0" hint="">
<node index="0" text="AD" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[63,1355][110,1400]" drawing-order="0"
hint=""/>
<node index="1"
text="BRAVOKOREA 외국인도 대출 OK 전북은행 브라보코리아  AD 준법감시인 심의필 제2025-나-1624호 (유효기간 : 2026. 3. 31 까지)"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,1402][1080,1607]" drawing-order="0"
hint=""/>
</node>
<node index="3" text="7월 28일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,1633][191,1688]"
drawing-order="0" hint=""/>
<node index="4" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,1683][1080,1862]"
drawing-order="0" hint="">
<node index="0"
text="KHAN STANI 18:04 출금-2원 잔액 10,001원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,1683][1080,1862]" drawing-order="0"
hint=""/>
</node>
<node index="5" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,1859][1080,2037]"
drawing-order="0" hint="">
<node index="0" text="토스542 17:54 입금1원 잔액 10,003원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,1859][1080,2037]" drawing-order="0"
hint=""/>
</node>
<node index="6" text="7월 25일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,2066][191,2119]"
drawing-order="0" hint=""/>
<node index="7" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2116][1080,2295]"
drawing-order="0" hint="">
<node index="0" text="토스338 01:16 입금1원 잔액 10,002원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2116][1080,2295]" drawing-order="0"
hint=""/>
</node>
<node index="8" text="7월 24일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,2324][189,2337]"
drawing-order="0" hint=""/>
<node index="9" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="토스662 20:44 입금1원 잔액 10,001원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="10" text="7월 22일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,2337][191,2337]"
drawing-order="0" hint=""/>
<node index="11" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0"
text="KHAN STANI 01:52 출금-3원 잔액 10,000원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="12" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0"
text="KHAN STANI 01:49 출금-2원 잔액 10,003원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="13" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="토스584 01:47 입금1원 잔액 10,005원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="14" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="토스858 01:30 입금1원 잔액 10,004원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="15" text="7월 21일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,2337][186,2337]"
drawing-order="0" hint=""/>
<node index="16" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="토스468 12:45 입금1원 잔액 10,003원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="17" text="7월 20일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,2337][191,2337]"
drawing-order="0" hint=""/>
<node index="18" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0"
text="양준모 18:36 입금10,000원 잔액 10,002원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="19" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="토스248 11:09 입금1원 잔액 2원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="20" text="7월 19일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,2337][189,2337]"
drawing-order="0" hint=""/>
<node index="21" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0" text="토스511 07:55 입금1원 잔액 1원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="22" text="6월 16일" resource-id=""
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[63,2337][186,2337]"
drawing-order="0" hint=""/>
<node index="23" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0"
text="MILAN_한패스 14:11 출금-1,500원 잔액 0원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="24" text="" resource-id=""
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[0,2337][1080,2337]"
drawing-order="0" hint="">
<node index="0"
text="한패스MILAN 14:08 입금1,500원 잔액 1,500원"
resource-id="" class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="true" enabled="true"
focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
</node>
<node index="7" text="" resource-id="portal-container"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
<node index="8" text=""
resource-id="tds-mobile-portal-container"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
<node index="9" text=""
resource-id="tds-mobile-portal-container"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[0,2337][1080,2337]" drawing-order="0"
hint=""/>
</node>
<node index="1" text="" resource-id="" class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][0,0]" drawing-order="0"
hint="">
<node index="0" text=""
resource-id="__next-route-announcer__"
class="android.view.View"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,0][0,0]"
drawing-order="0" hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</hierarchy>

BIN
assets/toss/home_screen.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 KiB

1401
assets/toss/home_screen.xml Normal file

File diff suppressed because it is too large Load Diff

350
assets/toss/pin_code.xml Normal file
View File

@ -0,0 +1,350 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<hierarchy rotation="0">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="viva.republica.toss:id/action_bar_root"
class="android.widget.LinearLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="android:id/content" class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="viva.republica.toss:id/password_container"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="viva.republica.toss:id/container_root"
class="android.view.ViewGroup" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="viva.republica.toss:id/background_image"
class="android.widget.ImageView" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,0][1080,2186]"/>
<node index="1" text="" resource-id="viva.republica.toss:id/background_blur"
class="android.view.View" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,0][1080,2186]"/>
<node index="2" text="" resource-id="viva.republica.toss:id/container_content"
class="android.widget.LinearLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2186]">
<node index="0" text="" resource-id="viva.republica.toss:id/space_status_bar"
class="android.view.View" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,87]"/>
<node index="1" text="" resource-id="viva.republica.toss:id/space_top"
class="android.view.View" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,87][1080,229]"/>
<node index="2" text="" resource-id="viva.republica.toss:id/scroll_view"
class="android.widget.ScrollView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[0,229][1080,1312]">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,229][1080,1312]">
<node index="0" text="" resource-id=""
class="android.widget.RelativeLayout"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,229][1080,1312]">
<node index="0" text=""
resource-id="viva.republica.toss:id/container_password_input"
class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,594][1080,817]">
<node index="0" text="" resource-id=""
class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,594][1080,665]">
<node index="0" text="Enter PIN"
resource-id="viva.republica.toss:id/password_tvInfo"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[420,594][660,665]"/>
</node>
<node index="1" text=""
resource-id="viva.republica.toss:id/password_llInput"
class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,728][1080,817]">
<node index="0" text="●"
resource-id="viva.republica.toss:id/password_tvInput1"
class="android.widget.TextView"
package="viva.republica.toss"
content-desc="PIN 1 character, not entered"
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[255,728][315,806]"/>
<node index="1" text="●"
resource-id="viva.republica.toss:id/password_tvInput2"
class="android.widget.TextView"
package="viva.republica.toss"
content-desc="PIN 2 character, not entered"
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[357,728][417,806]"/>
<node index="2" text="●"
resource-id="viva.republica.toss:id/password_tvInput3"
class="android.widget.TextView"
package="viva.republica.toss"
content-desc="PIN 3 character, not entered"
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[459,728][519,806]"/>
<node index="3" text="●"
resource-id="viva.republica.toss:id/password_tvInput4"
class="android.widget.TextView"
package="viva.republica.toss"
content-desc="PIN 4 character, not entered"
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[561,728][621,806]"/>
<node index="4" text="●"
resource-id="viva.republica.toss:id/password_tvInput5"
class="android.widget.TextView"
package="viva.republica.toss"
content-desc="PIN 5 character, not entered"
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[663,728][723,806]"/>
<node index="5" text="●"
resource-id="viva.republica.toss:id/password_tvInput6"
class="android.widget.TextView"
package="viva.republica.toss"
content-desc="PIN 6 character, not entered"
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[765,728][825,806]"/>
</node>
</node>
</node>
</node>
</node>
<node index="3" text=""
resource-id="viva.republica.toss:id/password_scroll_view"
class="android.widget.ScrollView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[11,1312][1069,2186]">
<node index="0" text=""
resource-id="viva.republica.toss:id/password_container"
class="android.widget.LinearLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[32,1312][1048,2186]">
<node index="0" text=""
resource-id="viva.republica.toss:id/password_llNumberpad"
class="android.widget.LinearLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,1312][1048,2186]">
<node index="0" text="" resource-id=""
class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,1323][1048,1555]">
<node index="0" text="9"
resource-id="viva.republica.toss:id/password_btnNumber1"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,1323][371,1555]"/>
<node index="1" text="5"
resource-id="viva.republica.toss:id/password_btnNumber2"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[371,1323][710,1555]"/>
<node index="2" text="8"
resource-id="viva.republica.toss:id/password_btnNumber3"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[710,1323][1048,1555]"/>
</node>
<node index="1" text="" resource-id=""
class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,1555][1048,1786]">
<node index="0" text="3"
resource-id="viva.republica.toss:id/password_btnNumber4"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,1555][371,1786]"/>
<node index="1" text="1"
resource-id="viva.republica.toss:id/password_btnNumber5"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[371,1555][710,1786]"/>
<node index="2" text="7"
resource-id="viva.republica.toss:id/password_btnNumber6"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[710,1555][1048,1786]"/>
</node>
<node index="2" text="" resource-id=""
class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,1786][1048,2017]">
<node index="0" text="6"
resource-id="viva.republica.toss:id/password_btnNumber7"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,1786][371,2017]"/>
<node index="1" text="2"
resource-id="viva.republica.toss:id/password_btnNumber8"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[371,1786][710,2017]"/>
<node index="2" text="4"
resource-id="viva.republica.toss:id/password_btnNumber9"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[710,1786][1048,2017]"/>
</node>
<node index="3" text="" resource-id=""
class="android.widget.LinearLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,2017][1048,2186]">
<node NAF="true" index="0" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[32,2017][371,2186]"/>
<node index="1" text="0"
resource-id="viva.republica.toss:id/password_btnNumber0"
class="android.widget.Button"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[371,2017][710,2186]"/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
<node index="1" text="" resource-id="viva.republica.toss:id/app_bar_layout"
class="android.widget.LinearLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,229]">
<node index="0" text="" resource-id="viva.republica.toss:id/toolbar"
class="android.view.ViewGroup" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,87][1080,229]">
<node index="0" text="" resource-id="" class="android.widget.ImageButton"
package="viva.republica.toss" content-desc="Navigate up" checkable="false"
checked="false" clickable="true" enabled="true" focusable="true"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,87][147,229]"/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</hierarchy>

BIN
assets/toss/toss_banks.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 174 KiB

945
assets/toss/toss_banks.xml Normal file
View File

@ -0,0 +1,945 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<hierarchy rotation="0">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="0" hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="2" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/action_bar_root"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="android:id/content" class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,0][1080,2400]"
drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/container"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/coordinator"
class="android.view.ViewGroup" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/touch_outside"
class="android.view.View" package="viva.republica.toss" content-desc="Close"
checkable="false" checked="false" clickable="true" enabled="true" focusable="true"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint=""/>
<node index="1" text="" resource-id="viva.republica.toss:id/design_bottom_sheet"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,104][1080,2400]" drawing-order="2"
hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,104][1080,2400]" drawing-order="1" hint="">
<node index="1" text="" resource-id="viva.republica.toss:id/sheet"
class="android.view.ViewGroup" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[26,544][1054,2311]" drawing-order="2" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/handle"
class="android.widget.ImageView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[477,544][603,586]" drawing-order="1" hint=""/>
<node index="1" text="" resource-id="viva.republica.toss:id/content"
class="android.view.ViewGroup" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[26,586][1054,2311]" drawing-order="2" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[26,586][1054,2311]"
drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/header"
class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[26,586][1054,771]" drawing-order="1"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[26,586][1054,771]"
drawing-order="1" hint="">
<node index="0" text="Please select the bank"
resource-id="viva.republica.toss:id/title"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[89,649][991,718]" drawing-order="1" hint=""/>
</node>
</node>
<node index="1" text=""
resource-id="viva.republica.toss:id/bankListViewContainer"
class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[79,771][1001,2311]"
drawing-order="2" hint="">
<node index="0" text="" resource-id=""
class="android.widget.GridView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="true" focused="false"
scrollable="true" long-clickable="false" password="false"
selected="false" bounds="[79,771][1001,2311]"
drawing-order="1" hint="">
<node index="0" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="NongHyup"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,782][375,1001]" drawing-order="1" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,782][375,1001]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,819][270,893]" drawing-order="1"
hint=""/>
<node index="1" text="NongHyup"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[144,914][321,964]" drawing-order="2"
hint=""/>
</node>
</node>
<node index="1" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="KakaoBank"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,782][682,1001]" drawing-order="2"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,782][682,1001]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,819][577,893]" drawing-order="1"
hint=""/>
<node index="1" text="KakaoBank"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[447,914][632,964]" drawing-order="2"
hint=""/>
</node>
</node>
<node index="2" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Kookmin"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,782][990,1001]" drawing-order="3"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,782][990,1001]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,819][884,893]" drawing-order="1"
hint=""/>
<node index="1" text="Kookmin"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[774,914][921,964]" drawing-order="2"
hint=""/>
</node>
</node>
<node index="3" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Toss Bank"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,1023][375,1242]" drawing-order="4"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1023][375,1242]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1060][270,1134]"
drawing-order="1" hint=""/>
<node index="1" text="Toss Bank"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[150,1155][316,1205]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="4" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Shinhan"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,1023][682,1242]" drawing-order="5"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1023][682,1242]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1060][577,1134]"
drawing-order="1" hint=""/>
<node index="1" text="Shinhan"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[472,1155][607,1205]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="5" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Woori"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,1023][990,1242]" drawing-order="6"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1023][990,1242]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1060][884,1134]"
drawing-order="1" hint=""/>
<node index="1" text="Woori"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[798,1155][896,1205]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="6" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="IBK"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,1264][375,1483]" drawing-order="7"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1264][375,1483]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1301][270,1375]"
drawing-order="1" hint=""/>
<node index="1" text="IBK"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[205,1396][260,1446]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="7" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Hana"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,1264][682,1483]" drawing-order="8"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1264][682,1483]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1301][577,1375]"
drawing-order="1" hint=""/>
<node index="1" text="Hana"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[497,1396][582,1446]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="8" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="MG"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,1264][990,1483]" drawing-order="9"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1264][990,1483]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1301][884,1375]"
drawing-order="1" hint=""/>
<node index="1" text="MG"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[818,1396][876,1446]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="9" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss"
content-desc="Busan Bank" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1505][375,1779]"
drawing-order="10" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1505][375,1724]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1542][270,1616]"
drawing-order="1" hint=""/>
<node index="1" text="Busan Bank"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[136,1637][329,1687]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="10" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss"
content-desc="iM Bank(Daegu)" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1505][682,1779]"
drawing-order="11" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1505][682,1779]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1542][577,1616]"
drawing-order="1" hint=""/>
<node index="1" text="iM Bank(Daegu)"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[418,1637][661,1742]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="11" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Kbank"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,1505][990,1779]" drawing-order="12"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1505][990,1724]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1542][884,1616]"
drawing-order="1" hint=""/>
<node index="1" text="Kbank"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[794,1637][900,1687]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="12" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss"
content-desc="Credit Union" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1801][375,2020]"
drawing-order="13" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1801][375,2020]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1838][270,1912]"
drawing-order="1" hint=""/>
<node index="1" text="Credit Union"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[129,1933][337,1983]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="13" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss"
content-desc="Postal Sav." checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1801][682,2020]"
drawing-order="14" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1801][682,2020]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1838][577,1912]"
drawing-order="1" hint=""/>
<node index="1" text="Postal Sav."
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[453,1933][627,1983]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="14" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="SC"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,1801][990,2020]" drawing-order="15"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1801][990,2020]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1838][884,1912]"
drawing-order="1" hint=""/>
<node index="1" text="SC"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[823,1933][872,1983]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="15" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Kyongnam"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,2042][375,2261]" drawing-order="16"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,2042][375,2261]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,2079][270,2153]"
drawing-order="1" hint=""/>
<node index="1" text="Kyongnam"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[145,2174][321,2224]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="16" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Kwangju"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,2042][682,2261]" drawing-order="17"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,2042][682,2261]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,2079][577,2153]"
drawing-order="1" hint=""/>
<node index="1" text="Kwangju"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[470,2174][610,2224]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="17" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Suhyup"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,2042][990,2261]" drawing-order="18"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,2042][990,2261]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,2079][884,2153]"
drawing-order="1" hint=""/>
<node index="1" text="Suhyup"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[784,2174][910,2224]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="18" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Jeonbuk"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,2283][375,2311]" drawing-order="19"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,2283][375,2311]"
drawing-order="1" hint=""/>
</node>
<node index="19" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss"
content-desc="Savings Banks" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,2283][682,2311]"
drawing-order="20" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,2283][682,2311]"
drawing-order="1" hint=""/>
</node>
<node index="20" text="" resource-id=""
class="android.widget.Button"
package="viva.republica.toss" content-desc="Jeju Bank"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,2283][990,2311]" drawing-order="21"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,2283][990,2311]"
drawing-order="1" hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</hierarchy>

View File

@ -0,0 +1,962 @@
<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<hierarchy rotation="0">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="0" hint="">
<node index="0" text="" resource-id="" class="android.widget.LinearLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="" class="android.widget.FrameLayout" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="2" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/action_bar_root"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false" selected="false"
bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="android:id/content" class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc="" checkable="false" checked="false"
clickable="false" enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false" bounds="[0,0][1080,2400]"
drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/container"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/coordinator"
class="android.view.ViewGroup" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/touch_outside"
class="android.view.View" package="viva.republica.toss" content-desc="Close"
checkable="false" checked="false" clickable="true" enabled="true" focusable="true"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,0][1080,2400]" drawing-order="1" hint=""/>
<node index="1" text="" resource-id="viva.republica.toss:id/design_bottom_sheet"
class="android.widget.FrameLayout" package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false" enabled="true"
focusable="false" focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[0,104][1080,2400]" drawing-order="2"
hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[0,104][1080,2400]" drawing-order="1" hint="">
<node index="1" text="" resource-id="viva.republica.toss:id/sheet"
class="android.view.ViewGroup" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[26,544][1054,2311]" drawing-order="2" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/handle"
class="android.widget.ImageView" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[477,544][603,586]" drawing-order="1" hint=""/>
<node index="1" text="" resource-id="viva.republica.toss:id/content"
class="android.view.ViewGroup" package="viva.republica.toss"
content-desc="" checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false" scrollable="false"
long-clickable="false" password="false" selected="false"
bounds="[26,586][1054,2311]" drawing-order="2" hint="">
<node index="0" text="" resource-id="" class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="" checkable="false"
checked="false" clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false" long-clickable="false"
password="false" selected="false" bounds="[26,586][1054,2311]"
drawing-order="1" hint="">
<node index="0" text="" resource-id="viva.republica.toss:id/header"
class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[26,586][1054,771]" drawing-order="1"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[26,586][1054,771]"
drawing-order="1" hint="">
<node index="0" text="Please select the bank"
resource-id="viva.republica.toss:id/title"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[89,649][991,718]" drawing-order="1" hint=""/>
</node>
</node>
<node index="1" text=""
resource-id="viva.republica.toss:id/bankListViewContainer"
class="android.widget.FrameLayout"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false" password="false"
selected="false" bounds="[79,771][1001,2311]"
drawing-order="2" hint="">
<node index="0" text="" resource-id=""
class="android.widget.GridView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="true" focused="false"
scrollable="true" long-clickable="false" password="false"
selected="false" bounds="[79,771][1001,2311]"
drawing-order="1" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Kyongnam"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,771][375,788]" drawing-order="1" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,771][375,788]"
drawing-order="1" hint=""/>
</node>
<node index="1" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Kwangju"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,771][682,788]" drawing-order="2" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,771][682,788]"
drawing-order="1" hint=""/>
</node>
<node index="2" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Suhyup"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,771][990,788]" drawing-order="3" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,771][990,788]"
drawing-order="1" hint=""/>
</node>
<node index="3" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Jeonbuk"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,810][375,1029]" drawing-order="4" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,810][375,1029]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,847][270,921]" drawing-order="1"
hint=""/>
<node index="1" text="Jeonbuk"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[160,942][306,992]" drawing-order="2"
hint=""/>
</node>
</node>
<node index="4" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss"
content-desc="Savings Banks" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,810][682,1029]"
drawing-order="5" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,810][682,1029]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,847][577,921]" drawing-order="1"
hint=""/>
<node index="1" text="Savings Banks"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[421,942][658,992]" drawing-order="2"
hint=""/>
</node>
</node>
<node index="5" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Jeju Bank"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,810][990,1029]" drawing-order="6"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,810][990,1029]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,847][884,921]" drawing-order="1"
hint=""/>
<node index="1" text="Jeju Bank"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[767,942][927,992]" drawing-order="2"
hint=""/>
</node>
</node>
<node index="6" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Citibank"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,1051][375,1270]" drawing-order="7"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1051][375,1270]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1088][270,1162]"
drawing-order="1" hint=""/>
<node index="1" text="Citibank"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[163,1183][303,1233]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="7" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="KDB"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,1051][682,1270]" drawing-order="8"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1051][682,1270]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1088][577,1162]"
drawing-order="1" hint=""/>
<node index="1" text="KDB"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1183][576,1233]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="8" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="NFCF"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,1051][990,1270]" drawing-order="9"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1051][990,1270]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1088][884,1162]"
drawing-order="1" hint=""/>
<node index="1" text="NFCF"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[800,1183][895,1233]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="9" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="SBI Sav."
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,1292][375,1511]" drawing-order="10"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1292][375,1511]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1329][270,1403]"
drawing-order="1" hint=""/>
<node index="1" text="SBI Sav."
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[169,1424][297,1474]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="10" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="BOA"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,1292][682,1511]" drawing-order="11"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1292][682,1511]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1329][577,1403]"
drawing-order="1" hint=""/>
<node index="1" text="BOA"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1424][577,1474]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="11" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss"
content-desc="Bank of China" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1292][990,1511]"
drawing-order="12" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1292][990,1511]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1329][884,1403]"
drawing-order="1" hint=""/>
<node index="1" text="Bank of China"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[734,1424][961,1474]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="12" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="HSBC"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,1533][375,1752]" drawing-order="13"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1533][375,1752]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1570][270,1644]"
drawing-order="1" hint=""/>
<node index="1" text="HSBC"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[183,1665][282,1715]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="13" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="ICBC"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,1533][682,1752]" drawing-order="14"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1533][682,1752]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1570][577,1644]"
drawing-order="1" hint=""/>
<node index="1" text="ICBC"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[497,1665][582,1715]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="14" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Deutsche"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,1533][990,1752]" drawing-order="15"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1533][990,1752]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1570][884,1644]"
drawing-order="1" hint=""/>
<node index="1" text="Deutsche"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[767,1665][927,1715]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="15" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="JPMorgan"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,1774][375,1993]" drawing-order="16"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,1774][375,1993]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,1811][270,1885]"
drawing-order="1" hint=""/>
<node index="1" text="JPMorgan"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[149,1906][317,1956]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="16" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss"
content-desc="BNP Paribas" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1774][682,1993]"
drawing-order="17" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,1774][682,1993]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,1811][577,1885]"
drawing-order="1" hint=""/>
<node index="1" text="BNP Paribas"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[439,1906][640,1956]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="17" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="CCB"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[704,1774][990,1993]" drawing-order="18"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,1774][990,1993]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,1811][884,1885]"
drawing-order="1" hint=""/>
<node index="1" text="CCB"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[809,1906][885,1956]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="18" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false" clickable="false"
enabled="true" focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[79,2004][1001,2157]" drawing-order="19"
hint="">
<node index="0" text="Select securities company"
resource-id="viva.republica.toss:id/title"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,2078][990,2136]"
drawing-order="1" hint=""/>
</node>
<node index="19" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Toss Sec."
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[90,2168][375,2311]" drawing-order="20"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[90,2168][375,2311]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[196,2205][270,2279]"
drawing-order="1" hint=""/>
<node index="1" text="Toss Sec."
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[156,2300][310,2311]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="20" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc="Kakao Pay"
checkable="false" checked="false" clickable="true"
enabled="true" focusable="true" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[397,2168][682,2311]" drawing-order="21"
hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[397,2168][682,2311]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[503,2205][577,2279]"
drawing-order="1" hint=""/>
<node index="1" text="Kakao Pay"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[456,2300][624,2311]"
drawing-order="2" hint=""/>
</node>
</node>
<node index="21" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss"
content-desc="Mirae Asset" checkable="false"
checked="false" clickable="true" enabled="true"
focusable="true" focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,2168][990,2311]"
drawing-order="22" hint="">
<node index="0" text="" resource-id=""
class="android.view.ViewGroup"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true" focusable="false"
focused="false" scrollable="false"
long-clickable="false" password="false"
selected="false" bounds="[704,2168][990,2311]"
drawing-order="1" hint="">
<node index="0" text=""
resource-id="viva.republica.toss:id/icon"
class="android.widget.ImageView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[810,2205][884,2279]"
drawing-order="1" hint=""/>
<node index="1" text="Mirae Asset"
resource-id="viva.republica.toss:id/name"
class="android.widget.TextView"
package="viva.republica.toss" content-desc=""
checkable="false" checked="false"
clickable="false" enabled="true"
focusable="false" focused="false"
scrollable="false" long-clickable="false"
password="false" selected="false"
bounds="[751,2300][943,2311]"
drawing-order="2" hint=""/>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</node>
</hierarchy>

Binary file not shown.

View File

@ -12,7 +12,7 @@
#include <QThread>
#include "birbank/LoginAndCheckAccountsBirbankScript.h"
#include "common/PaddedItemDelegate.h"
#include "toss/LoginAndCheckAccountsTossScript.h"
#include "dao/AccountDAO.h"
#include "dao/ApplicationDAO.h"
#include "device/EditBankAccountDialog.h"
@ -125,7 +125,9 @@ AccountSettingsWindow::AccountSettingsWindow(
if (!m_applicationInfo.pinCode.isEmpty()) {
QMessageBox msgBox(this);
msgBox.setWindowTitle(tr("Запустить проверку пин-кода?"));
msgBox.setText("Запуститься скрипт проверки входа в банк " + m_applicationInfo.name + " по пин-коду. Окно с настройками закроется.");
msgBox.setText(
"Запуститься скрипт проверки входа в банк " + m_applicationInfo.name +
" по пин-коду. Окно с настройками закроется.");
QPushButton *deleteBtn = msgBox.addButton(tr("Запустить"), QMessageBox::AcceptRole);
QPushButton *closeBtn = msgBox.addButton(tr("Отмена"), QMessageBox::RejectRole);
@ -205,7 +207,15 @@ void AccountSettingsWindow::startCheckPinCode(const QString &appCode) {
connect(worker, &LoginAndCheckAccountsBirbankScript::finished, worker, &QObject::deleteLater);
connect(thread, &QThread::finished, thread, &QObject::deleteLater);
thread->start();
} else if (appCode == "ziraat") {
} else if (appCode == "toss") {
const auto thread = new QThread(nullptr);
auto *worker = new LoginAndCheckAccountsTossScript(m_deviceId, appCode, nullptr);
worker->moveToThread(thread);
connect(thread, &QThread::started, worker, &LoginAndCheckAccountsTossScript::start);
connect(worker, &LoginAndCheckAccountsTossScript::finished, thread, &QThread::quit);
connect(worker, &LoginAndCheckAccountsTossScript::finished, worker, &QObject::deleteLater);
connect(thread, &QThread::finished, thread, &QObject::deleteLater);
thread->start();
}
}