I'm looking into learning more about the Android framework and I would also like to understand what issues small development teams (< 10 people) for Android based phones are likely to run into (i.e. porting to other platforms, inadequate security testing, or just anything across the software development lifecycle that poses difficulties).
Any feedback or links to external resources considering this topic would be much appreciated.
Thanks
It can make it challenging to develop and test apps for all Android devices. Another disadvantage of Android development is that Google Play, the main app store for Android apps, is not as well organized or as easy to use as other app stores such as Apple's App Store or Amazon Appstore.
Your question is rather vague and open-ended with aspects that don't necessarily apply to Android but rather app development in general. However there is one tip I can give you that makes team development easier on Android: share a single debug keystore.
Before you can run an app on a phone, you have to sign that app with a keystore. When you're developing an Android app on your own in Eclipse, the plugin makes this part easy. It generates a debug keystore for you and signs it automatically when you build, so you never have to think about this part of the process. However, if you're collaborating with others a few issues come up if you're all using different keystores:
You can't upgrade each other's APKs on top of each other; you'll have to do a full uninstall/reinstall.
You will run into painful things with code that depends on keystore signatures (such as the Google Maps key, if you ever use that).
You'll have to sign your release code with a different keystore; you may get which apks are release and which are debug mixed up if you're signing with a boatload of different keystores.
Luckily there's an option to specify a debug keystore for Android to use, in Eclispe --> Preferences --> Android --> Build. Every team member should use the same keystore. The easiest way to make a debug keystore is to just copy one that Eclipse automatically creates. Alternatively you can make your own, using these guidelines.
This is common sense for some, but not for others. Make sure ALL team members document changes they made so you aren't wasting your time figuring it out yourself before you can advance further.
I had some team members who had trouble grasping that concept =p
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With