There are some practices that you can follow while developing android application. These are suggested by the android itself and they keep on improving with respect to time. These best practices include interaction design features , performance , security and privacy , compatibility , testing , distributing and monetizing tips. They are narrowed down and are listed as below.
Best Practices - User input
Every text field is intented for a differnet job. For example, some textfields are for text and some are for numbers. If it is for numbers then it is better to dispaly the numeric keypad when that textfield is focused. Its syntax is.
<EditText
android:id="@+id/phone"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="phone" />
Other then that if your field is for password , then it must show a password hint , so that the user can easily remember the password. It can be achieved as.
<EditText
android:id="@+id/password"
android:hint="@string/password_hint"
android:inputType="textPassword" />
Best Practices - Background jobs
There are certain jobs in an application that are running in an application background. Their job might be to fetch some thing from the internet , playing music e.t.c. It is recommended that the long awaiting tasks should not be done in the UI thread and rather in the background by services or AsyncTask.
ASYNCTASK VS SERVICES.
Both are used for doing background tasks , but the service is not affected by most user inteface life cycle events, so it continues to run in circumstances that would shut down an AsyncTask.
Best Practices - Performance
Your application peformance should be upto the mark. But it should perform differently not on the front end , but on the back end when it the device is connected to a power source or charging. Charging could be of from USB and from wire cable.
When your device is charging itself , it is recommended to update your application settings if any, such as maximizing your refresh rate whenver the device is connected. It can be done as this.
IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = context.registerReceiver(null, ifilter);
// Are we charging / charged? Full or charging.
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
// How are we charging? From AC or USB.
int chargePlug = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
Best Practices - Security and privacy
It is very important that your application should be secure and not only the application , but the user data and the application data should also be secured. The security can be increased by the following factors.
1. Use internal storage rather then external for storing applications files
2. Use content providers wherever possible
3. Use SSl when connecting to the web
4. Use appropriate permissions for accessing different functionalists of device
Best Practices - User input
Every text field is intented for a differnet job. For example, some textfields are for text and some are for numbers. If it is for numbers then it is better to dispaly the numeric keypad when that textfield is focused. Its syntax is.
<EditText
android:id="@+id/phone"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:inputType="phone" />
Other then that if your field is for password , then it must show a password hint , so that the user can easily remember the password. It can be achieved as.
<EditText
android:id="@+id/password"
android:hint="@string/password_hint"
android:inputType="textPassword" />
Best Practices - Background jobs
There are certain jobs in an application that are running in an application background. Their job might be to fetch some thing from the internet , playing music e.t.c. It is recommended that the long awaiting tasks should not be done in the UI thread and rather in the background by services or AsyncTask.
ASYNCTASK VS SERVICES.
Both are used for doing background tasks , but the service is not affected by most user inteface life cycle events, so it continues to run in circumstances that would shut down an AsyncTask.
Best Practices - Performance
Your application peformance should be upto the mark. But it should perform differently not on the front end , but on the back end when it the device is connected to a power source or charging. Charging could be of from USB and from wire cable.
When your device is charging itself , it is recommended to update your application settings if any, such as maximizing your refresh rate whenver the device is connected. It can be done as this.
IntentFilter ifilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
Intent batteryStatus = context.registerReceiver(null, ifilter);
// Are we charging / charged? Full or charging.
int status = batteryStatus.getIntExtra(BatteryManager.EXTRA_STATUS, -1);
// How are we charging? From AC or USB.
int chargePlug = batteryStatus.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1);
Best Practices - Security and privacy
It is very important that your application should be secure and not only the application , but the user data and the application data should also be secured. The security can be increased by the following factors.
1. Use internal storage rather then external for storing applications files
2. Use content providers wherever possible
3. Use SSl when connecting to the web
4. Use appropriate permissions for accessing different functionalists of device
Comments
Post a Comment
Your Comment Here!.....