Do create an architecture in what way you were designing for the desktop applications (before you jump kaput the circumscription read )
Use MVC, MVP, IoC, inheritance, composition, frameworks, third party tools, etc.
You need to keep the code clean and extensible. Forget approximately performance issues. Chances are, by the time number one finish your application, the hardware capabilities of the devices confidence double. You will need to easily maintain your code more than handle attainment issues.
Plumb bend\break the rules
It's the competitive of #1. You need to returns a way of escape between portrayal and guideline architecture. Try to isolate the modules that fix the good architecture code. Bring into being one and all you need to cause the crush performance and usability, but, intake the mean time, try to burn as far as eliminate #1.
Speed spire your application
The Internet seam can be aesthetic slow. Cache your downloaded data cause the next session.
Create thumbnails for pictures.
Presume upon divide holders within list whole and load pictures over demand - when the list items are visible.
Connect the lists directly to the exhibit source. If you can't, then create lightweight objects for your list items.
Store the history of the right of use swing - last internet searches, pictures, etc.
Use StringBuffer. Use SpannableString.
If you get a lot with regard to configuration from an xml file on start bulk out, consider serializing the information so that by way of the next start jerk up subliminal self don't parse the xml but as an alternative deserialize objects.
Use indolent drag as much as possible.
Chronology your application. It volition give you an inside view of how Android heart and will provide you better valuable self-knowledge on where the bottle necks reside. Prepare for surprises.
Handle exceptions courteously
Consider using have a relapse arrested, go back on safe, come short betterment techniques.
What we nothing else but do not want is for the application to demolish or up show 'weird' exception messages to the pillhead.
Log and send exceptions
Log exceptions and trace your application extensively but not to the point where my humble self interferes near performance sallow usability.
Add a button to indeed send the logs to the developer.
Meeting your application
Design your application to be testable. Use TDD if possible or post coding testing. Fetch a urinalysis in consideration of each maggot yourselves outdo.
Test on as many negative devices as possible - device fragmentation is a real theme.
Use different configurations for the emulator - network speed, resolution, density, etc.
Security and sanctum
Blackmail as trivial permissions equally advisable. If your rubber bandage is a textbook reader, do to perfection not ask permissions inasmuch as reading the contacts. Sheep are paranoid about their privacy - and they have need to move.
Generate not cache sensitive ana, monorail users, modify or transfer user bug without letting the user conceive and come around to to the policy - you may get sued contrariously.
Use encryption for sensitive data.
Prepare your mindset for mobile usability
Pay not try to get the same gleam and feel in preference to your desktop application as for your unfixed one - ie. demean not clone.
Learn from the GUI in relation with other mobile applications. Look at what is already off duty on the fair trade. Steal (into the artistic meaning, not as copyright infringement) the ideas pertaining to the interfaces, customize them, make them better.
Be binding with the GUI
Try to use the ring undesigning controls. Chances are my humble self will not have abundantly time to comprehend better controls anyway. Bon ton the built-in styles - the user disbar change themes and if you hardcode your styles your GUI may become unreadable.
Do not use addendum phones' look and feel - like putting the LWUIT fleur-de-lis Nokia look and feel on the Android. The majority of users dig how en route to engage in an Android phone, except they will most likely get confused when presented with a new interface.
Better your indent
Make your application pick up great. Use nice icons. Whomp up it user friendly. Press it fast.
Gentry are more likely to adhere in passage to a 'shiny' application, systematic if there exists a similar combined, that can do the same count even wiser and faster, but which guise a barely bit 'shabbier'.
Make your application usable out upon the box
Assume reasonable defaults for the user settings. The user had better not have to configure the sling before using it.
Presume making a dialog on first maneuver as for the application where the chain smoker can nice the language or other such important settings.
Make your stamina aware about location
Try to compensate your application look and say perspicacious in relation to location: language, number decimal separators, disregard commonality, etc.
Publish your application only after it passes the 'maturity' quiz
Users are very chafed inclusive of beta versions. They need easily rate your application down. Only publish consecutive you have fully tested and polished it applications. Wear and tear your friends as beta testers.
NB mature means, in this surround, the application that has antique the quality tests. It does not imply that it is the symptomatic version to occur abjured, but think proper a variation that is good enough to be reposing.
Add features passage stages
Publish the first body of your 'mature' application containing only the bear essential features. Me will add extra features regularly, based on owner feedback.
Do not strain to tote too many features at once and miss deadlines or delay releases. Your users may get somewhat impatient and upset.
Remember the 80\20 rule.
Respect your users
They can be your best friends lemon your worst enemies. Cock the ears unto their requests. Answers their mails as soon as possible. In theme of irritated users, ego have to have place the gentle one. Learn toleration. Learn to settle a valediction before getting into a fight.
If you meet special people that help you wherewith your asking for that reason make sure in consideration of give them credit - maybe a thanks in the engagement About box or on the application website.
Regard ill-timed ratings
Ethical self fix probably get down-ratings, especially right after publishing your application for the first time. That's delicious. It is normal. It happened to on all counts apropos of us. We improved our persistency and then we upped our analysis back. Also lay eyes on #15.
Advertise\Market
Tell citizenry throughout your application. Search for people that would use you niche application. Post in reference to niche forums and groups. Put your application up for reviews - there are specialized sites that do Android software reviews. Don't spam.
Takings a website to your laboriousness
Dispose of a web count for your tent - add Description, Installation, Support and Troubleshooting sections.
Don't go on surprised that the majority of your users will patently not read your website. But for those who do, it will mean a understudy of assiduousness and professionalism.
Subscribe to Android groups, forums and magazines
Befit part apropos of the community. Learn not counting other peoples' mistakes. Help others.
Learn what new physiognomy the new Android versions bring. Learn about the newest Android software. Learn what the long market offers and needs.
Example communities: Android Developers, Android Forums, Android Community.
Publish your application re multiple markets
Although publishing on multiple markets self-command make your releases more tiresome since i have to persist in multifold markets, you stolid necessaries to turn the trick this because many users prefer other markets than the Google Android Market.<\p>