OTA upgrade

1,541 views
Skip to first unread message

JP Semery

unread,
Feb 23, 2012, 5:18:09 PM2/23/12
to android-platform
Hi All

I'm trying to find information on how the OTA upgrade works. I'm
talking about system upgrades and not app upgrades.
We have an Android "flavour" system that runs on Nexus S and other
devices in the future and need to regularly push updates.
I have searched and searched for information on this and it seems that
this is one of the most guarded secrets. searching the code did not
yield much results. I may be looking for the wrong thing in the wrong
place
I would like to know what is the general process / architecture
involved in OTA upgrades
Basically my question is: How does it work?

Any information / help / direction is greatly appreciated.

Thanks

Jean-Pierre

freakingtux

unread,
Feb 24, 2012, 2:06:14 AM2/24/12
to android-...@googlegroups.com
Hello Jean-Pierre,


On Thursday, February 23, 2012 11:18:09 PM UTC+1, JP Semery wrote:
Hi All

I'm trying to find information on how the OTA upgrade works. I'm
talking about system upgrades and not app upgrades.
I would like to know what is the general process / architecture
involved in OTA upgrades
Basically my question is: How does it work?

Any information / help / direction is greatly appreciated.

I don't know either how it works but I think I might have a few pointers. that might help.
The flashing process itself is done using an alternative partition to boot from see 


OTA images probably are created using build/tools/releasetools/ota_from_target_files script . The source code for the recovery can be found here bootable/recovery/updater/ and when the system is running there are binaries that to stuff around updates for example the btool. There is also  probably a relation between OTA updates and the fastboot tool out/host/linux-x86/bin/fastboot .


I hope this helps a little to 
Greetings

Stephen Smalley

unread,
Feb 24, 2012, 8:16:40 AM2/24/12
to android-...@googlegroups.com

This talk from the 2012 Android Builders Summit provided a good
description of the architecture:
https://events.linuxfoundation.org/images/stories/pdf/lf_abs12_boie.pdf | Slides
http://video.linux.com/videos/android-ota-software-updates | Video

--
Stephen Smalley
National Security Agency

dpsm

unread,
Feb 24, 2012, 10:37:41 AM2/24/12
to android-...@googlegroups.com
Hello JP,

Look at the bootable/recovery/ folder within your android source base folder. I'll try to describe the update infrastructure in a nutshell:

1 - The infrastructure for installation of upgrades is open-sourced and ready to use (the updates are ZIP files generated by the build system);
2 - You need to implement your own system application to interact with your update infrastructure (web server) and download the ZIP file into the device and reboot into recovery;

Your app resolves the update file from your server -> downloads -> triggers the reboot in recovery -> the already available code installs the update.

If you want to discuss more details please email me.

Hope it helps,

David

shridutt kothari

unread,
Aug 11, 2013, 3:02:27 AM8/11/13
to android-...@googlegroups.com
the command to build the OTA is 
make otapackage

On Saturday, March 30, 2013 4:29:42 AM UTC+5:30, Praveen Krishnan wrote:
Hi David
How exactly are the update.zip files generated by the system?

Thanks!
Praveen

shridutt kothari

unread,
Aug 11, 2013, 4:42:16 AM8/11/13
to android-...@googlegroups.com
Hi Stephen,

the link you mentioned : http://video.linux.com/videos/android-ota-software-updates
needs some credentials, other than login credentials of that website, as i had logged in on the hosted website but still it says to watch video i need to give user name and password and also the my same credentials of that website dont work there.

please let me know how can i watch the mentioned video???

waiting for you reply. 

sherin

unread,
Nov 12, 2014, 11:54:03 AM11/12/14
to android-...@googlegroups.com
Hi David,

I need a help on understanding OTA feature present (?) in AOSP. 
 
In my understanding,
AOSP code doesn't have the option by default for "software updates" (Settings->About Phone-> Software updates);

if we add the activity: then the option becomes visible. Im my case, I added a dummy activity. 
my question is , AOSP doesn't support this part by default ? is it vendors' responsibility to write that activity/service etc?

thanks in advance. 


##################################################################

--- a/res/xml/device_info_settings.xml

+++ b/res/xml/device_info_settings.xml

@@ -21,10 +21,11 @@

         <PreferenceScreen android:key="system_update_settings"

                 android:title="@string/system_update_settings_list_item_title"

                 android:summary="@string/system_update_settings_list_item_summary">

-            <intent android:action="android.settings.SYSTEM_UPDATE_SETTINGS" />

+            <intent android:action="android.settings.SYSTEM_UPDATE_SETTINGS"

+                    android:targetPackage="com.android.settings"

+                    android:targetClass="com.android.settings.OTADummyUpdaterActivity" />

         </PreferenceScreen>

################################################################## 


Reply all
Reply to author
Forward
0 new messages