jBART

Автор: | 18.01.2013

«All-in-One» tool for Android rom developers

Current version: 3h
Graphics: DriffeX

Description

Application for automating rom translation process, deodexing roms, modifying Android applications, parcsing translation xml files to get difference between translation and original xml files, creating incremental OTA update files for roms. The core for editing applications (in free license) is apktool.

Screenshots (from version 2a)

01_jbart2a_deodexer

 

02_jbart2a_rom_file

 

03_jbart2a_translation_parser

 

04_jbart2a_single_file

 

05_jbart2a_ota_creator

 

06_jbart2a_settings

 

07_jbart2a_logs

 

07_jbart2a_about

Deodex

De-odex: Apk files have respective odexes that devs use to supposedly save space. Deodexing means you convert it back to a .dex file and put it back inside the apk. This allows you to easily replace files (not having to worry about odexes), but the main point was to deodex services.jar so that you can change all text to different colors (such as the clock color to white) and to deodex services.jar, you need to deodex everything.

ROM translation

translator

Main repo (you allowed to select more than one repository to add several languages/translations to the rom) — the main translation repository.

Extras repo — repository with file replacements (apk, jar, boot.img, etc.). All these files will overwrite files in out rom file.

Patches repo —  repositories with patches for resources (xml resources, such as strings.xml, arrays.xml, etc.).

  • «Automatically compile after decompile» allows automatically start compiling after successfull decompiling. If you need to change some files after decompiling rom, you have to turn this option off.
  • You can see realtime jobs log at the «Log» section.

Directory data/settings

This directory contains a lot of configuration files.

alt_rom_name.conf

Output rom file naming rules.

  • «bz_v»+ro.build.version.release+»_»+ro.product.device+»_»+ro.build.version.incremental+».zip»

ro.build.version.release, ro.product.device и ro.build.version.incremental — these directives from system/build.prop file, you can use any data from build.prop file.

deletefiles.conf

The list of files to delete from output rom

#This is comment

system/recovery-from-boot.p
system/etc/cdrom_install.iso
system/obj
system/tts

etc.

dpifilter.conf

Allows to exclude drawables from apk files, that is for higher resolution than supported by rom’s device.

Example: We have rom for Xiaomi Mi2S (aries), some applications could contain xxhdpi drawables, but device is only xhdpi. So if we have this line in config — aries=xhdpi, all drawable-* folders with higher dpi (xxhdpi, xxxhdpi) will be deleted from the apk.

 

5. repo.*

Repositories configs.

One line from config:

  • github::BurgerZ/MIUI-v5-Translation=Russian translation for MIUI v5 (BurgerZ & Driffex)

First part (before ::) — repository type, Second — address, Third — the name to show in repositories list.

Supported types:

  • github::BurgerZ/Android-v2-extra=Extras for Android v2 (BurgerZ)
  • bitbucket::iBotPeaches/ma-xml-4.0-spanish=Spanish Translation for MIUI v4 (ingbrzy)
  • url::full_direct_url_path_to_the_zip=Name to show in repos list
  • folder::/home/username/MIUI-v5-Translation=Name to show in repos list
  • package::/home/username/MIUI-v2-Translation.zip=Name to show in repos list

 

Directory data/patches

Directory with patches for smali files, AndroidManifest.xml files, build.prop files, and any files in roms.

buildprop_patches.conf

Allows to add/edit any property in build.prop.

To be continued…

 

System requirements

  • Windows, Linux, Unix, Mac OS X (or other OS that supports JRE/JDK)
  • Java Runtime Environment (JRE)  1.8+
Changelog
  •  

Download

Download the latest version