13a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey/*
23a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * Copyright (C) 2014 The Android Open Source Project
33a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey *
43a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * Licensed under the Apache License, Version 2.0 (the "License");
53a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * you may not use this file except in compliance with the License.
63a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * You may obtain a copy of the License at
73a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey *
83a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey *      http://www.apache.org/licenses/LICENSE-2.0
93a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey *
103a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * Unless required by applicable law or agreed to in writing, software
113a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * distributed under the License is distributed on an "AS IS" BASIS,
123a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
133a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * See the License for the specific language governing permissions and
143a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey * limitations under the License.
153a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey */
163a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey
173a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkeypackage android.content.pm;
183a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey
19fbd0e9fa37fc17ccd25e4c1f16195bbd27de3c4cJeff Sharkeyimport android.content.pm.IPackageDeleteObserver2;
2016c8e3f49497b6046972ae650772f65768366be8Jeff Sharkeyimport android.content.pm.IPackageInstallerCallback;
213a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkeyimport android.content.pm.IPackageInstallerSession;
22a0907436c01fd8c545a6b5c7b28bc3bc9db59270Jeff Sharkeyimport android.content.pm.PackageInstaller;
2397d47ed036ff7bd3d7d2ddc1c6df1104ec237559Jeff Sharkeyimport android.content.pm.ParceledListSlice;
24a0907436c01fd8c545a6b5c7b28bc3bc9db59270Jeff Sharkeyimport android.content.IntentSender;
253a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey
26ec9bad2015c6d3bc91bab66f0824043c1e24d013Jeff Sharkeyimport android.graphics.Bitmap;
27ec9bad2015c6d3bc91bab66f0824043c1e24d013Jeff Sharkey
283a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey/** {@hide} */
293a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkeyinterface IPackageInstaller {
30a0907436c01fd8c545a6b5c7b28bc3bc9db59270Jeff Sharkey    int createSession(in PackageInstaller.SessionParams params, String installerPackageName, int userId);
31ec9bad2015c6d3bc91bab66f0824043c1e24d013Jeff Sharkey
32ec9bad2015c6d3bc91bab66f0824043c1e24d013Jeff Sharkey    void updateSessionAppIcon(int sessionId, in Bitmap appIcon);
33ec9bad2015c6d3bc91bab66f0824043c1e24d013Jeff Sharkey    void updateSessionAppLabel(int sessionId, String appLabel);
34ec9bad2015c6d3bc91bab66f0824043c1e24d013Jeff Sharkey
35381d94b712605112b35d7f70064b0d18bd877877Jeff Sharkey    void abandonSession(int sessionId);
36381d94b712605112b35d7f70064b0d18bd877877Jeff Sharkey
373a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey    IPackageInstallerSession openSession(int sessionId);
383a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey
39a0907436c01fd8c545a6b5c7b28bc3bc9db59270Jeff Sharkey    PackageInstaller.SessionInfo getSessionInfo(int sessionId);
40ec9bad2015c6d3bc91bab66f0824043c1e24d013Jeff Sharkey
4197d47ed036ff7bd3d7d2ddc1c6df1104ec237559Jeff Sharkey    ParceledListSlice getAllSessions(int userId);
4297d47ed036ff7bd3d7d2ddc1c6df1104ec237559Jeff Sharkey    ParceledListSlice getMySessions(String installerPackageName, int userId);
433a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey
4416c8e3f49497b6046972ae650772f65768366be8Jeff Sharkey    void registerCallback(IPackageInstallerCallback callback, int userId);
4516c8e3f49497b6046972ae650772f65768366be8Jeff Sharkey    void unregisterCallback(IPackageInstallerCallback callback);
46bb580670350b76fa2fcc5ee873f99b7970759cbfJeff Sharkey
47a0907436c01fd8c545a6b5c7b28bc3bc9db59270Jeff Sharkey    void uninstall(String packageName, int flags, in IntentSender statusReceiver, int userId);
487328a1b39b3dae1c0cd390c0a3695c6a46b8e9d8Jeff Sharkey
497328a1b39b3dae1c0cd390c0a3695c6a46b8e9d8Jeff Sharkey    void setPermissionsResult(int sessionId, boolean accepted);
503a44f3f1b446315ef894e01d2ab9b5388c2bd8c4Jeff Sharkey}
51