1 /* 2 * Copyright (C) 2017 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.content.pm; 18 19 import android.app.IApplicationThread; 20 import android.content.ComponentName; 21 import android.content.Intent; 22 import android.graphics.Rect; 23 import android.os.Bundle; 24 import android.os.UserHandle; 25 26 /** 27 * @hide 28 */ 29 interface ICrossProfileApps { startActivityAsUser(in IApplicationThread caller, in String callingPackage, in String callingFeatureId, in ComponentName component, int userId, boolean launchMainActivity, in IBinder task, in Bundle options)30 void startActivityAsUser(in IApplicationThread caller, in String callingPackage, 31 in String callingFeatureId, in ComponentName component, int userId, 32 boolean launchMainActivity, in IBinder task, in Bundle options); startActivityAsUserByIntent(in IApplicationThread caller, in String callingPackage, in String callingFeatureId, in Intent intent, int userId, in IBinder callingActivity, in Bundle options)33 void startActivityAsUserByIntent(in IApplicationThread caller, in String callingPackage, 34 in String callingFeatureId, in Intent intent, int userId, in IBinder callingActivity, 35 in Bundle options); getTargetUserProfiles(in String callingPackage)36 List<UserHandle> getTargetUserProfiles(in String callingPackage); canInteractAcrossProfiles(in String callingPackage)37 boolean canInteractAcrossProfiles(in String callingPackage); canRequestInteractAcrossProfiles(in String callingPackage)38 boolean canRequestInteractAcrossProfiles(in String callingPackage); setInteractAcrossProfilesAppOp(int userId, in String packageName, int newMode)39 void setInteractAcrossProfilesAppOp(int userId, in String packageName, int newMode); canConfigureInteractAcrossProfiles(int userId, in String packageName)40 boolean canConfigureInteractAcrossProfiles(int userId, in String packageName); canUserAttemptToConfigureInteractAcrossProfiles(int userId, in String packageName)41 boolean canUserAttemptToConfigureInteractAcrossProfiles(int userId, in String packageName); resetInteractAcrossProfilesAppOps(int userId, in List<String> packageNames)42 void resetInteractAcrossProfilesAppOps(int userId, in List<String> packageNames); clearInteractAcrossProfilesAppOps(int userId)43 void clearInteractAcrossProfilesAppOps(int userId); 44 } 45