1 /* 2 * Copyright (C) 2016 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.view.autofill; 18 19 import java.util.List; 20 21 import android.content.ComponentName; 22 import android.graphics.Rect; 23 import android.os.Bundle; 24 import android.os.IBinder; 25 import android.os.RemoteCallback; 26 import android.service.autofill.FillEventHistory; 27 import android.service.autofill.UserData; 28 import android.view.autofill.AutofillId; 29 import android.view.autofill.AutofillValue; 30 import android.view.autofill.IAutoFillManagerClient; 31 import com.android.internal.os.IResultReceiver; 32 33 /** 34 * Mediator between apps being auto-filled and auto-fill service implementations. 35 * 36 * {@hide} 37 */ 38 oneway interface IAutoFillManager { 39 // Returns flags: FLAG_ADD_CLIENT_ENABLED | FLAG_ADD_CLIENT_DEBUG | FLAG_ADD_CLIENT_VERBOSE addClient(in IAutoFillManagerClient client, in ComponentName componentName, int userId, in IResultReceiver result)40 void addClient(in IAutoFillManagerClient client, in ComponentName componentName, int userId, 41 in IResultReceiver result); removeClient(in IAutoFillManagerClient client, int userId)42 void removeClient(in IAutoFillManagerClient client, int userId); startSession(IBinder activityToken, in IBinder appCallback, in AutofillId autoFillId, in Rect bounds, in AutofillValue value, int userId, boolean hasCallback, int flags, in ComponentName componentName, boolean compatMode, in IResultReceiver result)43 void startSession(IBinder activityToken, in IBinder appCallback, in AutofillId autoFillId, 44 in Rect bounds, in AutofillValue value, int userId, boolean hasCallback, int flags, 45 in ComponentName componentName, boolean compatMode, in IResultReceiver result); getFillEventHistory(in IResultReceiver result)46 void getFillEventHistory(in IResultReceiver result); restoreSession(int sessionId, in IBinder activityToken, in IBinder appCallback, in IResultReceiver result)47 void restoreSession(int sessionId, in IBinder activityToken, in IBinder appCallback, 48 in IResultReceiver result); updateSession(int sessionId, in AutofillId id, in Rect bounds, in AutofillValue value, int action, int flags, int userId)49 void updateSession(int sessionId, in AutofillId id, in Rect bounds, 50 in AutofillValue value, int action, int flags, int userId); setAutofillFailure(int sessionId, in List<AutofillId> ids, int userId)51 void setAutofillFailure(int sessionId, in List<AutofillId> ids, int userId); finishSession(int sessionId, int userId)52 void finishSession(int sessionId, int userId); cancelSession(int sessionId, int userId)53 void cancelSession(int sessionId, int userId); setAuthenticationResult(in Bundle data, int sessionId, int authenticationId, int userId)54 void setAuthenticationResult(in Bundle data, int sessionId, int authenticationId, int userId); setHasCallback(int sessionId, int userId, boolean hasIt)55 void setHasCallback(int sessionId, int userId, boolean hasIt); disableOwnedAutofillServices(int userId)56 void disableOwnedAutofillServices(int userId); isServiceSupported(int userId, in IResultReceiver result)57 void isServiceSupported(int userId, in IResultReceiver result); isServiceEnabled(int userId, String packageName, in IResultReceiver result)58 void isServiceEnabled(int userId, String packageName, in IResultReceiver result); onPendingSaveUi(int operation, IBinder token)59 void onPendingSaveUi(int operation, IBinder token); getUserData(in IResultReceiver result)60 void getUserData(in IResultReceiver result); getUserDataId(in IResultReceiver result)61 void getUserDataId(in IResultReceiver result); setUserData(in UserData userData)62 void setUserData(in UserData userData); isFieldClassificationEnabled(in IResultReceiver result)63 void isFieldClassificationEnabled(in IResultReceiver result); getAutofillServiceComponentName(in IResultReceiver result)64 void getAutofillServiceComponentName(in IResultReceiver result); getAvailableFieldClassificationAlgorithms(in IResultReceiver result)65 void getAvailableFieldClassificationAlgorithms(in IResultReceiver result); getDefaultFieldClassificationAlgorithm(in IResultReceiver result)66 void getDefaultFieldClassificationAlgorithm(in IResultReceiver result); setAugmentedAutofillWhitelist(in List<String> packages, in List<ComponentName> activities, in IResultReceiver result)67 void setAugmentedAutofillWhitelist(in List<String> packages, in List<ComponentName> activities, 68 in IResultReceiver result); 69 } 70