-
class PackageManagerService extends IPackageManager.Stub {
- ......
-
-
public PackageManagerService(Context context, boolean factoryTest) {
- ......
-
-
synchronized (mInstallLock) {
-
synchronized (mPackages) {
- ......
-
- File dataDir = Environment.getDataDirectory();
-
mAppDataDir = new File(dataDir, "data");
-
mSecureAppDataDir = new File(dataDir, "secure/data");
-
mDrmAppPrivateInstallDir = new File(dataDir, "app-private");
-
- ......
-
-
mFrameworkDir = new File(Environment.getRootDirectory(), "framework");
-
mDalvikCacheDir = new File(dataDir, "dalvik-cache");
-
- ......
-
-
-
mFrameworkInstallObserver = new AppDirObserver(
-
mFrameworkDir.getPath(), OBSERVER_EVENTS, true);
- mFrameworkInstallObserver.startWatching();
- scanDirLI(mFrameworkDir, PackageParser.PARSE_IS_SYSTEM
- | PackageParser.PARSE_IS_SYSTEM_DIR,
-
scanMode | SCAN_NO_DEX, 0);
-
-
-
mSystemAppDir = new File(Environment.getRootDirectory(), "app");
-
mSystemInstallObserver = new AppDirObserver(
-
mSystemAppDir.getPath(), OBSERVER_EVENTS, true);
- mSystemInstallObserver.startWatching();
- scanDirLI(mSystemAppDir, PackageParser.PARSE_IS_SYSTEM
-
| PackageParser.PARSE_IS_SYSTEM_DIR, scanMode, 0);
-
-
-
mVendorAppDir = new File("/vendor/app");
-
mVendorInstallObserver = new AppDirObserver(
-
mVendorAppDir.getPath(), OBSERVER_EVENTS, true);
- mVendorInstallObserver.startWatching();
- scanDirLI(mVendorAppDir, PackageParser.PARSE_IS_SYSTEM
-
| PackageParser.PARSE_IS_SYSTEM_DIR, scanMode, 0);
-
-
-
mAppInstallObserver = new AppDirObserver(
-
mAppInstallDir.getPath(), OBSERVER_EVENTS, false);
- mAppInstallObserver.startWatching();
-
scanDirLI(mAppInstallDir, 0, scanMode, 0);
-
-
mDrmAppInstallObserver = new AppDirObserver(
-
mDrmAppPrivateInstallDir.getPath(), OBSERVER_EVENTS, false);
- mDrmAppInstallObserver.startWatching();
- scanDirLI(mDrmAppPrivateInstallDir, PackageParser.PARSE_FORWARD_LOCK,
-
scanMode, 0);
-
- ......
- }
- }
- }
-
- ......
- }