Loading core/java/android/content/pm/PackageParser.java +26 −9 Original line number Diff line number Diff line Loading @@ -92,6 +92,7 @@ public class PackageParser { private String mArchiveSourcePath; private String[] mSeparateProcesses; private boolean mOnlyCoreApps; private static final int SDK_VERSION = Build.VERSION.SDK_INT; private static final String SDK_CODENAME = "REL".equals(Build.VERSION.CODENAME) ? null : Build.VERSION.CODENAME; Loading Loading @@ -180,6 +181,10 @@ public class PackageParser { mSeparateProcesses = procs; } public void setOnlyCoreApps(boolean onlyCoreApps) { mOnlyCoreApps = onlyCoreApps; } private static final boolean isPackageFilename(String name) { return name.endsWith(".apk"); } Loading Loading @@ -433,6 +438,9 @@ public class PackageParser { if (pkg == null) { // If we are only parsing core apps, then a null with INSTALL_SUCCEEDED // just means to skip this app so don't make a fuss about it. if (!mOnlyCoreApps || mParseError != PackageManager.INSTALL_SUCCEEDED) { if (errorException != null) { Slog.w(TAG, mArchiveSourcePath, errorException); } else { Loading @@ -440,11 +448,12 @@ public class PackageParser { + parser.getPositionDescription() + "): " + errorText[0]); } parser.close(); assmgr.close(); if (mParseError == PackageManager.INSTALL_SUCCEEDED) { mParseError = PackageManager.INSTALL_PARSE_FAILED_MANIFEST_MALFORMED; } } parser.close(); assmgr.close(); return null; } Loading Loading @@ -782,6 +791,14 @@ public class PackageParser { } int type; if (mOnlyCoreApps) { boolean core = attrs.getAttributeBooleanValue(null, "coreApp", false); if (!core) { mParseError = PackageManager.INSTALL_SUCCEEDED; return null; } } final Package pkg = new Package(pkgName); boolean foundApp = false; Loading core/res/AndroidManifest.xml +1 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ */ --> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android" android:sharedUserId="android.uid.system" package="android" coreApp="true" android:sharedUserId="android.uid.system" android:sharedUserLabel="@string/android_system_label"> <!-- ================================================ --> Loading packages/DefaultContainerService/AndroidManifest.xml +1 −1 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.defcontainer"> package="com.android.defcontainer" coreApp="true"> <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/> <uses-permission android:name="android.permission.ACCESS_ALL_DOWNLOADS"/> <uses-permission android:name="android.permission.ASEC_ACCESS"/> Loading packages/SettingsProvider/AndroidManifest.xml +1 −0 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.providers.settings" coreApp="true" android:sharedUserId="android.uid.system"> <application android:allowClearUserData="false" Loading packages/SystemUI/AndroidManifest.xml +1 −0 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.systemui" coreApp="true" android:sharedUserId="android.uid.system" android:process="system" > Loading Loading
core/java/android/content/pm/PackageParser.java +26 −9 Original line number Diff line number Diff line Loading @@ -92,6 +92,7 @@ public class PackageParser { private String mArchiveSourcePath; private String[] mSeparateProcesses; private boolean mOnlyCoreApps; private static final int SDK_VERSION = Build.VERSION.SDK_INT; private static final String SDK_CODENAME = "REL".equals(Build.VERSION.CODENAME) ? null : Build.VERSION.CODENAME; Loading Loading @@ -180,6 +181,10 @@ public class PackageParser { mSeparateProcesses = procs; } public void setOnlyCoreApps(boolean onlyCoreApps) { mOnlyCoreApps = onlyCoreApps; } private static final boolean isPackageFilename(String name) { return name.endsWith(".apk"); } Loading Loading @@ -433,6 +438,9 @@ public class PackageParser { if (pkg == null) { // If we are only parsing core apps, then a null with INSTALL_SUCCEEDED // just means to skip this app so don't make a fuss about it. if (!mOnlyCoreApps || mParseError != PackageManager.INSTALL_SUCCEEDED) { if (errorException != null) { Slog.w(TAG, mArchiveSourcePath, errorException); } else { Loading @@ -440,11 +448,12 @@ public class PackageParser { + parser.getPositionDescription() + "): " + errorText[0]); } parser.close(); assmgr.close(); if (mParseError == PackageManager.INSTALL_SUCCEEDED) { mParseError = PackageManager.INSTALL_PARSE_FAILED_MANIFEST_MALFORMED; } } parser.close(); assmgr.close(); return null; } Loading Loading @@ -782,6 +791,14 @@ public class PackageParser { } int type; if (mOnlyCoreApps) { boolean core = attrs.getAttributeBooleanValue(null, "coreApp", false); if (!core) { mParseError = PackageManager.INSTALL_SUCCEEDED; return null; } } final Package pkg = new Package(pkgName); boolean foundApp = false; Loading
core/res/AndroidManifest.xml +1 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ */ --> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="android" android:sharedUserId="android.uid.system" package="android" coreApp="true" android:sharedUserId="android.uid.system" android:sharedUserLabel="@string/android_system_label"> <!-- ================================================ --> Loading
packages/DefaultContainerService/AndroidManifest.xml +1 −1 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.defcontainer"> package="com.android.defcontainer" coreApp="true"> <uses-permission android:name="android.permission.ACCESS_DOWNLOAD_MANAGER"/> <uses-permission android:name="android.permission.ACCESS_ALL_DOWNLOADS"/> <uses-permission android:name="android.permission.ASEC_ACCESS"/> Loading
packages/SettingsProvider/AndroidManifest.xml +1 −0 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.providers.settings" coreApp="true" android:sharedUserId="android.uid.system"> <application android:allowClearUserData="false" Loading
packages/SystemUI/AndroidManifest.xml +1 −0 Original line number Diff line number Diff line <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.android.systemui" coreApp="true" android:sharedUserId="android.uid.system" android:process="system" > Loading