List: open issues, all issues Report: new issue
31
Download and install in background
Improvement
Won't Fix
March 11th, 2011 @ 10:51 am
jadahl
A feature I've been missing is to download and install/upgrade in the background. This way when there are more than two upgrades available I won't have to wait for the first one to finish until I start the next one.
6 comments
Login to comment


I don't think the actual installation can be done in the background - the final confirmation dialog you see is always displayed by the system. Market can do it because Google have given themselves special privileges.
We could presumably do it somehow on rooted phones, but mine isn't and I don't know much about it.
The download is technically already done in the background, so we would just have to change it to run several of those threads in parallell ("...and now you have *two* problems"). It would probably be easier to support it only on Gingerbread:
http://developer.android.com/reference/android/app/DownloadManager.html
In case a the repository client runs on a rooted device, one would need to present the required permission before a download-and-install procedure would proceed. Does the repository contain such information, or is not available until the install screen comes up?
Yeah, that information is in the repository index. I made it visible in the confirmation dialog (see commit 08816e4) before I realized the whole dialog was unnecessary and removed it (commit 7ae24e2).
If we ever implement som fancier installation procedure on rooted phones we will have to reimplement that dialog properly.
By the way, the permission that's needed is android.permission.INSTALL_PACKAGES, but it will only be granted if the application is signed with the phone manufacturer's key. (On a rooted phone with FOSS firmware, I suppose manufacturer's key is the user's key, but I don't know how we would go about it in practice.)
I agree that installation should not be done in the background. (Especially given that CyanogenMod now adds the ability to select and revoke specific permissions at installation time: see for the change.)
I agree that installation should not be done in the background. (Especially given that CyanogenMod now adds the ability to select and revoke specific permissions at installation time: see http://review.cyanogenmod.com/#change,4055 for the change.)
Status Assigned > Won't Fix
To even think about being able to do this we would have to a) only do it on rooted devices, and b) possibly have a different implemention per android version.