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.os; 18 19 /** {@hide} */ 20 interface IInstalld { createUserData(@ullable @tf8InCpp String uuid, int userId, int userSerial, int flags)21 void createUserData(@nullable @utf8InCpp String uuid, int userId, int userSerial, int flags); destroyUserData(@ullable @tf8InCpp String uuid, int userId, int flags)22 void destroyUserData(@nullable @utf8InCpp String uuid, int userId, int flags); 23 createAppData(@ullable @tf8InCpp String uuid, in @utf8InCpp String packageName, int userId, int flags, int appId, in @utf8InCpp String seInfo, int targetSdkVersion)24 long createAppData(@nullable @utf8InCpp String uuid, in @utf8InCpp String packageName, 25 int userId, int flags, int appId, in @utf8InCpp String seInfo, int targetSdkVersion); restoreconAppData(@ullable @tf8InCpp String uuid, @utf8InCpp String packageName, int userId, int flags, int appId, @utf8InCpp String seInfo)26 void restoreconAppData(@nullable @utf8InCpp String uuid, @utf8InCpp String packageName, 27 int userId, int flags, int appId, @utf8InCpp String seInfo); migrateAppData(@ullable @tf8InCpp String uuid, @utf8InCpp String packageName, int userId, int flags)28 void migrateAppData(@nullable @utf8InCpp String uuid, @utf8InCpp String packageName, 29 int userId, int flags); clearAppData(@ullable @tf8InCpp String uuid, @utf8InCpp String packageName, int userId, int flags, long ceDataInode)30 void clearAppData(@nullable @utf8InCpp String uuid, @utf8InCpp String packageName, 31 int userId, int flags, long ceDataInode); destroyAppData(@ullable @tf8InCpp String uuid, @utf8InCpp String packageName, int userId, int flags, long ceDataInode)32 void destroyAppData(@nullable @utf8InCpp String uuid, @utf8InCpp String packageName, 33 int userId, int flags, long ceDataInode); 34 fixupAppData(@ullable @tf8InCpp String uuid, int flags)35 void fixupAppData(@nullable @utf8InCpp String uuid, int flags); 36 getAppSize(@ullable @tf8InCpp String uuid, in @utf8InCpp String[] packageNames, int userId, int flags, int appId, in long[] ceDataInodes, in @utf8InCpp String[] codePaths)37 long[] getAppSize(@nullable @utf8InCpp String uuid, in @utf8InCpp String[] packageNames, 38 int userId, int flags, int appId, in long[] ceDataInodes, 39 in @utf8InCpp String[] codePaths); getUserSize(@ullable @tf8InCpp String uuid, int userId, int flags, in int[] appIds)40 long[] getUserSize(@nullable @utf8InCpp String uuid, int userId, int flags, in int[] appIds); getExternalSize(@ullable @tf8InCpp String uuid, int userId, int flags, in int[] appIds)41 long[] getExternalSize(@nullable @utf8InCpp String uuid, int userId, int flags, in int[] appIds); 42 setAppQuota(@ullable @tf8InCpp String uuid, int userId, int appId, long cacheQuota)43 void setAppQuota(@nullable @utf8InCpp String uuid, int userId, int appId, long cacheQuota); 44 moveCompleteApp(@ullable @tf8InCpp String fromUuid, @nullable @utf8InCpp String toUuid, @utf8InCpp String packageName, @utf8InCpp String dataAppName, int appId, @utf8InCpp String seInfo, int targetSdkVersion)45 void moveCompleteApp(@nullable @utf8InCpp String fromUuid, @nullable @utf8InCpp String toUuid, 46 @utf8InCpp String packageName, @utf8InCpp String dataAppName, int appId, 47 @utf8InCpp String seInfo, int targetSdkVersion); 48 dexopt(@tf8InCpp String apkPath, int uid, @nullable @utf8InCpp String packageName, @utf8InCpp String instructionSet, int dexoptNeeded, @nullable @utf8InCpp String outputPath, int dexFlags, @utf8InCpp String compilerFilter, @nullable @utf8InCpp String uuid, @nullable @utf8InCpp String sharedLibraries, @nullable @utf8InCpp String seInfo, boolean downgrade)49 void dexopt(@utf8InCpp String apkPath, int uid, @nullable @utf8InCpp String packageName, 50 @utf8InCpp String instructionSet, int dexoptNeeded, 51 @nullable @utf8InCpp String outputPath, int dexFlags, 52 @utf8InCpp String compilerFilter, @nullable @utf8InCpp String uuid, 53 @nullable @utf8InCpp String sharedLibraries, 54 @nullable @utf8InCpp String seInfo, boolean downgrade); 55 rmdex(@tf8InCpp String codePath, @utf8InCpp String instructionSet)56 void rmdex(@utf8InCpp String codePath, @utf8InCpp String instructionSet); 57 mergeProfiles(int uid, @utf8InCpp String packageName)58 boolean mergeProfiles(int uid, @utf8InCpp String packageName); dumpProfiles(int uid, @utf8InCpp String packageName, @utf8InCpp String codePaths)59 boolean dumpProfiles(int uid, @utf8InCpp String packageName, @utf8InCpp String codePaths); copySystemProfile(@tf8InCpp String systemProfile, int uid, @utf8InCpp String packageName)60 boolean copySystemProfile(@utf8InCpp String systemProfile, int uid, 61 @utf8InCpp String packageName); clearAppProfiles(@tf8InCpp String packageName)62 void clearAppProfiles(@utf8InCpp String packageName); destroyAppProfiles(@tf8InCpp String packageName)63 void destroyAppProfiles(@utf8InCpp String packageName); 64 idmap(@tf8InCpp String targetApkPath, @utf8InCpp String overlayApkPath, int uid)65 void idmap(@utf8InCpp String targetApkPath, @utf8InCpp String overlayApkPath, int uid); removeIdmap(@tf8InCpp String overlayApkPath)66 void removeIdmap(@utf8InCpp String overlayApkPath); rmPackageDir(@tf8InCpp String packageDir)67 void rmPackageDir(@utf8InCpp String packageDir); markBootComplete(@tf8InCpp String instructionSet)68 void markBootComplete(@utf8InCpp String instructionSet); freeCache(@ullable @tf8InCpp String uuid, long targetFreeBytes, long cacheReservedBytes, int flags)69 void freeCache(@nullable @utf8InCpp String uuid, long targetFreeBytes, 70 long cacheReservedBytes, int flags); linkNativeLibraryDirectory(@ullable @tf8InCpp String uuid, @utf8InCpp String packageName, @utf8InCpp String nativeLibPath32, int userId)71 void linkNativeLibraryDirectory(@nullable @utf8InCpp String uuid, 72 @utf8InCpp String packageName, @utf8InCpp String nativeLibPath32, int userId); createOatDir(@tf8InCpp String oatDir, @utf8InCpp String instructionSet)73 void createOatDir(@utf8InCpp String oatDir, @utf8InCpp String instructionSet); linkFile(@tf8InCpp String relativePath, @utf8InCpp String fromBase, @utf8InCpp String toBase)74 void linkFile(@utf8InCpp String relativePath, @utf8InCpp String fromBase, 75 @utf8InCpp String toBase); moveAb(@tf8InCpp String apkPath, @utf8InCpp String instructionSet, @utf8InCpp String outputPath)76 void moveAb(@utf8InCpp String apkPath, @utf8InCpp String instructionSet, 77 @utf8InCpp String outputPath); deleteOdex(@tf8InCpp String apkPath, @utf8InCpp String instructionSet, @nullable @utf8InCpp String outputPath)78 void deleteOdex(@utf8InCpp String apkPath, @utf8InCpp String instructionSet, 79 @nullable @utf8InCpp String outputPath); 80 reconcileSecondaryDexFile(@tf8InCpp String dexPath, @utf8InCpp String pkgName, int uid, in @utf8InCpp String[] isas, @nullable @utf8InCpp String volume_uuid, int storage_flag)81 boolean reconcileSecondaryDexFile(@utf8InCpp String dexPath, @utf8InCpp String pkgName, 82 int uid, in @utf8InCpp String[] isas, @nullable @utf8InCpp String volume_uuid, 83 int storage_flag); 84 invalidateMounts()85 void invalidateMounts(); isQuotaSupported(@ullable @tf8InCpp String uuid)86 boolean isQuotaSupported(@nullable @utf8InCpp String uuid); 87 } 88