Loading cmds/statsd/src/atoms.proto +2 −0 Original line number Diff line number Diff line Loading @@ -9344,6 +9344,8 @@ message PackageInstallerV2Reported { // Return_code 1 indicates success. // For full list, see frameworks/base/core/java/android/content/pm/PackageManager.java optional int32 return_code = 4; // Total size of the APKs installed for this package optional int64 apks_size_bytes = 5; } /** Loading services/core/java/com/android/server/pm/PackageInstallerSession.java +27 −1 Original line number Diff line number Diff line Loading @@ -1858,7 +1858,33 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { isIncrementalInstallation(), packageNameToLog, currentTimestamp - createdMillis, returnCode); returnCode, getApksSize()); } private long getApksSize() { final PackageSetting ps = mPm.getPackageSetting(mPackageName); if (ps == null) { return 0; } final File apkDirOrPath = ps.codePath; if (apkDirOrPath == null) { return 0; } if (apkDirOrPath.isFile() && apkDirOrPath.getName().toLowerCase().endsWith(".apk")) { return apkDirOrPath.length(); } if (!apkDirOrPath.isDirectory()) { return 0; } final File[] files = apkDirOrPath.listFiles(); long apksSize = 0; for (int i = 0; i < files.length; i++) { if (files[i].getName().toLowerCase().endsWith(".apk")) { apksSize += files[i].length(); } } return apksSize; } /** Loading Loading
cmds/statsd/src/atoms.proto +2 −0 Original line number Diff line number Diff line Loading @@ -9344,6 +9344,8 @@ message PackageInstallerV2Reported { // Return_code 1 indicates success. // For full list, see frameworks/base/core/java/android/content/pm/PackageManager.java optional int32 return_code = 4; // Total size of the APKs installed for this package optional int64 apks_size_bytes = 5; } /** Loading
services/core/java/com/android/server/pm/PackageInstallerSession.java +27 −1 Original line number Diff line number Diff line Loading @@ -1858,7 +1858,33 @@ public class PackageInstallerSession extends IPackageInstallerSession.Stub { isIncrementalInstallation(), packageNameToLog, currentTimestamp - createdMillis, returnCode); returnCode, getApksSize()); } private long getApksSize() { final PackageSetting ps = mPm.getPackageSetting(mPackageName); if (ps == null) { return 0; } final File apkDirOrPath = ps.codePath; if (apkDirOrPath == null) { return 0; } if (apkDirOrPath.isFile() && apkDirOrPath.getName().toLowerCase().endsWith(".apk")) { return apkDirOrPath.length(); } if (!apkDirOrPath.isDirectory()) { return 0; } final File[] files = apkDirOrPath.listFiles(); long apksSize = 0; for (int i = 0; i < files.length; i++) { if (files[i].getName().toLowerCase().endsWith(".apk")) { apksSize += files[i].length(); } } return apksSize; } /** Loading