• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2014 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.content.pm.IPackageDeleteObserver2;
20 import android.content.pm.IPackageInstallerCallback;
21 import android.content.pm.IPackageInstallerSession;
22 import android.content.pm.PackageInstaller;
23 import android.content.pm.ParceledListSlice;
24 import android.content.pm.VersionedPackage;
25 import android.content.IntentSender;
26 
27 import android.graphics.Bitmap;
28 
29 /** {@hide} */
30 interface IPackageInstaller {
createSession(in PackageInstaller.SessionParams params, String installerPackageName, String installerAttributionTag, int userId)31     int createSession(in PackageInstaller.SessionParams params, String installerPackageName,
32             String installerAttributionTag, int userId);
33 
updateSessionAppIcon(int sessionId, in Bitmap appIcon)34     void updateSessionAppIcon(int sessionId, in Bitmap appIcon);
updateSessionAppLabel(int sessionId, String appLabel)35     void updateSessionAppLabel(int sessionId, String appLabel);
36 
abandonSession(int sessionId)37     void abandonSession(int sessionId);
38 
openSession(int sessionId)39     IPackageInstallerSession openSession(int sessionId);
40 
getSessionInfo(int sessionId)41     PackageInstaller.SessionInfo getSessionInfo(int sessionId);
42 
getAllSessions(int userId)43     ParceledListSlice getAllSessions(int userId);
getMySessions(String installerPackageName, int userId)44     ParceledListSlice getMySessions(String installerPackageName, int userId);
45 
getStagedSessions()46     ParceledListSlice getStagedSessions();
47 
registerCallback(IPackageInstallerCallback callback, int userId)48     void registerCallback(IPackageInstallerCallback callback, int userId);
unregisterCallback(IPackageInstallerCallback callback)49     void unregisterCallback(IPackageInstallerCallback callback);
50 
51     @UnsupportedAppUsage(maxTargetSdk = 30, trackingBug = 170729553)
uninstall(in VersionedPackage versionedPackage, String callerPackageName, int flags, in IntentSender statusReceiver, int userId)52     void uninstall(in VersionedPackage versionedPackage, String callerPackageName, int flags,
53             in IntentSender statusReceiver, int userId);
54 
uninstallExistingPackage(in VersionedPackage versionedPackage, String callerPackageName, in IntentSender statusReceiver, int userId)55     void uninstallExistingPackage(in VersionedPackage versionedPackage, String callerPackageName,
56             in IntentSender statusReceiver, int userId);
57 
installExistingPackage(String packageName, int installFlags, int installReason, in IntentSender statusReceiver, int userId, in List<String> whiteListedPermissions)58     void installExistingPackage(String packageName, int installFlags, int installReason,
59             in IntentSender statusReceiver, int userId, in List<String> whiteListedPermissions);
60 
setPermissionsResult(int sessionId, boolean accepted)61     void setPermissionsResult(int sessionId, boolean accepted);
62 
bypassNextStagedInstallerCheck(boolean value)63     void bypassNextStagedInstallerCheck(boolean value);
64 
bypassNextAllowedApexUpdateCheck(boolean value)65     void bypassNextAllowedApexUpdateCheck(boolean value);
66 
setAllowUnlimitedSilentUpdates(String installerPackageName)67     void setAllowUnlimitedSilentUpdates(String installerPackageName);
setSilentUpdatesThrottleTime(long throttleTimeInSeconds)68     void setSilentUpdatesThrottleTime(long throttleTimeInSeconds);
69 }
70