i am exploring android build system, i have a question.
Example application is Calculator. I see the folder in packages/app/Calculator/Android.mk file, but this "Calculator" is not captured in the core.mk @ build/target/product/Core.mk
Which .mk file contains 'Calculator'.?
Related
This thread will serve as a bottom-up guide to modifying SPB Mobile Shell 3.5. Any help and links is appreciated and will be incorporated.
Last updated: 10/24/09
*Basics of SPB Mobile Shell 3.5*
Areas of the program that can be modified are based on an XML architecture.
Entering the Program Files folder, one finds many files named *.dat. Many of these correspond to concepts or widgets that are easily familiar: clocks and etc., and several of them are responsible for the larger structure and feel (qa_layouts, for example). A more comprehensive listing of all the include files is:
[To come]
*.DAT Structure*
.dat files that can be modified are actually standard .zip archives. Simply copying them over to your PC, changing the file extension from .dat to .zip, then opening the archive and extracting the files inside, shows you all that comprises a given widget or layout.
assword: In extracting files from the .zip, one will be prompted for a password, which is universally b0fm18zq .
The files contained in an archive are generally a mix of .xml files (determination layout, composition and functionality) and .bmp (image files that correspond to the different looks a widget may have). The .xml files may be viewed and edited in any standard text editor, like Notepad++, and the .bmp files can be viewed and edited in anything from Photoshop to Microsoft Paint (though, for exactitude, Photoshop or similar is best).
*What Goes Into a Widget*
A widget is defined by three specific files (with filename containing the three prefixes qa_, va_, and ma_), as well as by XML references in files like qa_layouts.dat and qa_layouts_bup.dat.
*Simple Widget Appearance Modification*
Luiggi's 9 Icon Build Guide: http://rapidshare.com/files/101365258/9_Icon_Build_Guide.zip
Just making a quick link here to another forum thread for Vostradamus Mobile Shell Manager. Besides the app there's also a lot of information there on how to modify widgets:
http://forum.xda-developers.com/showthread.php?t=689087
I have flashed it on my Note, it works well.
I in no way created this, just thought it may be worth while.
The operation of this template is based on the VillainTheme System for the ROM VillainROM.
Link: http://www.villainrom.co.uk/forum/sh...inTheme-System
Credits and thanks to all XDA team that collaborated on the original script: Doctorcete, Stericson, Matt and Seshy​
What is Universal Flasher Tool?
is a complete template that is used to create the simplest possible way a subject flashable from recovery without the need to include or edit files. apk.
This new method uses the file system implementation metamorph (just have to put files and folders on their respective routes), with the advantage that the system identifies and injected into their applications without the need for external application. The subjects are flashed directly from recovery.
What are the advantages of this method compared to metamorph or traditional flasheables issues?
Do not include. Apk complete, only the files you want to include in the subject.
A theme created with this template is valid for any rom, even among different phone roms (the tests have been performed with SGS2 and Nexus one).
Optionally, the template can include complete files if desired, can even be used to install applications not system.
Does not depend on external applications like metamorph because it flashes directly from recovery.
Operation of the template
at the end of the post are attached a number of considerations to take into account, but basically works like this:
Identify the applications that want to thematize and checks that exist in the rom. Once the check, the system compares folders that will be introduced as well as files and injects them into the apk as long as the new file exists within the apk. This has been thought well to avoid filling an apk with files that do not belong because they are from another rom or because you made a mistake when typing the name, for example.
Once injected the files takes a zipalign the apk to optimize RAM usage.
Alternatively, if the topic includes external files or copy them to install applications on your path.
At the same time to be using the item, the system will generate a backup of changed files and automatically creates a file. Zip flashable from recovery, in case something goes wrong or do not like changes to previous state.
Finally, it also generates a small log with the outcome of the whole process is recorded in SD to verify that all changes are properly implemented.
How to create and edit your own theme
Download the template from the attachment in this post or the link below.
Recommended Tools: 7zip to include files and browse the file system (you can also use winzip or winrar without problems) and Notepad + + or any other plain text editor to edit the name of the mod.
Once downloaded, open the template double-click will observe and folders inside a file in the root. Here's that are in each folder and how to create the theme.
MOD.config file: (new from version 3.0) is an editable text file (recommend Notepad + +) where in addition to establishing the name of the MOD to set different parameters of the template.
MOD_VERSION= Name (name of the mod to be displayed in the system properties after the name of the rom. Are cautioned not to put a name too long and try to avoid as far as possible in the blanks.
CLEAN_MORPHING = not (compare the new files before injection into the apk, only enter if the file already exists. Turning the option dramatically reduces speed)
V4_MORPHING = yes (support to manage compatibility with existing folders-v4 system in some applications).
DO_BACKUP = yes (enable or disable the creation of the flashable backup from recovery to restore the existing theme).
LOG_ENABLED = yes (enable or disable the creation of a log file with the results of the process).
SCREEN_LOG = yes (shows the process of recovery on the screen or not. important notices are always shown even if the option is disabled).
Optionally, you can set a different path for memory cards (no need to touch these lines in most cases, you should not touch):
default_internal_sdcard = / EMMC
default_external_sdcard = / sdcard
Optionally, you can add special commands to mount partitions (no need to modify these lines in most cases, you should not touch):
mount_system = mount / system
mount_data = mount / data
README.txt:
Includes some additional instructions on the operation and the license. Please read before using the template to create a theme (in English). Carteta / tools: is the folder where you have placed the scripts and binary files necessary to flash the issue and make subsequent restoration. You do not need to touch anything in this folder to edit the theme. From version 3.0 has been deleted because busybox binary is no longer involved in the process. folder / META-INF folder system which includes the signature file and the script to launch from recovery. It is recommended not to touch. Folder / MORPH: This is the template folder where files should be included with the theme. In turn, the folder is divided into two subfolders called / data (for applications theming system NO) and / system (for theming system and applications framework). In the / MORPH / system / app files are included for the applications and / MORPH / system / framework for the framework files. NOTE: NO application theming system in / MORPH / data / app / myapp.apk supposed to change the digital signature, so from that time can not be updated from the market or will you installed in the market (like if it had been installed by 'other means' non-statutory ...). Therefore, we do not recommend any downloaded application thematize the market. You are advised that the complaints do not come then ... For each application you want to thematize must open a new folder called / nombre.apk (eg / Contacts.apk if you want to change the system application Contacts.apk) . It is necessary to respect the use of upper / lower case. Within each of these folders you have to respect that there are logical paths within applications, so that the files would have to place them in folders named / res / drawable, res / drawable-hdpi, etc ... It is the same structure metamorph an issue, so any item is readily convertible metamorph simply dragging folders.
No need to create any control file or anything like . The system is responsible for reviewing the folders to see what applications you want tematitar.
Folder / Xtras / system:
in this folder is where, if desired, can include files or complete applications that you wish to flash in conjunction with the subject. For example, sound files, bootanimation, scripts, complete applications, etc ... Folder / Xtras / data: in this folder is where, if desired, can not add applications to be installed system during flashing. Folder / Xtras / sdcard: in this folder you can add files to make copied to the SD card, as packs of icons, sounds, videos, etc ... to take into account considerations
Always respect the use of uppercase / lowercase letters in the names of files or folders and logical paths located within the apps.
With this system the themes may be universal, although depending on the type of files a user input may cease to be:
If you only include image files theme is compatible with any rom from any phone.
If you also include. xml may only operate in one rom, but can still work on future updates of it.
If resources are included for translations (resources.arsc) the issue would only be valid for a particular rom.
The. Zip with the issue is not necessary for you to sign flashearse, and is valid for CW-Recovery and Recorevy-RA. If you do not have to remember signing off signature checking before flashing.
Original Thread:http://http://www.htcmania.com/showthread.php?t=258333
Also:http://forum.xda-developers.com/showthread.php?t=1474686
On the galaxy s 3 us version most of the recoverys are not reading the external sd so should I changed the mounts on the script?
Sent from my SGH-T999 using Tapatalk 2
I've always searched for a way to dex jar libraries once and then simply merge them when building the Android app.
Now the current version of dx (from the Android SDK 4.1.1) contains a DexMerger class.
You can call it directly with java -cp com.android.merge.DexMerger to merge 2 .dex files together.
dx itself uses this class when you dex a directory with .class files and there are archives (.zip, .jar, .apk) containing a classes.dex file. These classes.dex files are then merged with the dex file to be built from the .class files.
The problem is that dex files created with DexMerger do not work. APKs built this way are not installed.
Does anyone know how to make this work?
Where could I contact the Android SDK developers to ask them directly?
Tom
Plugin Installation:
Open the Plugin Manager
Choose Install a Plugin
Choose the plugin you want to install
Choose Run a Plugin
Choose the Plugin you want to run
Enjoy!
NOTE: The usage instructions in each plugin description below assume you have already installed it. When the instructions end, that's when you run the plugin from the plugin manager.
SuperR's Kitchen Plugin Descriptions
SuperR Maintained Plugins:
add_placeholder
Only for system-as-root devices
Adds placeholder files to all empty directories in your project
add_remove_files
Add all apk files from a directory
Choose apk to import
Choose directory structure to import
Delete files from your ROM based on directory structure
NOTE: To use "Choose directory structure to import" and "Delete files from your ROM based on directory structure", your directory must be set up as the following example:
Code:
your_directory_name/system/anything_you_want
your_directory_name/vendor/anything_you_want
your_directory_name/cache/anything_you_want
your_directory_name/hidden/anything_you_want
your_directory_name/boot.img
The above is only an example. You can add anything you want as long as there is a "system" directory inside another directory. When choosing the directory, choose your_directory_name instead of system or it won't work. Think of the directory structure exactly like the kitchen project directory. When you import directory structure, your directory will be copied into your project directory and files will be overwritten if they already exist. When you remove a directory structure, you will choose your_directory_name again and the plugin will remove the same files it finds from your project directory.
amlogic_unpack
Unpack Amlogic firmware img
apktools
Choose an apk from your current rom directory.
Decompile the apk.
Build apk.
Sign apk with 3 options (use signapk.jar, copy original META-INF to new apk, or copy new classes.dex and resources.arsc to original apk).
Move apk back to where it came from.
Patch smali using .ptch files
Delete META-INF from all apk files
Delete SEC-INF from all apk files
Separate lib directory from all apk files
Zipalign apk files
aroma_install
Install Aroma in your existing ROM.
Create aroma-config using a menu.
Choose apk files to add to the option menu.
Usage:
Extract your ROM normally using ONLY set_metadata or set_perm.
autorom_config
Creates an AutoROM config file to automate the extraction process and many other tasks.
Currently supports perm type, vendor.img, rom name, custom signature, deodexing, root, su.d, and Busybox
buildprop_add
Adds lines from a file to build.prop.
concatimg
Combines partition_*.img files into a single img file
custom_zip
Create a flashable zip of one or more image files as long as you know the partition name where it should be flashed.
Create a flashable patch zip from directories that have matching fs_config and file_contexts3 files
Convert updater-script to update-binary script for use in the mods_install plugin
Usage:
Copy the partition images and/or directories you want in the zip into a new directory in your project.
In the kitchen main menu, choose Plugin Manager > Run a plugin > custom_zip
Choose the new directory from the list.
For img files in by-name devices, type the partition name from your device where it should be flashed (ex. aboot)
For img files in mmcblk devices, choose your block from the list (add it to the device superr_mmc file if needed first).
decrypt_htc
Decrypt ruu.exe and ruu.zip files stored in your current project directory.
Extract system.img & boot.img to the current project directory for extraction.
Usage:
Copy ruu.exe or ruu.zip to current project directory (ruu.zip must be named exactly ruu.zip).
gapps
Downloads and includes Open Gapps in your ROM.
Choice of aroma, super, stock, full, mini, micro, nano, or pico
Detects Android version and architecture from ROM to download the latest available version for your device.
If there is no ROM, it will allow you to choose Android version and architecture.
Remove gapps if it already exists.
gen_set_metadata
Generates set_metadata lines for every file in project directories that have matching fs_config and file_contexts3 files.
img_tools
Allows rebuilding ext4 img files that have been extracted by the kitchen even if there is not a complete ROM in the project.
Convert sparse img to raw img
Convert raw img to sparse img
Build super.img
Resize img
super.img Build Requirements:
All included img files must be built as sparse.
img file names must be either partition.img or partition_new.img.
super.img size must be in 00_project_files/srk.conf.
Example:
supersize=9437184000
The numeric value in the example above is the raw super.img file size in bytes.
The kitchen adds the super.img size when unpacking a super.img. If the kitchen did not unpack the super.img, you can enter the size in srk.conf manually.
Optional values metadata-size and metadata-slots can also be added to srk.conf. Defaults are listed below:
metadata-size=65536
metadata-slots=2
*This plugin will only work in v3.2.1.0 or higher*
lg_tools
Unpack LG kdz files
Removes rctd, ccmd, and triton from LG boot.img.
mods_install
Add any flashable zip to your ROM that uses an update-binary script instead of a updater-script
Remove mods
Shows the kitchen added mods you currently have installed
ozip_decrypt
Decrypt firmware.ozip files
payload_dump
Unpack payload.bin firmware
rockchip_unpack
Unpack Rockchip firmware img files
samsung_tools
Asks one-by-one if you want to add ro.config.tima=0, ro.config.knox=0, ro.securestorage.knox=false, ro.securestorage.support=false, ro.security.mdpp.ux=Disabled, and wlan.wfd.hdcp=disabled to ramdisk default.prop
Create tar.md5 from all img, mbn, ext4, and bin files in your ROM directory.
Create tar.md5 from all the above except system.img, system.img.ext4, boot.img, and recovery.img
Decode OMC/CSC
Deodex patch for Android 8.1+
Pack *_new.img files to lz4
sepolicy_injector
Converts sepolicy denials into allow rules, and optionally patches seplicy with the new rules.
Paste a denial
Read denials from 00_project_files/logcat.log
unsign_mtk_img
Removes MTK signature from img files
updateapp
Extract firmware.zip that contains UPDATE.APP
Extract img files from UPDATE.APP
Usage:
Place a firmware.zip or UPDATE.APP in your rom directory.
xiaomi_patch
Patches several things in Xiaomi firmware.
Usage:
Extract your firmware with the kitchen, then run the plugin.
xperia_unpack
Unpack Xperia firmware
Choose full firmware zip, an ftf file, or a sin file.
When choosing a sin file, all sin files in the project directory will be unpacked.
Respects the partition_extract_list variable from kitchen/tools/srk.conf
User Contributed Plugins:
None
Custom Plugins
The donate version has plugin support. This means you can integrate your own script into the kitchen. Each plugin must have its own directory inside the kitchen plugin directory, and it must be named the same as the plugin script.
Examples:
/kitchen/tools/plugins/example_bash/example_bash.sh (Linux, Mac)
/kitchen/tools/plugins/example_batch/example_batch.bat (Windows)
You can check the example plugins in the kitchen for more details and use them as templates for your own plugin.
There are 3 variables set in the example plugin to take note of:
bd = /path/to/kitchen
rd = /path/to/kitchen/superr_projectname
plugdir = /path/to/kitchen/tools/plugins/pluginname
NOTE: If you would like to contribute a plugin, please PM a link to the plugin for review.
This post contains the last working versions of all plugins that have lost native Windows support.
If you are running the kitchen in WSL, WSL2, Linux, or Mac you should use the kitchen plugin manager to get the latest versions of these plugins.
hi everyone,
just for more information i've used ionic framework to write my application and phonegap build to build it. cause of the ionic app structure it's impossible to add java files there. now that i decompressed it i can see java files in android folder. can i now add some extra java files here and build it again e.g. in android studio?