2014-06-11 91 views
5

讓我們來考慮一個用戶安裝了多個具有NFC HCE支付能力的應用的情況。這些應用程序服務在設置NFC Tap和Pay下可見。設置應用默認支付服務

如果以編程方式將您的應用程序更改爲默認支付服務(如果不是)?

CardEmulation似乎只有API才能查詢類別的服務是否爲默認值。

謝謝。

回答

9

擁有該UI的主要想法是用戶可以決定哪個付款應用程序應該是默認應用程序。因此,有沒有的方式以編程方式將您的應用程序設置爲默認值。

但是,您可以要求用戶設置您的應用程序爲給付類別默認的應用程序(見ACTION_CHANGE_DEFAULT):

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);