What is the difference in Debug APK vs Release APK ?
Question
Application Type
Mobile

Hi all. 

I just notice that while not disributing to a App Store, I am able to make two difference kinds of APK to distribute my app in. But what are the difference between the two ? ( Debug APK / Release APK) 

A debug version of your app is meant to be optimized for that- even if that means adding extra logs (from the system or from your app), systems to catch errors, data tracking and management, everything you can access from the debug menu, and much more.

However, when a release apk is made, it doesn't need all those features. Furthermore, there are speed-related optimizations that can be made to the app by the compiler, which stop you from normally debugging. Thus, it tends to be faster/more responsive- although the varying degrees of improvement depend on what your app is actually doing.

Hello Thomas Eldrup ,

Major differences are the debug apk and the release apk:

  • For debug builds the apk will be signed with the default debug signing keys with debug flag enabled.

  • For release apk you will have to explicitly specify the apk to sign with and the debug flag will be turned off so that it cannot be debugged.


Reagrds,

Riyas


Hi Thomas,

firstly those 2 build types are for Android (Google Play), not iOS (App Store).

The difference, as the name says, is with Debug type you will be able to debug in Service Studio by connecting a cable to your device with that version installed.

https://success.outsystems.com/Documentation/11/Delivering_Mobile_Apps/Generate_and_Distribute_Your_Mobile_App/Generate_and_Distribute_Your_Mobile_App_for_Development_Tests

Regards


Thanks for the answers. 

But, I do get that one allows for the option to debug, but what I was wondering was if it had any differences in how the application performs ? Does it have any impact in performance if you distribute an application as a debug APK instead of a Release APK ? (Should have been more clear in the question) 

Debug requires extra features in the version to be able to be debugged, so yes, debug version is not so performant as a release version.

A debug version of your app is meant to be optimized for that- even if that means adding extra logs (from the system or from your app), systems to catch errors, data tracking and management, everything you can access from the debug menu, and much more.

However, when a release apk is made, it doesn't need all those features. Furthermore, there are speed-related optimizations that can be made to the app by the compiler, which stop you from normally debugging. Thus, it tends to be faster/more responsive- although the varying degrees of improvement depend on what your app is actually doing.

Thank you guys. Just what I needed to hear. 

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.