Showing posts with label android mobile applications. Show all posts
Showing posts with label android mobile applications. Show all posts

Tuesday, 3 January 2012

Android Mobile Applications Can Experience Memory Leaks Issues

Android is the most happening platform that is available now and is used extensively by the offshore android development. There are a number of Android mobile applications that are built on this platform. But despite its immense popularity Android development is not devoid of issues. One of the main issues that are faced by the offshore Android development teams is memory-leaks. This is because the maximum heap for mobile applications is 16GB. If you come to think of it for a phone the memory space is really high. But then for offshore Android development team who wants to achieve more, this much space is not sufficient. The main advantage of android is multi taking and hence it can take a lot of applications in the memory space. The memory leaks happen mainly because the term context is used for a lot of operations within Android development.  But then the main use of this is to access or load resources for the Android applications.  The widgets are constructed with the help of this context parameter. Application and activity are the two types of contexts that are available. Normally the activity is passed.

@Override
protected void onCreate (Bundle state) {
  super.onCreate(state);
 
  TextView label = new TextView(this);
  label.setText("Leaks are bad");
 
  setContentView(label);
}

When there is a small leak also it is dangerous, as it will slowly lead to a complete leak within the Android mobile applications. So one has to be very careful while writing an application so that there is no memory leak.

In short one has to keep in mind the following things to avoid memory leaks issues.

  • For a context activity does not have reference that is long lived that is the reference of the activity should not have a life cycle that is more than the activity. In short it should have the same life cycle.
  • One can also use context activity instead of the context application to minimize the memory leaks.
  • It is better in an activity that one does not use the non static inner classes in case you are not in a position to control the lifecycle. Use the static inner class which will make a weak reference to the activity. Hence the best way is to use the static inner class that has a weak reference to outer class.
  • One has to keep on mind that the garbage collector that is there is not like insurance for the memory leaks.

Tuesday, 1 November 2011

Android 2.3 Platform Multimedia Enhancements

Android 2.3 multimedia capabilities play a crucial role in the ever-increasing popularity of Android-powered devices and Android mobile applications. The new multimedia enhancements provide a rich multimedia experience to the users and, on the other hand, provide Android developers support in developing apps rich in multimedia features. Listed below are the multimedia highlights of Gingerbread.

Audio Mixing

The audio effects API allow Android developers to construct a rich audio environment using audio equalization, bass boost, headphone virtualization, etc. Audio effects mixing are possible within a local track or globally across tracks. Android developers can now configure their apps to let the user experience a holistic audio fidelity.

New Media Formats Support

Android 2.3 platform incorporates AAC encoding, AMR wideband encoding, VP8 open video compression format, and WebM open container formats. This compatibility provides interruption-free multimedia delivery on Android-powered devices. These formats support are likely to set the standards for high definition video playback.

Usage Of Multiple Cameras

Android 2.3 Camera API adds the ability to use multiple cameras installed on a device. The Android mobile applications can query the API regarding the various cameras available and their characteristics and then open a suitable camera suiting the app's objective. For example, a photo shooting app can choose to use the back-facing camera that has a higher resolution, whereas a video conferencing app can use the front-facing camera that has a lower resolution.

New Media Framework

The new media framework in Android 2.3 platform
  • replaces the OpenCore whilst maintaining all the older codec/container support for encoding and decoding
  • provides some amount of support for extra large display devices like tablets and TVs
  • supports video chat, when installed with relevant software add-ons
  • allows users to run simultaneous multimedia sessions

Thursday, 20 October 2011

Advantages of rooting your Android device



Android development has opened the doors to various exciting opportunities. Android developers have come up with Android mobile applications whose functionality has grown vast in scope and range. For an Android phone user, rooting will give more control in customizing his phone to suit his needs.

What is rooting?

Rooting is similar to jail breaking on the iPhone. In Android devices, software like SU (switch user) exploits the vulnerability in the operating system code and gives the user complete control over his phone. The various advantages of rooting your Android device are listed below.

Android OS customization

Rooting allows you to customize your Android OS. You can alter system files, use themes, change boot images, remove unnecessary/stock apps, etc.

Backup and restore

Rooting allows you to backup an image of your Android-powered device onto an SD card. This allows you to install and run a new ROM (customized, after-market OS). If you are not satisfied with the new ROM, you can always restore the previous image from the SD card.

Save space

Rooting allows you to enable your Android apps to be moved onto an SD card even if the Android developers have not enabled this feature. This might be helpful in case you have reached the memory space bottleneck and need to shift some apps onto a removable media like an SD card.

Some apps require rooting

Some special Android apps specifically require rooting. For example ROM Manager requires rooting in order to flash ROMs from an SD card onto your phone. Another app that requires rooting is setCPU that is used to under/overclock the device.

A caution

Be thorough on instructions before rooting your phone. Improper execution will result in a bricked phone. A bricked phone is one that has a damaged firmware or software and the phone is rendered unusable.

Summary

Rooting is a great trick to get to use your phone's full power and functionality. Customized Android ROMs have today evolved to cover full advanced access controls. The best way to get started is to Google for information on rooting your phone by the search string “<phone name> custom ROM.”

Malicious Apps Can Disable Android OS Anti-Virus Software

ZDNet has reported a potential vulnerability in Android OS, which can be used by malicious software to disable the installed anti-virus software. The malware can even corrupt the anti-virus software and use it as a malicious app. The founder of security firm Privateer Labs, ReileyHassell highlighted this fact. The component that is vulnerable is not disclosed yet as Reiley is taking it up with Google.

According to Reiley, malicious Android developers can develop apps that look legitimate, but are actually malicious in intent. They claim to provide productive services like bank account authentications or virus-fighting enhancements. The users are tricked into downloading and installing these Trojanized apps lending themselves to malfeasance. The strategy, increasingly called “app phishing,” is an Android-based exploit where the app informs the Android developer whenever it is invoked. A banking app can, for example, show a fake login page and transmit the login details to a remove Web server, resulting in loss of financial and personal information.

It is a tough call to fix responsibility for ensuring the sanctity of Android development environment. Ideally, Google can follow a signature-based screening for Android mobile applications. Already, Google has removed over a 100 malware apps from the marketplace in the past year. Android development being open sourced lends itself to half-baked and malicious apps more than say Apple OS. These challenges are a tough call and needs to be addressed by the Android development community together. On the other hand, it has made Andorid mobile applications development the fastest growing platform in both range and scope.

The best ways users can mitigate risk from Android mobile applications are downloading and installing only from trusted sources that have known developer names and good rating, checking if the permissions requested by the app sticks to its stated objectives, and keeping an eye on unusual activities in the device.

Copyright @ 2013 Mobi People. Designed by Templateism | Love for The Globe Press