Hi,

While not a phone device vendor I will state a few problem we had.

On Sunday, February 5, 2012 9:19:56 PM UTC+1, Artemy Makarov wrote:
>
> 1) Why is it so hard to port new versions of android to existing devices? 
> Why does it takes so long for vendors to release new versions of software 
> for existing devices, not in terms of marketing and sales, but in terms of 
> effort on porting?
>
Between the 2.x series and ICS there is like 2 years of development many, 
if not all, existing internal interfaces where changed. 

The code size of Android is huge and during development files are moved 
around (sometimes to different repositories). So updating the platform 
results in HUGE diffs and those are not easily processed by human.

Understanding the Android repo tool and the 160+ git repositories with all 
branches  is a complex task. It is not easy to rely on those to perform 
upgrades.
My experience is that the Android internals are so undocumented that is 
takes vendors very long to in the first place implement features. by the 
time an update comes (with improved API's) they need to redo their work.

Overall in my experience just creating a rootfs that boots is not that 
hard. it is the rest of the stuff / changes made by vendors that are hard 
to port.

changes I encountered:

* vold changes  (e.g. support for mounting multiple devices)
* changes to the init system (e.g. proper dynamic device creation. that 
previously required hacks)
* changes to the build system (using different compiler , and TAGS)
* changes to the input system (from Java to native)

But generally. new releases come with a lot of good stuff and the amount of 
work needed to rebase the changes is big.

3) Why can't we just replace apps from in older build with never versions 
> and get working system?
>
Some changes implemented in Android during that development time has effect 
on different packages. just upgrading a single component
usually does not work. At best it breaks CTS compatibility.
 

> 4) What is bootloader? How does it work?
>
> 5) Where are all the drivers? In the kernel?
>
> 6) What do we need to get android working on new device? What do we need 
> to make new version of android work on unsupported device?
>
> That may all sound a bit silly and profane, but all that stuff warms my my 
> pioneer spirit. I want to know more :)
>
> Thanks in advance for all of you.
>

While playing on a TI base platform  you encounter stuff like the need to 
upgrade the 3d drivers. those are the typical show stoppers.


-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting

Reply via email to