Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,786,401 Members 43,773 Now Online
XDA Developers Android and Mobile Development Forum
Announcement from amarullz: 2.70 RC2 - RELEASED

[APP] AROMA Installer

Tip us?
 
amarullz
Old
#1  
amarullz's Avatar
Recognized Developer - OP
Thanks Meter 6,237
Posts: 1,033
Join Date: Jan 2007
Location: Bandung

 
DONATE TO ME
Default [APP] AROMA Installer


The World's First ANDROID Touch And Customizable ROM Installer

Don't Forget To Donate To Me:


------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------
_________________________________________

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!

_________________________________________
------=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=------

W.A.R.N.I.N.G.!!!
THIS DEVDB DISCUSSION ONLY FOR DEVELOPMENT DISCUSSION.
USE Q&A TO ASK ABOUT SCRIPT, HOW TO, AND INSTALLATION
  • FOR ROM CHEFS/DEVELOPERS ONLY
    ROM Chef/Developers? What is that? ... Here the video.
    DON'T ASK ABOUT HOW TO INSTALL IT, BECAUSE IT MEANS YOU DON'T KNOW WHAT IT IS FOR
    IT ISN'T AN APPLICATION YOU CAN USE OR INSTALL ON TO YOUR PHONE LIKE ANGRY BIRDS OR FACEBOOK

  • MOST IMPORTANT THING BEFORE CUSTOMIZING IT
    Make sure You took an update-binary from a working ROM, renamed it to update-binary-installer and overwrote the one in my AROMA Installer zip

  • BACKGROUND
    Android 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.

  • 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 Works?
    How 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 :cool:.

    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.

  • Benefits For Users
    AROMA Installer gives users the possibility to choose which mods and applications they want to Install on to their device. Sometimes we want the clean install, without bloatware; and sometimes we want the full set of applications on our device. With AROMA Installer, you are your phone's master!

  • Benefits For Chefs/Developers
    AROMA Installer gives chefs many benefits:

    You don't ever again have to hear someone ask to remove or include something they like into your ROM, just for you to yell "Hey, that is only your opinion! Only you and some other people like it; most people don't! Go remove the apps on your own with WINRAR, you ^$#&*&#$", remember they are still a customer :cool:, and with AROMA Installer, this problem can be solved.

    If you are good at customizing the AROMA Installer it was possible to make your ROM compatible with many devices using just one ROM File. You save your time, bandwith and hosting maintanance.

    With the great user interface in your ROM installation, users will be very happy with it.

    With AROMA Installer, You Are The Greatest ROM Developer


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-09-15
Attached Thumbnails
Click image for larger version

Name:	aroma.zip.screenshoot-1.jpg
Views:	20740
Size:	24.7 KB
ID:	2195683   Click image for larger version

Name:	aroma.zip.screenshoot-2.jpg
Views:	19767
Size:	56.5 KB
ID:	2195684   Click image for larger version

Name:	aroma.zip.screenshoot-3.jpg
Views:	19421
Size:	31.7 KB
ID:	2195685   Click image for larger version

Name:	aroma.zip.screenshoot-4.jpg
Views:	18878
Size:	21.6 KB
ID:	2195686  
The Following 127 Users Say Thank You to amarullz For This Useful Post: [ Click to Expand ]
 
amarullz
Old
(Last edited by amarullz; 18th August 2013 at 01:29 AM.)
#2  
amarullz's Avatar
Recognized Developer - OP
Thanks Meter 6,237
Posts: 1,033
Join Date: Jan 2007
Location: Bandung

 
DONATE TO ME
Default Reserved

Reserved for Release and Development Information
The Following 10 Users Say Thank You to amarullz For This Useful Post: [ Click to Expand ]
 
amarullz
Old
(Last edited by amarullz; 18th August 2013 at 01:29 AM.)
#3  
amarullz's Avatar
Recognized Developer - OP
Thanks Meter 6,237
Posts: 1,033
Join Date: Jan 2007
Location: Bandung

 
DONATE TO ME
Default Reserved

Reserved for Wiki and Manual Table of Contents
The Following 11 Users Say Thank You to amarullz For This Useful Post: [ Click to Expand ]
 
jonahly
Old
#4  
jonahly's Avatar
Senior Member
Thanks Meter 130
Posts: 635
Join Date: Oct 2012
Location: Ashland
Nice.

Sent from my LG-LS970 using xda app-developers app
Devices
Sprint LG Optimus G
ROM: Blue Lightning
Kernel: 1.7Ghz
Lenovo ThinkPad A1000
Soft-Bricked.
The Following 2 Users Say Thank You to jonahly For This Useful Post: [ Click to Expand ]
 
JustArchi
Old
#5  
JustArchi's Avatar
Recognized Contributor / Recognized Developer
Thanks Meter 21,912
Posts: 6,713
Join Date: Mar 2013
Location: Warsaw

 
DONATE TO ME
Yay, first feature and review sent

Keep up awesome work amarullz!

Twitter

Galaxy S3: ArchiDroid 2.X | ArchiDroid 1.X | ArchiKernel | ArchiPort
Xperia M: ArchiDroid 2.X
Other: ArchiKitchen


Have a question? Use Q&A. My inbox is restricted to development only.
 
Mervingio
Old
#6  
Mervingio's Avatar
Senior Member
Thanks Meter 403
Posts: 1,498
Join Date: Mar 2011
Location: Elysium
Reading and Learning
The Following User Says Thank You to Mervingio For This Useful Post: [ Click to Expand ]
 
Turge
Old
#7  
Turge's Avatar
Recognized Developer
Thanks Meter 19,717
Posts: 4,753
Join Date: Sep 2008
Location: Hamilton

 
DONATE TO ME
Hey Amarullz,

Where are you at with the dynamic/JSON stuff or have you already implemented it?

Also, are you aware of Aroma randomly hanging at 0% when launching aroma-binary-installer? This happens on the HTC One.

Thanks,
Turge


Want to give something in return? Follow our project here.
The Following User Says Thank You to Turge For This Useful Post: [ Click to Expand ]
 
c3n_dhol
Old
#8  
c3n_dhol's Avatar
Senior Member
Thanks Meter 14
Posts: 122
Join Date: Feb 2013
Location: Salatiga
Hiduplah Indonesia Raya...

Sent from my HTC Butterfly using xda premium
The Following User Says Thank You to c3n_dhol For This Useful Post: [ Click to Expand ]
 
clark44
Old
#9  
clark44's Avatar
Senior Member
Thanks Meter 6,647
Posts: 2,764
Join Date: Mar 2011
Location: Virginia

 
DONATE TO ME
If you need a S4 tester im available right now and can join IRC.



Phone: Samsung Galaxy S4 16GB White
Recovery: TWRP!
ROM: FreeGS4 v4.0.0
Modem: MDL

IRC Channel: #TeamSonic Freenode
FreeGS4 For Sprint By Team Sonic
FreeGS3 For Sprint By Team Sonic
Lean Stock SGS3 Sprint
Bekinged EVO 4G
Absurd Rom
How-To Root S-OFF Evo 3D
ICS SDK Port For HTC EVO3D
The Following User Says Thank You to clark44 For This Useful Post: [ Click to Expand ]
 
bgcngm
Old
#10  
bgcngm's Avatar
Recognized Developer
Thanks Meter 3,388
Posts: 3,366
Join Date: Apr 2007
Location: Lisbon

 
DONATE TO ME
Was I the first one using the bug report feature?
Latest custom ROMs: ZTE V987 (MT6589) / ZTE V970 (MT6577)

If you like my work, please feel free to donate...


The Following User Says Thank You to bgcngm For This Useful Post: [ Click to Expand ]
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes