Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android 'debuggable' default value

I am trying to get application's debuggable attribute value from code:

packageInfo = context.getPackageManager().getPackageInfo(packageName, 0);           
int flags = packageInfo.applicationInfo.flags;
isDebugMode = (flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0;

And I have noticed that when debuggable attribute is not specified in manifest this code defines it as true. And documentation says that it is false by default.

What's wrong?

like image 755
darja Avatar asked Apr 18 '11 10:04

darja


People also ask

What application in Android manifest?

The AndroidManifest. xml file contains information of your package, including components of the application such as activities, services, broadcast receivers, content providers etc.


1 Answers

From SDK Tools : ( SDK Tools, Revision 8 (December 2010) )

Support for a true debug build. Developers no longer need to add the android:debuggable attribute to the <application> tag in the manifest — the build tools add the attribute automatically. In Eclipse/ADT, all incremental builds are assumed to be debug builds, so the tools insert android:debuggable="true". When exporting a signed release build, the tools do not add the attribute. In Ant, a ant debug command automatically inserts the android:debuggable="true" attribute, while ant release does not. If android:debuggable="true" is manually set, then ant release will actually do a debug build, rather than a release build.

like image 108
OcuS Avatar answered Oct 28 '22 10:10

OcuS