Tips for reducing APK file size

Are you having problems getting under the current 50 MB upload limit imposed by Android Market™? Don’t let it be a roadblock in preparing your Android™ app for market. Instead, use these excellent tips for reducing the file size of your APK. David Karlsson, a software architect at Sony Ericsson, will get you all the details. Read more after the jump.



David Karlsson, Sony Ericsson software architect

Hi, I’m David Karlsson, a Sony Ericsson Software Architect. My work mainly involves giving architectural guidance and technical support to our development partners and third party vendors. One important developer topic that comes up frequently is how to reduce the APK file size of an app. Developers who are submitting apps to Android Market™ sometimes discover that their APK file exceeds 50 MB, the current upload size limit. But you don’t have to accept the APK file size as is. There are ways you can reduce your APK file size.

What is an APK file?

An APK is an Android application package file. Each Android application is compiled and packaged in a single file that includes all of the application’s code (.dex files), resources, assets, and manifest file. The APK file is basically a .zip file, so there’s no way of compressing its size any further.

Why you should consider keeping files as small as possible


Memory space on smartphones is often a competitive area, now that most users are storing music, video, messages are more, in addition to downloading apps. The smaller you make your APK, the better it is for the user, and that may be a deciding factor on whether to download your app, versus a similar app that takes up more phone memory.

Tips for reducing file size

Here are a number of recommendations for reducing static footprint. You can choose the ones that fit best for your own particular needs.

ProGuard

A tool for code shrinking, like ProGuard, will significantly reduce the static foot print. The tool is available at sourceforge. Note that it is very important to re-test all of the application after applying ProGuard since it may change the application behavior. As ProGuard replaces the application symbols, to make the code difficult to read, it is important that you retain the symbol mapping, so that you can translate a stack trace back to the original symbols if you have to investigate a crash in your application.

Removal of debug information

We recommend that you remove all debug-related functionality from the application. The application generally does not see or use this data, and the Android operating system does not require it to run the application. Hence, the debug information only wastes space, and should be removed.

To accomplish this, all debug related functionality must be enclosed in conditional blocks, like below:

 
static final debug = false;

if (debug) {

Log.v(TAG, “Debug …”);

}

It is important that the debug flag is set at compile time (i.e. declared as static final) for the compiler to be able to completely remove all debug functionality. Creating your own debug method like the one shown below is not a good idea because the call to myDebugPrint() is not enclosed by a conditional block, which means that the compiler must retain information about myDebugPrint() in the calling class.

public void myDebugPrint() {

if (Debug) {

Log.v(TAG, “Debug …”);

}

}



myDebugPrint()





Removal of debug symbols from native libraries

 
Using debug symbols makes sense if your application is still in development, and still requires debugging. But if debug symbols are still appearing when you compile a release build, and if you want to remove them, then we recommend that the Debug symbols be removed from native libraries (.so files). This is done using the arm-eabi-strip command, from the Android NDK.

Recommended media formats

If your application relies heavily on images, audio or video, another way you can reduce the APK size is by using certain media formats. We recommend that you use the following media formats for images, audio and video:
 
Images: PNG or JPEG. Use PNGs; since it is a lossless format it is very suitable for  
   textures and artwork as there will be no visual artefacts from the compression. If there  
   are space constraints, use JPEGs or a combination of PNGs and JPEGs. A high quality
  JPEG image may work fine for large photo-realistic images, which the JPEG compression
   scheme is optimised for. 

Audio: AAC Audio is recommended for all audio resources. AAC achieves better  
   compression at a given quality, compared to mp3 or Ogg Vorbis. Raw formats such as 
   WAV should never be used. The common rational for using the WAV format is that  
   decoding compressed audio streams usually means high latency at playback. However, 
   Android provides the Sound Pool API which enables applications to use compressed audio
   streams without the penalty of high latency. 

Video: Use H264 AVC. Encode the video to a resolution no larger than the screen  
   resolution of the target device (if known).

Optimise PNG sizes without losing quality

If you use PNG format, PNG images can be reduced in file size without losing quality. To do this, use a tool such as OptiPNG or PNGCrush. Both are great for reducing PNG file size while still ensuring image quality. PNGcrush is an open-source program that iterates over PNG filters and zlib (Deflate) parameters, compresses the image repeatedly using each parameter configuration, and chooses the configuration that yields the smallest compressed (IDAT) output. On the other hand, OptiPNG performs the trials entirely in memory, and writes only the final output file on the disk. Moreover, it offers multiple optimization presets to the user.

Use 9patch PNGs to scale your images

A 9patch png is a special format for PNG that can be used for backgrounds. Nine patch images are especially useful when designing buttons. Instead of defining a regular bitmap to be used as a background, a 9patch defines nine segments – for each of the four corners, the four edges, and the centre. (See illustration).




Segments defined 

for 9patch PNG.
 
When you use a 9patch image, the image is subject to the following conditions:

  The corner segments are never scaled.

The edge segments are repeated along the edge of the in order to fill the edge 
   between  the corner segments. 

The centre segment is repeated to fill the centre of the background between the four  
   edges.

The illustration below shows two buttons. The background of each button is generated  
   from the same 9patch.


                                                     Example of buttons generated from
                                                     the same 9patch file.

A single 9patch PNG can be used to replace many background images, as it can scale to fill the size of the control. Equally, a single 9patch image can be used on all devices of the same dpi screen, removing the need for screen-dependent backgrounds.

Remove unused resources


Another potential group of space wasters to consider for removal from your APK file are unused resources in your res directory, such as unused layouts, drawables and colors. To detect unused resources in your APK which might be able to be removed, use the android-unused-resources tool. Android Unused Resources is a Java application that will scan your project for unused resources.

Avoid duplication

Making sure that your application doesn’t have duplicate functionality or duplicate assets is an obvious way to avoid having unnecessary files in your APK. It is important to understand which Android APIs you use, and the full functionality that each provides. It could be that one Android API is already doing the work of another API. Duplicated assets (strings, bitmaps etc) are also a waste of space, and can be easily avoided. To a lesser extent, duplicated code will also unnecessarily increase the size of the delivered binary.

***

If you have any questions on how to reduce APK file size, feel free to leave a comment and we’ll get back to you with an answer as soon as possible.
This article provides basic guidance to help you plan and implement multiple language support in your Android apps.
Android has excellent features that make implementing and managing multiple languages easy, and you should take full advantage of that in your apps.


Supporting multiple languages is the most important aspect of localisation.
Localisation and language support:

Localisation refers to the adaptations required in an app's user interface to support users in different geographies—referred to as locales.

Locale support includes


  Supporting multiple user languages, including different character sets (accented
    characters, special symbols, punctuation)

  Presentation differences like number seperators and date and time formats

  Address formats, sorting orders, and time zone and calendar differences

Multiple language support is therefore not the whole story of localisation, but it is an essential first step. Depending on what functionality your app offers, it may be enough. Also, multiple language support depends only on Android features, whereas other aspects of localisation (formats and sorting orders for example) depend on Java language mechanisms.

From a developer perspective, the essential requirement for implementing multiple language support is to provide translations into the languages you intend to support for all strings that your app will display to users.


Why bother with translation?

Some developers take the view that "most" users are "tolerant" of English-only apps.

However, an English-only app does not meet the quality level required for submission app stores in non-English speaking European countries.

Supporting multiple languages is therefore a prerequisite for increasing the number of potential users your app can reach. 


Android support for multiple languages:

Android adopts a resource-driven approach to presenting locale-specific app content. To support multiple languages, developers supply language-specific resource files containing translated strings as part of their app source code. At build time, the Android build system generates compact binary representations of all string resources, which are packaged into the final app package.

Android takes care of switching-in the appropriate language strings based on the user's settings.

The essential developer tasks are therefore to:


  Provide translations for all strings, or subsets of them, that the app presents to users

  Make the translations available in language-specific resource files at build time

  Ensure that default resource files are provided in case the user language is not one of
    the languages you support.

In Android terminology, the process of separating resources from code and supplying them to the build system in resource files is referred to as "externalization".

As a general rule, you should always take advantage of Android's externalisation facilities, and never hardcode strings (that will be displayed to the user), images (that you may use as backgrounds for UI elements), icons (that launch app functions), or even sounds (for example alerts). Instead, follow Android's resource model.


Supporting multiple languages:

It's important that you serve all of your users, not just those in the biggest markets.

The following tips will help you plan and implement multiple-language support in your Android apps.
Tips 1—String file locations for Vodafone European countries

Use the table below to help manage string resources for multiple languages. Currently, the UK and Germany are the most active markets. Therefore, unless your app really is local to a single country (see Tip 10), you should aim to support at least UK English and German languages, in addition to your own language if different. You should also consider adding more languages in future app upgrades.

You must always support a default language by including a default strings file res/values/strings.xml,see Tip 2

 Market Region   Code Language Region          code String file Android Version
United Kingdom  UK English en_rGB res/values/strings.xml Since 1.5
Eire(Republic of Ireland) IE English en_rIE res/values-ie/strings.xml Since 2.3
Germany DE German de_rDE res/values-de/strings.xml Since 1.1
Greece GR Greek ei_rGR res/values-el/strings.xml Since 2.3
Italy IT Italian it_rIT res/values-it/strings.xml Since 1.5
Netherlands NL Dutch nl_rNL res/values-nl/strings.xml Since 1.5
Portugal PT Portuguese pt_rPT res/values-pt/strings.xml Since 2.3
Spanish ES Spanish es_rES res/values-es/strings.xml Since 1.5




Tips 2—Provide a default string file (and test your default support)

When your app runs on a phone set to a language that you do not explicitly support, Android will use the default strings file (and any other default resources) to display user visible strings.

Similarly, any strings required for display that are not defined in a language-specific strings file will be displayed from the default strings file.

If you don't provide a default strings file, and the phone is set to a language you don't support, your app won't launch (or will be shut down if already running).

The same thing will happen if you omit any string that is required for display from the default strings file.

Always test your app in the default language to ensure that it runs correctly without language-specific resources.


Tips 3—Understand resource switching and locations

Language strings are supplied in a strings.xml file (see Tip 1 for naming details). The default strings.xml is always located in the res/values folder. Translated strings should be supplied in a strings.xml file located in a language specific res/values-<LANGUAGE CODE> folder, one folder (and one strings.xml file) for each language you support.

Android language switching is based on the phone language the user sets from the Settings menu. Note that the languages available depend not just on the Android version, but also on the phone model, and the manufacturer's provision for the local market too.


Tips 4—Be prepared for runtime language changes

If the user changes the phone's language setting while your app is running, the following happens:


   onDestroy() is called for your currently running Activity

   onCreate() is called for your currently running Activity

In other words, your Activity is stopped and restarted.

Android calls onSaveInstanceState() to save your Activity's state before onDestroy() is called. This enables you to restore state when your Activity restarts. Your onCreate() method should therefore call onRestoreInstanceState() to restore the app state. This enables you to handle the restart seamlessly.

 
Tips 5—Useful common accents and special characters

The most obvious written differences between European languages are accents and other special characters. To display translated strings correctly, you must create them correctly in your resource code. Even the list of localisable European languages presents this basic problem, for example:


  Spanish is written Español, and includes a tilde accent

  Portuguese is written Português and includes a circumflex accent

Special characters include:


  Speech-, exclamation-,and question-marks used in Spanish, respectively « and », ¡ and ¿

  German ligatures including ß (not to be confused with Greek lower-case beta β)

  The ª and º superscripts used in Italian, Portuguese, and Spanish for ordinal numbers

The HTML5 character reference table provides a convenient list of all the special characters you are likely to need in European language strings.

It is not necessary to generate these characters from the keyboard; use Unicode or HTML encodings directly in your string resources (see Tip 6).


Tips 6—Use HTML encoding to include styles and special characters (like accents) in your Android strings

The HTML5 table lists the Unicode codepoint for each named character entity.

For example, Caffè in Italian requires a grave accent above the "e", Unicode codepoint U+000E8.

You can use the codepoint to create a Java literal \u00e8 (4 digit hexadecimal number); or you can use the HTML character entity in decimal format &#232; (232 is the decimal conversion of hexadecimal E8).

Note that you cannot use the HTML named character entity &egrave; (the Android resource compiler rejects it).

For example, the following string defined in strings.xml:

<string name="caffe">Did you say <b>Caff&#232;</b>, or was that <i>Caff\u00e8</i>?</string>

builds and displays as:




Note also the use of HTML markup in the strings file for simple styling—see Find out more, below.


Tips 7—Rewrite strings to make translation easier

Translation can cause unexpected effects. A common problem is that string length for equivalent text varies significantly between languages, which can upset your layout.

Another is that some phrases just do not translate easily. Keep your language style simple. If a phrase is awkward in translation, try rewriting it in your own language to avoid the awkwardness.

Also, although it's not specifically a translation issue, avoid quantity formulations in your displayed text if you can. For example, "You have 1 new messages" will always read badly; but "You have new messages" reads well, even when there is only one message.


Tips 8—Swap translation tasks with others

Most developers won't have the language expertise required for translation, and many won't have the budget to buy in expertise.

Help yourself and others by harnessing the power of the Android developer community to swap translation tasks with developers in the countries you are targetting. Post in your favourite Android developer forums.


Tips 9—Think globally—even the most local apps can have wider appeal
Dutch users are probably are not interested in UK lottery results, but they may be interested in London Tube information, Spanish football results, Italian Slow Food events, and so on.

So even if your app depends on specific local content, it may still appeal to users in other countries.

Think globally, and your app may have a bigger market than you realised.


Find Out ....

Floating Notifications (Full) v1.1 Apk Download Free

                                      Floating Notifications (Full) v1.1 Apk | 570 KB
                                                  Requires Android:3.0 and up
                  Floating Notifications is a new and intuitive way to view your notifications!


App Review:

It can take a notification from any app and present it to you as a floating icon, similar to Facebook chat heads, but for any application. It even works in fullscreen mode (in Games, Youtube etc) and is fully customizable.

Themes:


  Any issues, requests or suggestions?

  Follow us on Twitter (@FNforAndroid)

  Like us on Facebook (http://www.facebook.com/floatingnotifications)

  Circle us on Google Plus (http://gplus.to/chatheads)

  Get beta access by joining the community (http://gplus.to/fnbeta)

  Or email us at support@iamrobj.com

Icon by FineTalent of XDA – http://forum.xda-developers.com/member.php?u=4841935

App integration:


  FN is not able to make notifications disappear from your status bar. An app cannot dismiss
    another apps notification.

  However, if you want any of your favourite apps to either make their status bar notification
    disappear when you dismiss the corresponding Floating Notification, or vica versa, you
    can point them to this page where they can add Floating Notifications integration:

Halo:

This is NOT Halo. There are no popups of full apps and nor will there ever be. If that is what you are after unfortunately you will not find it here.

What’s in this version:


  Added option to save remember position on restart

  Added backup/restore option for settings (requires SD Card permission)

  Accessibility type is now configurable

  Max width is now equivalent to screen width (still doesn\’t work above 600px yet)

  Fixed pinned icons not resizing when icon size is changed

  Fixed some UI issues



Here is the link for Download........................

Chameleon Launcher v2.0.2 Apk Download Free

                                           Chameleon Launcher v2.0.2 Apk | 5.5 MB |
                                               Requires Android:3.2 and up , Tablets

App Review:

Chameleon is a revolutionary tablet-specific launcher that lets you create multiple home screens, each with your own layout of widgets and apps. The Chameleon system includes an innovative context based home screen system giving you the most relevant information that you want, when you want it.

Android widgets are not all created equally – and that’s the problem – so we decided to raise the bar. The result is widgets that look beautiful together and are as easy to layout as drawing on a screen. Take a look at some of our other widgets or build your own with our custom API.

Calendar
Clock
Facebook
Google+
Instagram
Media Player (Coming soon)
RSS News Reader
Switches
Twitter
YouTube

Home Screens that Change With You

Your information needs may change throughout your day, so Chameleon includes an innovative context system. You can create context rules based on GPS locations, WiFi networks and time ranges, allowing you to define which Home Screen is the most relevant for any situation.

App Tray & Launcher

Chameleon doesn’t just let you customize your Home Screens with the widgets you want. It also lets you customize your own mini App Tray. Giving you the apps you want up front, without having to swim through a large grid of apps.

Super Easy To Customize

Quickly set up Home Screens, Widgets, App Trays, and Wallpapers all with a few gestures.

What’s in this version:


Minor updates to the Facebook widget to address authentication issues.
Various other small bug fixes reported by our auto-reporting system.
Support for Phones!
Folders & Linked Folders.
App Launcher Widgets.
Contextual Dashboards redesigned.
Performance Improvements.
Updates to many Chameleon widgets.



Here is the link for Download........................

DOWNLOAD>> 


Mianogen – Theme Chooser v1.5 Apk Download Free

                                     Mianogen – Theme Chooser v1.5 Apk | 1 MB |
                                                 Requires Android:4.0 and up
                                           Mianogen CM10/AOKP THEME !!!
App Review:
This theme works with AOKP/CM9/10/10.1 and it supports [XHDPI/HDPI]★ HOW TO
Once you download the theme, go to Setting/Themes or Theme Manager
Find the Mianogen Theme and hit apply it!
If you get an error message:
Apply the default theme first then reboot and apply the Mianogen theme and reboot again.
This theme fully works with XHDPI and work with HDPI!

WHAT CHANGES:

New Google JFK’s icons and some new icon made by me with JFK style !
Overall new Classy UI
Clean and simple look
New system icons to avoid boring
New Navbar icon
New Statusbar Notification
New Switch graphic and toggles
New Default Wallpaper
New Camera UI – more smooth
Small package change a lot of you phone !
Themed apps as user request ~!

And many more you’ll find it yourself…!

What’s in this version:
Fixed bugs
Contact now rounded as Google+ :)
More optimize i can’t remember !


Here is the link for Download........................

DOWNLOAD>>


Tersus (adw nova apex theme) v1.4.2 Apk Download Free

                                Tersus (adw nova apex theme) v1.4.2 Apk | 18 MB |
                                                 Requires Android:1.6 and up

Clean and colorful icons with a common silhouette – perfect for minimalists!

Description:

Features:

   New graphics for dock bar (ADW & Go)!
   Over 400+ custom icons!
   Themed search widget (ADW & GO)!
   Wallpaper gallery included!
   Apex theme support
   ADW Theme support
   Launcher Pro theme support (limited to icons)
   Go Launcher EX theme support
   Support for Desktop Visualizer
   Support for Folder Organizer

What’s in this version:

   37 new icons added. See most of them here: http://bit.ly/kov062113
   A full pass was done to bring icons in line with current style guidelines. Over 500 icons
     affected!
   Associated some apps with existing icons
   Fixed broken activities. Keep emailing us about these!
   We’re not currently accepting new requests as the list has exceeded 3000. That’s about 3
      years worth of updates. We appreciate your patience while we work towards fulfilling as
     many as we can.


 

Here is the link for Download.......................


CM10.1 CM9 GALAXY S4 TW theme , Galaxy S4 , Launcher , Theme

CM10.1 CM9 GALAXY S4 TW theme v3.5.8 Apk Download Free

Requires Android:2.3 and up
CyanogenMod 10.1, CyanogenMod 10, CyanogenMod 9 & AOKP: Galaxy S4 theme for the
                                                          T-Mobile theme chooser!!

App Review:

Please read all of this before complaining the theme doesnt work!!
If you have a problem, please send me an email instead of leaving a negative comment. I can help you via email, not via a comment..
[Themed (non)-system apps]
Apex Launcher
Nova Launcher
Trebuchet 
Default launcher
Action Launcher Pro
ADW Launcher EX
Apollo
Google Play Music
Android music player
Poweramp
Go Contacts EX
Go Dialer EX
exDialer & Contacts
Root Explorer
ASTRO Filemanager
OI Filemanager
ES File Explorer
Solid Exporer Beta
Camera ICS
Camera ICS+
Camera JB+
Camera Launcher for Nexus 7

Now supporting Android 4.2.1 JellyBean!

What’s in this version:

Google Keyboard (Play Store version) fixes




Here is the link for Download........................

DOWNLOAD>> 


  
           Galaxy S4 HD Multi Launcher Theme v2.3 APK Download Free

Description:
This multi launcher theme is compatible with all five most popular launchers at the same time: GO Launcher EX, Apex Launcher, ADW Launcher, Nova Launcher and Holo Launcher.

THIS IS NOT A CONCEPT!

This Galaxy S4 HD Multi Launcher Theme is especially designed to give you the look of most faithful and latest version of Galaxy S4 Touchwiz to your phone or tablet, and with extra high quality graphics using 128x128 high definition sized icons and HD wallapers to give very detailed and defined graphics no matter your device's resolution.

You need either GO, APEX, ADW, NOVA, OR HOLO LAUNCHER EX INSTALLED to use this elegant theme.

THIS THEME FORCES NO PERMISSIONS TO RUN.
UNLIKE FREE THEMES, THERE ARE NO ADDS, NO PUSH NOTIFICATIONS, NO ADWARE.


This Galaxy S4 HD Multi Launcher Theme is compatible will all phone screen resolutions, and all android versions from 2.0 up. Even 4.x.x JellyBean devices.

Characteristics of this Galaxy S4 HD Multi Launcher Theme: 

   HD Graphics! All the artwork has been done in the highest resolution, with the original  
     Galaxy S4 icons & over 600 common app icons in alphabetical order done all in large  
     128x128 HD resolution, instead of the normal 72x72 standard icons commonly used in   
     the themes. Most autoreplaceable. The wallpapers are also in HD resolution. 
■  This is specially important in the higher screen resolution phones or tablets, or if you like  
     to use the "large icons" setting in some launchers. Makes your screen look very sharp and
     detailed.
  Special care has been taken to be the most faithful reproduction of latest Samsung's  
     Touchwiz interface of the Galaxy S4. From the custom high definition Galaxy S4 icons &  
     wallpapers to the details like exact matching color codes used, menu icons, the folder  
      interface, the appdrawer, etc
  Includes all the original Galaxy S4 wallpapers in HD resolution.
  This theme asks of no unsafe permissions to install. No adds. No adware.
  Includes Clock dial widget. For the Weather/Clock widget see bellow.

IMPORTANT!

  The Weather/Clock widget is not inlcuded in the theme, you can download free from  
    Google Play. Follow the instructions in the widget's app description to install it: gs3.ish.full

The Clock dial widget is included in the theme.

  This theme has close to 600 icons, but in some devices some icons may not change  
     automatically to the theme's icons. If an icon has not been replaced to the HD version of  
     this theme, check to see if its included in the theme & change it manually.

GO CONFIGURATION

   Set page indicators to show on bottom of the screen  -> Preferences -> Visual settings ->  
      Indicator -> Indicator position-> Bottom of screen
   To take advantage of the large resolution 128x128 icons included in this theme, you can  
      display the icons in a larger size on your screen -> Preferences -> Visual settings ->  
      Icons -> Icon size -> Large size.

APEX CONFIGURATION:

   Set folder preview style -> Apex settings -> Folder Settings -> Folder preview -> Fan.
   Set Appdrawer background transparency -> Apex settings -> Drawer Settings -> Drawer  
      background transparency -> set to 50%.
   Set the Appdrawer icon of the dock on the right side -> Simply drag the appdrawer  
      shortcut icon to the far right side of the dock.

ADW CONFIGURATION:

   Select fan view in folder preview -> ADW Settings -> Folders -> Folder Previews -> Fan
   Set the Appdrawer icon of the dock on the right side -> Simply drag the appdrawer icon to
      the far right side of the dock.

What's in this version: (Updated : May 29, 2013)
■  Fixed missing some icons.
■  Updated Hangouts icon that substitiutes Talk
  Improved the existing 600 themed icons and inlcuded a whopping 900 more! for a total of  
    1500 icons.
■  Icons are now arranged alphabetically in the icon pack so that they are easier to find when
     selected manually from the 1500 included icon



 

Here is the link for Download........................

Theme , launcher, GLASS APEX/NOVA/GO/SMART THEME apk

GLASS APEX/NOVA/GO/SMART THEME v6.0 Apk  Download Free


Requires Android:2.0 and up   | 29 MB |
Glass Apex – Nova – Go Launcher Theme!!!

Apps Review :


Installation Apex Launcher :


   Install Apex Launcher (Free or Pro)
  Install theme
  Open Apex Settings
  Open Theme Settings
■  Select and Apply Glass Theme

Installation GO Launcher :

■  Please Do Not open directly after it’s installed.
  Back to GO Launcher EX: MENU > theme preferences.
  Select and Apply Glass Theme

What’s in this version: 

  NEW APP FOR THE THEME YOU CAN OPEN IT FROM YOUR APP DRAWER
  ADDED WALLPAPER PICKER YOU CAN APPLY WALLPAPERS FROM THE APP
  ADDED 50 NEW ICONS AND MORE TO COME NEXT WEEK
  ADDED HOLO LAUNCHER SUPPORT
  REPLACED SOME SYSTEM ICONS FOR EXAMPLE ( GALLERY,SETTINGS CALCULATOR )
  FIXED ICONS NOT APPLYING IN SMART LAUNCHER
  FIXED MANY ICONS WAS NOT APPLYING
  FIXED ICON PICKER IN ADW LAUNCHER
  FIXED MANY ICONS WAS NOT APPLYING
  SORTED THE ICONS ALPHABETICALLY AND ADDED CATEGORIES FOR NOVA
    LAUNCHER

Here is the link for Download........................

Jelly Bean Extreme apk , Jelly Bean apk


Jelly Bean Extreme CM10 AOKP v3.4 Apk  Download Free

      
 Requires Android:2.3 and up | 15 MB |
 Custom, Original Design Work

App Review:


Custom Wallpaper

250 Custom Images!

Whats  Required :

ROOT is needed and a custom ROM like CM9/CM10/AOKP needed that supports the Theme Engine

This Theme will work for the following ROM’s- CM9
■  CM10
■  AOKP

This theme was designed and tested on Nexus 7, Galaxy Nexus & Motorola Razr

How to use with theme chooser:

■  Download Theme

  Go to Settings -> Themes
  Select JB Extreme and press apply 

You may get an error: ‘Sorry, this theme is missing assets for your device’s screen size’.


  Ignore that and press apply anyway
■  A message will display saying SystemUI has crashed, press OK
■  SystemUI will restore after about 5-10 seconds and theme will be applied
■  If you coming from another theme, you may need to reboot

Features: 


■  Background for power menu/volume menu/etc

  Switches are angled (like ICS)
  Weather and News widgets (genie widget) have semi trans background
  Power control widget has semi trans background
  Nova Folder backgrounds (platform, circle, square)
  Changed all grey icons on pull down to blue (including power widget)
  Changed all navigation buttons to custom ones, with a blue highlights
  Added some blue accents on pull down menu borders
  Changed the working circle
  Bottom menu background
  Popup menus (white and dark)
  Battery with and without percentages
  Cellular and Wifi Signals
  Animated notification icons for Gmail and Gtalk

    New Changes

■  Status bar close bar
  Notification icon background on pull down
  All AOKP toggle icons
  AOKP power, kill and search nav bar icons
  AOKP notification icon backgrounds
  AOKP pull down background
  AOKP misc icons
  Fixed notification header background
  Changed default wallpaper

What’s in this version : (Updated : Jun 1, 2013)

Check out BigDX Jelly Bean Extreme Multi Launcher Theme! Themes over 1,000 App Icons! Added

■  Themed and blacked out Google Play Music
  Support for Gummy,carbon & liquid roms
  More icons for PA Roms and AOKP
  Themed swype
  AOKP Ribbons Icons
  Halo PA Icons

    Cleaned

■  Icons in settings
  Loading spinner in framework
  Some of the internal code for the theme 

Here is the link for Download........................