top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

Native code linking for Package Manager in Android

+3 votes
359 views

I've been trying to figure out how an android app is installed by browsing AOSP.

The PackageManagerService.java has the gids for the corresponding permissions by parsing the platform.xml file.

PackageInstallerActivity parses and checks for any existing packages and then invokes the InstallAppProgress

I was able to follow the paths where the package is parsed and validated and PackagerManager.installPackage() method is invoked to install the package. I know this makes a native call to the JNI library. The corresponding aidl file is IPackageManager.aidl.

What I want to know is where can I find the Native cpp code related to this aidl mentioned above?

posted Feb 21, 2014 by Sanketi Garg

Looking for an answer?  Promote on:
Facebook Share Button Twitter Share Button LinkedIn Share Button

Similar Questions
0 votes

I'm looking for native library for video play with custom buffering for rendering of big video files (500MB+) in android application. What is the best options?

+1 vote

Suppose I have two apps which are using location service.

Inside the service manager I want to identify these calls separately for these apps, such as I can say that this call is for ProcessX and that call is for ProcessY. How would I do it?

0 votes

Can anyone suggest the library for Push Notification?

0 votes

Update is installed but status is in pending on App Center. Since sync is alreday called , it won't rollback automatically and also not updating to newer version. The app crashes on startup everytime.

So how to rollback or update to new code push bundle version in this case ?

Here is the sample code:

componentDidMount() { 
codePush.sync(codePushOptions,(status) => {  
switch (status) {    
case codePush.SyncStatus.CHECKING_FOR_UPDATE:
//console.log("Checking for updates.");
break;  
case codePush.SyncStatus.DOWNLOADING_PACKAGE:
//console.log("Downloading package.");
break;   
case codePush.SyncStatus.INSTALLING_UPDATE:
//console.log("Installing update.");
break;  
case codePush.SyncStatus.UP_TO_DATE:
break;  
case codePush.SyncStatus.UPDATE_INSTALLED:         
break;
}
})
throw new Error();
}

Note : I have thrown error to check working of auto rollback.

...