presentation by Samrakhchan Ghimire
Make sure of the features to be included in the application. It is good idea to write down all the features and make a check-list of features you want in your application and plan accordingly. Some features available on other platforms like web and desktop environment may have to be sacrificed while planning for android but there are lots of features that are unique to android. It is always good idea to look into those special features and implement those.
While preparing for application always set a deadline and work accordingly. December 1 in Ncell App Camp is quite near and make sure of yourself and features presentable in short time.
While programming in android it is better to focus more on self business model and use 3rd party API that are already available to do the job you want. Many API are free and open source and do the jobs we want much efficiently. Consider looking into available API before trying to create something totally from scratch.
Keep Apps Responsive and Inform About Necessary Wait
We all get annoyed when the device hangs or freezes for a long period of time. And you have probably seen the “Application Not Responding” (ANR) dialog on some Android devices and apps simply come to a stop without responding to any input. This happens when an app blocks on some I/O operation on the UI thread so the system cannot process incoming user input events usually within 5 seconds approximately.
If you have some complicated operations that can potentially take a while, you should consider creating a separate worker thread running in the background. You can still implement your own through Thread and Handler for a more detailed control. Whenever a long wait is inevitable, you should always present a message dialog or progress bar or maybe a spinning wheel or something to keep your users notified.
Since data costs so always notify user of background data and http operations.
Some good ideas maybe JSON over XML. REST can also be a good option. Make use of REST API.
Persist data locally.
Shared Preference, Internal Storage, External Storage, SQLite Database
Aim to minimize the data use of user.
Don’t hesitate to use external libraries as libraries are there to make developer’s life easiter.
Android Universal Image Loading
Android Arsenal https://android-arsenal.com/ can be good place to look for libraries
Libraries for developer is an Android Application with information about various libraries
Design application for:
All possible resolutions
Screen sizes and also both for Landscape and portrait
Use Photoshop action to cut images for multiple DPI images
Android Photoshop Action is another application to help making multi DPI images : http://www.inpixelitrust.fr/blog/en/android-photoshop-action-export-mdpi-hdpi-xhdpi-xxhdpi-xxxhdpi/
Aim to minimize code
Admob by Google http://www.google.com.np/ads/admob/
Before uploading to application stores like Google play, App Jhola etc:
- Make sure of Version Coding
- Sign App with Hash Key
- Prepare for High Resolution Logos
For support and questions make sure to visit:
Android Developers Community of Nepal – a Facebook group https://www.facebook.com/groups/258590104205293/
Mobile Social Networking Nepal- http://mobilenepal.net/
App camp 14 facebook group – www.facebook.com/groups/appcamp14/