I agree in regards to a better software update process. I don't know how much the abstraction could be improved, since the diversity makes some things impossible to abstract. I should clarify I'm talking from a perspective of developing apps, not games (simple apps at that, as I started learning Android slightly more than half a year ago), so I haven't encountered the really difficult development issues that games developers stumble upon so often. What I have learned so far, however, has helped me plan out each project better. What in the beginning seemed an issue that will double the amount of work (and maybe even was so on the first project), ended up being solved with maybe 5 to 10% more effort and thought on the second project.
Yes, either way you look at it, it is more work, but with experience it has become more or less marginal for me. Although it could also be that once you accept something as unchangeable fact, you adapt expectations and it no longer represents a source of frustration :). Who knows!
Edit: Reading my post, I realised how ridiculous my claim of experience is based on working on Android for less than a year, especially without any other previous programming experience, but I hope it's still clear what I mean.
Yes, either way you look at it, it is more work, but with experience it has become more or less marginal for me. Although it could also be that once you accept something as unchangeable fact, you adapt expectations and it no longer represents a source of frustration :). Who knows!
Edit: Reading my post, I realised how ridiculous my claim of experience is based on working on Android for less than a year, especially without any other previous programming experience, but I hope it's still clear what I mean.