XOLO A700 Deodexed Firmware
The amount of people asking for Deodexed XOLO Stock Rom was too much so thats why I am posting here! You can use this rom as base for your rom, Just PM me with a link to the thread!
This is the "FULL ROM" not just the App & Framework Folder
FEATURES:
Latest Busybox (Completely Symlinked).
Latest Indian firmware.
Rooted with latest Superuser.
Fully stock, no changes in UI.
Now works with any kernel.
Bugless & Rock Solid Stock Build.
INCLUDED KERNEL DETAILS:
STOCK Kernel
DOWNLOADS:
XOLO_A700_S107_1108
MD5: 54eed344f914ea87d4814a874323b695
SCREENSHOT:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
INSTALLATION:
Reboot into CWM.
Format system, cache and data.
Mount all partitions.
Flash ROM.
ADDITIONAL INFORMATION:
Know why you should "even" think of using the odexed version.
WHAT IS AN ODEX FILE?
In Android file system, applications come in packages with the extension .apk. These application packages, or APKs contain certain .odex files whose supposed function is to save space. These ‘odex’ files are actually collections of parts of an application that are optimized before booting. Doing so speeds up the boot process, as it preloads part of an application. On the other hand, it also makes hacking those applications difficult because a part of the coding has already been extracted to another location before execution.
THEN COMES DEODEX
Deodexing is basically repackaging of these APKs in a certain way, such that they are reassembled into classes.dex files. By doing that, all pieces of an application package are put together back in one place, thus eliminating the worry of a modified APK conflicting with some separate odexed parts.
In summary, Deodexed ROMs (or APKs) have all their application packages put back together in one place, allowing for easy modification such as theming. Since no pieces of code are coming from any external location, custom ROMs or APKs are always deodexed to ensure integrity.
HOW THIS WORKS
For the more geeky amongst us, Android OS uses a Java-based virtual machine for running applications, called the Dalvik Virtual Machine. A deodexed, or .dex file contains the cache used by this virtual machine (referred to as Dalvik-cache) for a program, and it is stored inside the APK. An .odex file, on the other hand, is an optimized version of this same .dex file that is stored next to the APK as opposed to inside it. Android applies this technique by default to all the system applications.
Now, when an Android-based system is booting, the davlik cache for the Davlik VM is built using these .odex files, allowing the OS to learn in advance what applications will be loaded, and thus speeds up the booting process.
By deodexing these APKs, a developer actually puts the .odex files back inside their respective APK packages. Since all code is now contained within the APK itself, it becomes possible to modify any application package without conflicting with the operating system’s execution environment.
ADVANTAGES & DISADVANTAGES
The advantage of deodexing is in modification possibilities. This is most widely used in custom ROMs and themes. A developer building a custom ROM would almost always choose to deodex the ROM package first, since that would not only allow him to modify various APKs, but also leave room for post-install theming.
On the other hand, since the .odex files were supposed to quickly build the dalvik cache, removing them would mean longer initial boot times. However, this is true only for the first ever boot after deodexing, since the cache would still get built over time as applications are used. Longer boot times may only be seen again if the dalvik cache is wiped for some reason.
For a casual user, the main implication is in theming possibilities. Themes for android come in APKs too, and if you want to modify any of those, you should always choose a dedoexed custom ROM.
Prevent this thread from dying.
Rate this thread ★★★★★
Press "Tip us?"
Press thanks
Post in this thread (I am not asking you to spam!)
Click to expand...
Click to collapse
Reserved
Related
When you take a look at the original ROM file for the ACE device you will see this files below:
- hboot... bla, bla, bla (which is self spelling)
- boot.img (...no comment...)
- recovery.img (...no comment again...)
- system.img (...we all know what's inside)
...a few more files and...
- lib.img (...uhhh??? what's this???)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
When you open the lib.img there you can find all the files which belongs to the /system/lib folder.
So far - everything seems to be O.k. BUT now my problem and question.
When I use the PD98IMG.zip to install my device and do a backup with the RECOVERY tool and create .tar files - the /system/lib folder within the backup is empty.
When I do a wipe of my device and erase EVERYTHING on it and I try to restore my backup file this fails. This was driving me nearly crazy until I have found that the /lib folder has his own partition.
First I need to restore the original PD98IMG.zip and after this I'm able to successfully restore my backup.
On the one hand this is a great thing because this will offer more space within the /system partition and this will give the DEV's more options for porting ROM's from and to other devices.
On the other hand - where the hell is the /lib folder or partition or whatever located on the DHD device???
Regards!
I think these files are from the Sense 3.0 leaked ROM for ace rite?
For some reason they've made a separate lib.img & if you want to know how exact & where it is extracted during the installation, unpack boot.img & check init.rc / init.spade.rc..
You'll see few lines in either of the files related to extraction of lib.img..
hope this helps
fshami said:
I think these files are from the Sense 3.0 leaked ROM for ace rite?
For some reason they've made a separate lib.img & if you want to know how exact & where it is extracted during the installation, unpack boot.img & check init.rc / init.spade.rc..
You'll see few lines in either of the files related to extraction of lib.img..
hope this helps
Click to expand...
Click to collapse
Yep m8, this is related to the leaked 3.06 ROM for the ACE.
I guess this might be interesting for some DEV's and this is also a thing which needs to be covered by the guy's who are developing the kernels and ramdisk for the ACE.
Also the 4EXT Recovery should be adjust for the ACE device.
From my point of view this is a good solution to get more space on the /system partition.
The next thing is /data/at folder within the original dzdata.img and the sub folders. This folders will be mounted automatically to the /system partition. Don't know how...
Let me give an example for WhatsApp.apk
The original dzdata.img contains this folder structure:
/data/app
/data/at/app
/data/at/lib
/data/at/plugin
If I store this file within /data/at/app I can use WhatsApp without creating an hard link to the /system/apps folder.
All this things might be interesting for the DEV's.
Just a quick (related) question. How do you unpack dzdata.img?
It might not be a hidden/new partition. Quite the contrary. Notice that with the 3.06, there's a new hboot shipped. I'm theorizing, that it changes the partition layout, chopping up /system into smaller partitions. Now, as we all probably use the eng hboot and a custom update-script for unsigned roms, this doesn't concern us.
Or at least that's my theory. I remember in the sapphire/magic days, the new radio would allot more flash space to /system to fit in SenseUI, while old radio would allot more space to /data.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Ever tried to completely customize your droid? Where comes customizing, there comes fonts. "Most" of the users change their fonts using android applications such as FontChanger or so...
This tool will help you make flashable zips for those fonts. So, you can just drag them into your SD Card, and keep them there like, forever. You don't need any, nor do you need to pay anything to download those apps which will help you "change" the fonts. All you need is 4 *.ttf files, for the four styles of a font. If you do, you're ready to go!
What's NEW!!! Its AROMA! Flash-Font now automatically creates an AROMA included flashable zip for your fonts!
Also, you now have the possibility of naming your font installation package!
Features:
Aroma Installer
update-binary from your own ROM. [Accomplished]
More efficient cleaning method for the /fonts folder. [Accomplished by adding a place_holder]
Automated Renaming [Sort of accomplished]
Expected Changelog:
GUI interface.
Reverting to stock fonts
Defined Fonts (example: normal.ttf, bold.ttf, bolditalic.ttf, clock.ttf, etc...)
Your requests
Code:
#include
/*
* You are on your own.
*
* I am not responsible for any sort of damage to your
* phone/computer, as a result of usage of this tool.
*
*/
Do not pass this off as your work! Give appropriate credits even if you make modifications to the script.
Click to expand...
Click to collapse
This is to simplyfy the work of making a flashable fonts zip for a ROM. I have noticed that there are many apps, which do the same thing, but, sometimes, they don't work. Using this simple tool, you can make a flashable zip for your fonts. Also, this contains the fonts from CM10, so, it will NOT cause problems with previous versions of CM. AOKP has the same fonts too, so it wouldn't be a problem. Doubtful about PAC, and PA.
Note:
This will work only on Custom ROMs like CM, AOKP, etc. Have tried on CM, MiniCM, AOKP... Haven't tried on other ROMs... But, as long as the names of the fonts are same/similar, it is bound to work. Also note that, This method uses "symlinking" of fonts, so that you get some extra free space in your /system folder. As only four styles (Regular, Bold, BoldItalic, Italic) are used almost universally, one has to just have all these four font styles of a font. Also note that only *.ttf type fonts work with Android, so... And, talking of symlinks... You will get two files in the output_zip folder, namely, fonts_system.zip and fonts_data.zip. "fonts_system.zip" extracts the fonts, as-is, to the /system folder, whereas, "fonts_data.zip" clears the fonts in /system/fonts, creates a folder named "fonts" in the /data partition, extracts the fonts to the /data partition, and symlinks those to the /system/fonts folder. Thus, if you are running short of space on your /system partition, and don't think you will have enough space to flash the fonts, you can use the fonts_data.zip.
Requirements: You need 4 font styles of a single font for this, namely:
1. *font_name*.ttf (Regular)
2. *font_name*-Bold.ttf (Bold)
3. *font_name*-BoldItalic.ttf (BoldItalic)
4. *font_name*-Italic.ttf (Italic)
Instructions:
Place the four *font_name* files into orig_update/. Rename them into:
Code:
normal.ttf
bold.ttf
bolditalic.ttf
italic.ttf
At times, you may have only one *.ttf file. In such a case, just make four copies of it, and name each copy as "normal.ttf", "bold.ttf" etc.
Now, run the following commands.
First,
Code:
cd mkfontzip
Then,
Code:
chmod +x ./mkfontzip.sh
Now, to start making the flashable zip:
Code:
./mkfontzip.sh
How to use:
First, you will need to decide which partition to use, to install the fonts. If you have less space in the /system partition, and, feel that the fonts are too big to fit into the /system partition, then, you need to flash the "font_data.zip".
If you feel you have enough space in your /system partition required to flash the fonts, then, you can gladly flash the "font_system.zip" file.
NOTE: If you are having any "int2ext" script installed, then, please flash the font_sd-ext.zip! You can even flash font_sd-ext.zip, if you have reversed mount enabled in Mounts2SD. Not tested with S2E.
One way to find out whether you have enough space in your /system partition:
FreeSpace: https://play.google.com/store/apps/details?id=ru.krikun.freespace
Click to expand...
Click to collapse
If you want to use this tool for any other device, then, please replace the update-binary in stock_files/update-binary/ folder with a working update-binary of your device.
Credits
@amarullz (For his awesome AROMA installer!)
Me and my computer :silly:
Downloads in next post :silly:
Downloads
Downloads:
NOTE: Users who have memory increasing scripts installed.... You can flash this addon ONLY IF:
You have int2ext or int2ext+ script installed.
You have Mounts2SD with "Reversed Mount" enabled.
mkfont.zip(version 1.6) (7.5MB): http://github.com/vineethraj49/flashfont
Click to expand...
Click to collapse
Do a "git clone". This version generates the font_sd-ext.zip
mkfont.zip(version 1.5) (6MB): http://www.mediafire.com/?dfbz8d4l04tyg5j
Click to expand...
Click to collapse
Github: https://github.com/vineethraj49/flashfont
Click to expand...
Click to collapse
Reserved
For later updates, or, if I want to add anything I forgot
Hi, thread moved...
This was first in the Android "General" section, but then, I thought that it would be better to have it in our section
P.S. Expect Automated Renaming arriving soon...
Some changes will be made in the method of making the zip
Working on Aroma installer!
And, obtained permission from @amarullz too :silly:
amarullz said:
vineethraj49 said:
Hi,
I am making a tool Flash-Font-A font installation creator! (http://forum.xda-developers.com/showthread.php?t=2255045) and am planning to add aroma installer to it... Do I have your permission to do so?
Appropriate credits will be given, because, I don't like "stealing" other people's works
Click to expand...
Click to collapse
Dont need any permission it was a honor for me if someone use my works
Sent from my Galaxy Nexus using xda app-developers app
Click to expand...
Click to collapse
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
The World's First ANDROID Touch And Customizable ROM Installer
When you install Linux, Windows, Mac or applications on the PC
You can always customize your installation as you want.
WHY CAN'T WE DO THE SAME INSTALLING AN ANDROID ROM?
BECAUSE NOW
AROMA Installer
GIVES YOU THIS POSSIBILITY!
BackgroundAndroid has an advanced system for installing the OS and updates, unlike other mobile OS's that distribute the contents of the OS in static ROM image(s), Android distributes the OS and updates in a plain .zip file that contains all of the packages, files, and the updater for processing the installation.
The updater splits in 2 types, the binary (update-binary) and script (updater-script), while the binary is an executable file, and the script was a configuration script that tells the binary executable what to do.
But this advanced technology never expanded into its highest potential ability. The update-binary was simply the linux executable wrote in C that runs in root mode, and can do anything to your system; including accessing the Display FrameBuffer, accessing keys and the touch screen, set vibrate, run programs, parse files, load png(s) and .zip's, and read and write to the filesystem.
The old update-binary only supported a few functions that can controlled only by the updater-script to instal the files. It didn't have a single function that allowed the installer to interact with the user. There is a program called "yesno" that shows a "Yes" or "No" interface, but it wasn't enough to create a more customizable updater.
Now with AROMA Installer update-binary, all of this limitation is gone, and this advanced technology is expanded to the highest level of its pontential.Read More at amarullz.com [+]
What is AROMA Installer"AROMA" was taken from Bahasa Indonesia (Indonesian Language) and it means "Scent", but it is also an abbreviation of "AMARULLZ ANDROID ROM MANIFESTATION". It is an advanced update-binary for Android that contains many features like Wizard Installation, Touch User Interface (AROMA UI), Customizable Packages, System Inspecting, Themeable, and User Interactive. All release versions will have "flower" codenames, for example, the 1st version is codenamed "Anggrek", which mean "Orchid".
How AROMA Installer WorksHow can it work in recovery mode, and how can it so smooth when it scrolls? It works because I hired Chuck Norris to force the recovery to run the installer, and the phone is too afraid to show any lag .
No, seriously, when the user selects the .zip file to install it, the recovery will extract the update-binary and run it with a few arguments. All processes are handled by the update-binary, and the recovery will only show the information passed by update-binary via a custom pipe. The great thing is that the update-binary can do anything if we can code it in C/C++, but not all people can easily play with C/C++. Its also not very effective or fun to compile it every time we need to change the process. That's why the custom script is used in AROMA Installer, it is simply edify scripting that is used as the normal updater-script, but with expanded functions available.
It wasn't a simple thing to archive something like this, because the update-binary is simply the "linux executable" that doesn't even support dynamic links of libraries, basic drawing functions like drawrect, drawline, and I don't think it OpenGL can be included in it's binary. It runs on it's own. Even User Interface was wrote from scratch to manipulate directly into the display framebuffer, user input was read directly from the raw kernel input device, png and .zip was read with a static link library, and the configuration was parsed in it's own program. It is the result of one full month of developing, but you can learn it instantly, without any need to know how to manage memory usage and pointers.
The AROMA Installer will read, parse, and run the script commands to show it's UI, calculate partition sizes, create, read, and write temporary prop files, set & get variables, do simple integer comparisons and math sequences, do the if else or inline if conditions, configure the UI color scheme, configure rom information, and much more.
Because it was very complicated and needed a lot of time to develope, did I earn some reason to get donations?.Donate To Me [+]
Flowchart How It Works
more at amarullz.com [+]
XDA:DevDB Information
AROMA Installer, a App for the No Device
Contributors
amarullz
Version Information
Status: Beta
Current Stable Version: 2.56
Stable Release Date: 2012-10-04
Current Beta Version: 2.70 BETA-6
Beta Release Date: 2013-06-24
Created 2013-08-17
Last Updated 2013-08-17
Dear sir,
I am from Viet Nam: Dev Team VN.
At Viet Nam, We always use your AROMA for ROM.
AROMA's very perfect.
Millions of thank you. (Sorry, I am limited to 8 thanks per day so I can not thank to this thread)
Last time, I remember when we use 40a2sd script for SDCard_to_internal
we were very happy.
- Finally -
Thank you so much, I do not know what to say in addition of thanks
"Cảm ơn các bạn" This is a sentence of Vietnamese.
If you need anything from us, we are ready
“The Friendship” is one of the most beautiful affections of mankind.
“The Friendship”of Indonesia’s team and VietNam’s team in particular and all countries in the world in general.
Some people don't know about an Odex or a Deodex Files. I'm gonna explain it to you in the most understandable way :highfive:
Almost all of the Rom here are deodex because it is easier to theme or modify the .apk file because odex files are hard to modify.
These .odex files are also in the same directory as the .jar or .apk file which is located at /system
What is an Odex File?
In system applications come in packages with the extension .apk. These application packages, or APKs contain certain .odex files whose supposed function is to save space. The odexed file structure works well as an optimization tool. Since these .odex files contain preliminary load information about each system app, the OS knows what to expect when it’s booting up, and consequently, it loads apps faster.
On the other hand, it makes the applications difficult to modify/theme 'coz a part of the coding has already been extracted to another location before execution.
For example, in a system app there is:
Phone.apk ===> next to it will be ===> Phone.odex
the Phone.odex has some part of the codes.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
What is a Deodex File?
It’s the process to take all the packages out from .odex file and reassemble them all together in classes.dex file which is kept inside the APK file in other word it will combine the .odex file to the .apk file and will become a classes.dex. By doing this, it can eliminate/remove the worry to modify the APK conflicting with some separate odexed parts.
In summary, Deodexed ROMs (or APKs) have all their application packages put back together in one place, allowing for easy modification such as theming. Since no pieces of code are coming from any external location, custom ROMs or APKs are always deodexed to ensure integrity.
Example on the same system app:
Phone.apk ===> will no longer have a Phone.odex instead it will be bought inside the Phone.apk as ===> classes.dex
Advantages and Disadvantages
Odex files can build Dalvik Caches faster on the first boot and execution of an app will be faster..
but harder to theme unlike
Deodex files can be modified easier than odex files but building Dalviks and executions will have a slight difference in .odex
Credits
to this Thread
and Google Images :laugh:
You
ME
UnBloatMi - Xiaomi MIUI Bloatware Remover
I have been searching for a script to remove Bloatware from my Xiaomi Redni Pro, and found a couple of different ones that do part of the job.
None were exactly what I was looking for, so I wrote a script of my own.
Although I tested the script on Redmi pro and MI5s only, it should be very usable for any Xiaomi device running MIUI 7 or 8.
In UnBloatMi I have combined multiple lists of MIUI 7 and 8 apps that should be safe to remove.
It also contains a couple that are less safe to remove, but the script will ask for confirmation before removing those.
Which is a big difference from other scripts; you get to choose what to remove and what to restore!
Backup location:
If you edit the script, you can change the backup location to use (by default "/sdcard/UnBloatMi")
You can of course also add more apps to remove to the list in the script. (instructions are in the comments)
It's not needed to remove files from the list, as it will not process files that are not on your device, and you can choose not to remove any app.
To Customize the Script:
Unzip the zip and edit the file under: META-INF\com\google\android\update-binary
This script is written in shell language (sh), so editing is somewhat different from "normal" EDIFY scripts that use the "updater-script" file.
I used part of the excellent template by osm0sis to create UnBloatMi
Install Custom Apps/Files:
You can also have the script install Custom files to /system folder. (So you can add another HomeLauncher, for example)
To have the script install Custom files, just add them to the Zip in "/system/app/" folder:
/system/app/YourCustomApp1/YourCustomApp1.apk
/system/app/YourCustomApp2/YourCustomApp2.apk
The script will automatically install them for you.
To use the Script:
You need to have TWRP Recovery installed.
BACKUP YOUR DEVICE BEFORE RUNNING THIS SCRIPT!!! (I recommend using TWRP Backup)
(even though the script allows you to restore your changes, something can always go wrong - press wrong button for example)
- Move the ZIP file to your SDCard, and install using TWRP Recovery
Basically, you can just follow the instructions on the screen, by pressing Volume buttons.
- The first run, you'll be asked what apps to remove. Backups are automatically made.
You can confirm each app, or choose to only confirm the more risky apps.
- If you run the script again (after testing your installation), it will detect the backups from the previous run.
You can then choose to restore the backup files, or delete them from your device.
- You can now also create a default UnBloat list, that can be used to UnBloat after flashing a (new) ROM.
It is created by checking for installed apps. If an app is not found on the device, it's added to the list
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Feel free to edit and change the script.
If you make any improvements, please let me know so I can add them to the script.
This includes reporting what apps caused problems when removed, or comments about apps.
You can find the script in: /META-INF/com/google/android/update-binary (or on GitHub by clicking the "Source Code" link below)
Instructions can be found in the comments of that file.
--UPDATE--
Added Step by Step Restore: You can now choose which apps to restore, so it is easier to troubleshoot your installation.
--UPDATE v0.2--
Added warning to SecurityCenter App (so it has to be confirmed). It caused bootloop on my device when removed.
--UPDATE v0.3--
Bugfixes, Added Apps, changed and added some app comments. Changed download link (GitHub download creates a folder too many)
--UPDATE v0.4--
Changed/Added menu's - Allows you to do more actions at once
Added apps and comments.
Added ability to save a default UnBloat list. This can be used to UnBloat after flashing a ROM.
Download
Source Code
Developer