External utilities used by GeneXus generated Android applications

Official Content
This documentation is valid for:

In Android, packing just the minimum necessary classes is of great importance for two main reasons:

  • The Dalvik Virtual Machine establishes a maximum of 64 thousand Java methods for each indexed file. Since the final application package (apk) is composed of a big index of all the classes and resources, each dependency adds to this count.

  • The final application size. For very simple applications, it may cause concern for users if they see that the application occupies a lot more space than they expected for no apparent reason.

As explained in the External utilities used by GeneXus generated Smart Devices applications document, it is possible to split the dependencies into necessary and optional dependencies.

Note: In Android projects, external dependencies could be either JAR libraries or Project libraries.

Necessary dependencies

Project libraries

Name Licence Type Usage
ActionBarSherlock  Apache License 2.0 Emulate Android's ICS action bar in 2.x devices
Google Play Services  Android SDK Licence For Google Maps API v2

Jar libraries

Name Licence Type Usage
Android Support Library Apache License 2.0 Provides backward-compatible versions of Android framework APIs
Gson  Apache License 2.0 To convert Java Objects into their JSON representation
NineOldAndroids Apache License 2.0 Emulate Android ICS animation framework in 2.x devices
SqlDroid Eclipse Public License 1.0 JDBC driver for SQLite databases
YouTube Player API Apache License 2.0 Incorporate video playback functionality into your Android applications
Google Admob Ads

Google Developers Site Terms of Service

Google Analytics Android SDK Licence Google Analytics 

Optional Dependencies

Project libraries

Name Licence Type Usage
AChartEngine Apache License 2.0 Chart controls
Android Billing Library Apache License 2.0 In-app purchases
ViewPagerIndicator Apache License 2.0 Shows current and count of pages for the "SD Paged Grid" control
Spinner Apache License 2.0 For DateTime pickers and SDWheels
Facebook Apache License 2.0 "Facebook" External Object
Twitter4j Apache License 2.0 "Twitter" External Object
Baidu Maps   Android Maps API for Baidu maps
Gaode Maps   Android Maps API for AutoNavi maps
SQLCipher BSD-style Licence Offline Database encryption

See also