Solutions for common Android development problems

Solving Android development issues
This article lists common problems during Android development and potential solutions.


1. Solving typical Android development problems

Things are not always working as they should during your Android development. This section gives an overview over typical problems and how to solve them.

1.1. Clean Project

Several users report that they get the following errors:

  1. Project … is missing required source folder: ‘gen’
  2. The project could not be built until build path errors are resolved.
  3. Unable to open class file R.java.

 
To solve any of these errors, go to the project menu and select Project ? Clean.
If you have library projects, make sure to clean them too.

1.2. android.content.ActivityNotFoundException

During start or during execution of your application, your application stops. In the LogCat view you see the message: android.content.ActivityNotFoundException : Unable to find explicit activity class; have you declared this activity in your AndroidManifest.xml?
Check in this case if you declared your activity in the AndroidManifest.xml file.

1.3. Problems with Android Debug Bridge (adb)

The communication with the emulator or your Android device might have problems. This communication is handled by the Android Debug Bridge (adb).
Eclipse allows you to reset the adb in case this causes problems. Select therefore the DDMS perspective via Window ? Open Perspective ? Other… ? DDMS
To restart the adb, select the “Reset adb” in the Device View.
 

 

1.4. LogCat

The LogCat view shows you the log messages of your Android device and helps you to analyze problems. For example Java exceptions in your program would be shown here. To open this view, selectWindow ? Show View ? Other… ? Android ? LogCat.

1.5. Java7

If Android complains that you cannot use Java7 select your right-click on your project and select the Java Compiler entry. Ensure that Java 1.5 or Java 1.6 is used. You may have to select the Enable project specific settings checkbox.
 

Java compiler settings

 

1.6. Eclipse reports file from R.java as missing

Sometimes Eclipse complains that a file, e.g. R.layout.main cannot be found. Check in your source code that you did not import android.R. An android.R import will prevent Eclipse from finding your Rfile.

1.7. Android editor not opened

Android provides nice editors to edit Android resource files, unfortunately these editor are not always automatically used due to bugs in the ADT. If that happens, you can open this editor manually. Right-click on your menu file and select Open with ? Android Menu Editor.

1.8. Emulator does not start

If your emulator does not start, make sure that the android-sdk version is in a path without any spaces in the path name.

1.9. Timeout during deployment

If you face timeout issues during deployment you can increase the default timeout in the Eclipse preferences. Select Window ? Preferences ? Android ? DDMS and increase the ADB connection timeout (in ms) value.

1.10. Installation failed due to insufficient storage

Sometimes the emulator will refuse to install an application with the error message: INSTALL_FAILED_INSUFFICIENT_STORAGE.
An Android virtual device provides by default only 64M for the storaging Android applications. You can clean your installed application by restarting the emulator and selecting the Wipe user data flag.
Alternatively you can set the data partition size. If you press edit on the AVD, you can set the Ideal size of data partition property via the New button.
 

Setting the Ideal size of data partition for the ADV

 

1.11. Debug Certificate expired

If you get the error message Debug Certificate expired switch to the folder which contains the Android AVD, e.g. .android under Linux and delete the debug.keystore file. This file is only valid for a year and if not present, Eclipse will regenerate the password.

1.12. Error message for @Override

The @Override annotation was introduced in Java 1.6. If you receive an error message for@Override, change the Java compiler level to Java 1.6. To do this, right-click on the project, selectProperties ? Java Compiler ? Compiler compliance level and select 1.6 in the drop-down box.

1.13. Missing Imports

Java requires that classes which are not part of the standard Java Language are either fully qualified or declared via imports.
If you see an error message with the XX cannot be resolved to a variable text, right-click in your Editorand select Source ? Organize Imports to important required packages.

Leave a Reply