1 /*
2  * Copyright (C) 2013 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.nfc;
18 
19 import android.content.ComponentName;
20 import android.nfc.cardemulation.AidGroup;
21 import android.nfc.cardemulation.ApduServiceInfo;
22 import android.os.RemoteCallback;
23 
24 /**
25  * @hide
26  */
27 interface INfcCardEmulation
28 {
isDefaultServiceForCategory(int userHandle, in ComponentName service, String category)29     boolean isDefaultServiceForCategory(int userHandle, in ComponentName service, String category);
isDefaultServiceForAid(int userHandle, in ComponentName service, String aid)30     boolean isDefaultServiceForAid(int userHandle, in ComponentName service, String aid);
setDefaultServiceForCategory(int userHandle, in ComponentName service, String category)31     boolean setDefaultServiceForCategory(int userHandle, in ComponentName service, String category);
setDefaultForNextTap(int userHandle, in ComponentName service)32     boolean setDefaultForNextTap(int userHandle, in ComponentName service);
setShouldDefaultToObserveModeForService(int userId, in android.content.ComponentName service, boolean enable)33     boolean setShouldDefaultToObserveModeForService(int userId, in android.content.ComponentName service, boolean enable);
registerAidGroupForService(int userHandle, in ComponentName service, in AidGroup aidGroup)34     boolean registerAidGroupForService(int userHandle, in ComponentName service, in AidGroup aidGroup);
registerPollingLoopFilterForService(int userHandle, in ComponentName service, in String pollingLoopFilter, boolean autoTransact)35     boolean registerPollingLoopFilterForService(int userHandle, in ComponentName service, in String pollingLoopFilter, boolean autoTransact);
registerPollingLoopPatternFilterForService(int userHandle, in ComponentName service, in String pollingLoopPatternFilter, boolean autoTransact)36     boolean registerPollingLoopPatternFilterForService(int userHandle, in ComponentName service, in String pollingLoopPatternFilter, boolean autoTransact);
setOffHostForService(int userHandle, in ComponentName service, in String offHostSecureElement)37     boolean setOffHostForService(int userHandle, in ComponentName service, in String offHostSecureElement);
unsetOffHostForService(int userHandle, in ComponentName service)38     boolean unsetOffHostForService(int userHandle, in ComponentName service);
getAidGroupForService(int userHandle, in ComponentName service, String category)39     AidGroup getAidGroupForService(int userHandle, in ComponentName service, String category);
removeAidGroupForService(int userHandle, in ComponentName service, String category)40     boolean removeAidGroupForService(int userHandle, in ComponentName service, String category);
removePollingLoopFilterForService(int userHandle, in ComponentName service, in String pollingLoopFilter)41     boolean removePollingLoopFilterForService(int userHandle, in ComponentName service, in String pollingLoopFilter);
removePollingLoopPatternFilterForService(int userHandle, in ComponentName service, in String pollingLoopPatternFilter)42     boolean removePollingLoopPatternFilterForService(int userHandle, in ComponentName service, in String pollingLoopPatternFilter);
getServices(int userHandle, in String category)43     List<ApduServiceInfo> getServices(int userHandle, in String category);
setPreferredService(in ComponentName service)44     boolean setPreferredService(in ComponentName service);
unsetPreferredService()45     boolean unsetPreferredService();
supportsAidPrefixRegistration()46     boolean supportsAidPrefixRegistration();
getPreferredPaymentService(int userHandle)47     ApduServiceInfo getPreferredPaymentService(int userHandle);
setServiceEnabledForCategoryOther(int userHandle, in ComponentName app, boolean status)48     boolean setServiceEnabledForCategoryOther(int userHandle, in ComponentName app, boolean status);
isDefaultPaymentRegistered()49     boolean isDefaultPaymentRegistered();
50 
overrideRoutingTable(int userHandle, String protocol, String technology)51     boolean overrideRoutingTable(int userHandle, String protocol, String technology);
recoverRoutingTable(int userHandle)52     boolean recoverRoutingTable(int userHandle);
53 }
54