Как программно определить тип способа оплаты по умолчанию для приложения Tap and Pay Wallet в Android?

Приложение X-кошелька, поддерживающее только HCE (эмуляцию на основе хост-карты), установлено на устройстве Android, поддерживающем способы оплаты HCE и SE (Secure Element). Приложение «нажми и заплати» по умолчанию — это приложение X-кошелька, но выбранный по умолчанию способ оплаты, зарегистрированный в нем, — SE.

введите здесь описание изображения

Как определить способ оплаты по умолчанию? Чтобы я мог предупредить пользователя изменить тип способа оплаты на HCE для кошелька X.


person basipos    schedule 05.11.2015    source источник
comment
На Android пока нет общедоступного API для этого.   -  person basipos    schedule 25.04.2016


Ответы (1)


Вы можете указать системе Android, что вы хотите, чтобы ваше приложение управляло нажатием и оплатой, и она отобразит диалоговое окно с названием приложения, которое фактически управляет платежом, а также с названием вашего приложения.

Это объясняется в ответе на вопрос: Установить службу оплаты по умолчанию для приложения

Код, который вы можете найти, выглядит следующим образом:

Intent intent = new Intent();
intent.setAction(CardEmulation.ACTION_CHANGE_DEFAULT);
intent.putExtra(CardEmulation.EXTRA_SERVICE_COMPONENT,
            new ComponentName(this, my.package.MyPaymentService.class));
intent.putExtra(CardEmulation.EXTRA_CATEGORY, CardEmulation.CATEGORY_PAYMENT);

startActivity(intent);

где «my.package.MyPaymentService» — это служба в вашем приложении, которая управляет оплатой.

person Fer    schedule 11.05.2016
comment
Я думаю, вы можете определить, является ли ваше приложение приложением по умолчанию, но вы не можете понять, какое приложение является приложением по умолчанию. - person Scott Merritt; 09.08.2017