July 25, 2014 By: Tomek Kondrat
When it comes to device testing, there are two types of people on XDA. The first group blindly believes that one additional benchmark point makes a particular ROM or kernel the best, and they install it immediately. The other group takes benchmark results with a grain of salt, and take them into consideration with other performance metrics. Antutu or Quadrant are two of the most popular benchmark applications available for Android. However, there are many, many more options available for those looking to test specific aspects of their devices.
Not every benchmark requires one to have a fancy application with a nice user interface. XDA Recognized Developer broodplank1337 proves this with a benchmark that consists of simply a BASH script that can be executed from a Linux terminal. Broodplank1337′s script measures the CPU integer via ADB using the bc binary ported to ARM. To run the test, your device needs to have the binary installed. To do so, ensure that it’s rooted. The script will then push required libs and perform a number of tests to determine your CPU integer performance. The main advantage of the script comparing to other benchmark methods is its speed. The lack of a UI makes using it blazing fast.
The script can only be executed from a Linux PC, so don’t yell at us while trying to run it on Windows. There is a pretty good guide of setting up Ubuntu on virtual machine, so you can use it as well. You need to install the binaries in order to perform the test, so don’t forget to execute the command ./score –install before going straight to testing.
You can find the script by visiting the benchmark thread. So, what’s your score? Share your results in the comments below.
May 24, 2014 By: Tomek Kondrat
RAM management works a bit differently on Android than it does in Windows. For example, more RAM doesn’t mean wasted memory in Android, but rather that applications are cached so that they can be accessed more quickly at a later time. There are plenty of interesting discussions on the topic, but that’s not the point of this article.
If you’ve ever tried to check the free RAM on your Android device, you probably used the free command in Terminal Emulator. This works the same way as it does in Linux, and it shows you both free and used memory. If you are using a swapfile, it’s shown as well. But if you want to learn more about your device’s RAM usage, you need additional tools like FreeXplain by XDA Senior Member zeppelinrox.
The FreeXplain script can be used to display more accurate information about used RAM. You can use a long list of operators, which show brief or more detailed information about usage of your physical memory. Usage is very simple: Just type freex, and you’ll get the results in user-friendly colors, so you can easily see the difference. Simple and efficient.
More information regarding RAM consumption and the script itself can be found in the original thread.
To build your very own source-built custom ROM, you need Linux or OS X running natively or through a virtual machine . But even most fully fledged distros can’t build Android without installing some dependencies. The only exception might be BBQLinux by XDA Senior Recognized Developer codeworkx.
A few weeks ago, we talked about scripts to build a ROM or kernel easily. Since then, this project has expanded. If you run Ubuntu, Arch, or a spin-off like Xubuntu, Lubuntu, or Manjaro, you are probably looking for an easy way to set up this build environment without googling which packages should be installed. Luckily, XDA Forum Moderator laufersteppenwolf wrote a simple BASH script that does all the work for you.
This script automatically detects your Linux distro and uses the appropriate package manager (APT or AUR) to get the necessary files and install them. It also takes care about Java and installs Open JDK or the JDK from Oracle. With a few quick and easy edits described in the thread OP, you can add your favorite packages or simply make your time during compiling less boring.
You can find the setup scripts, as well as other useful tools for ROM builders in the original thread.
May 11, 2014 By: Tomek Kondrat
With a much certainty, we can say that Aroma is one of the most widely used projects here on XDA. We have talked about it countless times in the past. This system was created by XDA Recognized Developer amarullz, and it has since dramatically changed how we install ROMs, kernels, and flashable modifications by allowing us to select which applications, libraries, and boot animations we would like to have installed. It’s almost a given that everyone reading this has already seen a thread with the word AROMA in the title.
Aroma is a great tool, but can be little problematic when you are using it for the first time. Aroma beginners should try out tool made by XDA Senior Member Madaditya. Lazy Aroma is a Windows batch script that helps you begin Aroma more easily. With this script, you can perform such actions like building the initial Aroma windows, adding some comments and information, and even creating the updater-script that launches the Aroma window during installation. To try out Aroma with your personal project, you need to have it on your PC and let the script do its magic.
If you are a developer looking to give your users more freedom, visit the tool thread and give Lazy Aroma a try.
Creating a kernel, ROM, or any other development project requires knowledge and tools. While this knowledge can be obtained from books and other resources, tools must be created from scratch. Well, not all of them, as here on XDA there are plenty of interesting projects that are shared with the community.
When you are building a ROM, you need to execute a few commands to get the build process started. Manually entering lines takes time, and there is a great chance of making a typo and having to repeat the process. XDA Forum Moderator and Recognized Developer laufersteppenwolf decided to share his solution by presenting a set of scripts that will allow you to speed up the preparation process of almost every project.
The provided scripts are designed to build a CyanogenMod-based ROM, kernel, and anykernel (a zImage replacement without touching the ramdisk) for the LG Optimus 4X HD. However, it can be easily modified to build your ROM of choice for your target device. The scripts work with every Linux distribution and have a proper documentation, which can be executed by appending the “-h” flag.
If you are a kernel or ROM developer or simply want to see how to automate the build process, check out the provided scripts in the original thread.
Some of you may think that writing code is the hardest part of development. It’s not, as the real fun starts when you have to debug an application or function. That’s why Android Debug Bridge is so important, and you can find images like this in many threads. And obviously, digging through thousands of logcat lines is every developer’s “favorite” activity.
Logcat likes to bombard users with more or less relevant information regarding various issues. To free yourself from mpdecision, thermal-engine and sensors.msm8960.so warnings, you should try out a script written by XDA Recognized Developer and Contributor broodplank1337. Lib Cleaner removes the specific lines of code from proprietary files with the Swiss File Knife tool, which replaces HEX strings and makes the code more readable. Those three files are not the only one that can be modified. It’s possible to add your own scripts and clean even more unnecessary code. The script is designed for Ubuntu-based destroys, and needs some editing to be used with Arch, Fedora, or other Linux branches.
If you are a developer or advanced user trying to find out what’s wrong with an application or newly added code, make your way to the original thread and give Lib Cleaner a try. Just keep in mind that Google added these lines forma purpose and removing them may result in unexpected behavior.
Ever heard about Docker? If you have, you surely know what a great piece of development work it is. If you haven’t, I’m going to explain what exactly Docker is and why it should be considered in the Android development world. Quoting the Docker website:
Docker is an open-source engine that automates the deployment of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere.
Docker containers can encapsulate any payload, and will run consistently on and between virtually any server. The same container that a developer builds and tests on a laptop will run at scale, in production*, on VMs, bare-metal servers, OpenStack clusters, public instances, or combinations of the above.
In plain English: Docker provides a standardized method of putting your applications into a server or other type of hosting or storage.
So why is this relevant? Well, Docker can be used to build a CyanogenMod really easily, without reliance on dependencies, requirements, and even files itself. This is all thanks to XDA Forum Member michael_ch, who created a Docker script that puts together all dependencies, install them in the container on your PC, and allows you to start an Android build process with just few commands.
All you need to do is initialize the repo, sync it, and type standard commands to start a build. To properly use this script, you need to have Docker installed on your system. Officially only Linux is supported, but there are some instructions to launch it on Mac or even Windows. If you never tried Docker before, building a CyanogenMod using the tool might be a nice learning experience.
Android is an operating system that uses a lot of programming languages. The most common languages are Java (or Android Java if you prefer), C, XML, Bash, as well as a few more. Android applications can be decompiled by APKTool and a few similar tools, and their output is Smali. I know that many of you will disagree with me, but Smali is quite complicated language—much more than Java.
There are two tools that can convert Smali back to Java: Dex2Jar and JAD. They are pretty hard to use, though, and need some experience to use them properly. Luckily, XDA Recognized Developer broodplank1337 created a simple bash script, that does all the work for us. This script can get all necessary dependencies, as well as get the Java code straight from APK. It works on Linux only, but I’m quite sure that can be used on non UNIX-like systems like Windows with Cygwin. The developer recommends that you put the file in ~/bin and make it executable. Further instructions are available in the thread.
Sometimes scripts can make life a lot easier. If you are interested in the project, make your way to the original thread to get more information and learn how to convert assembler code into Java.
Note: Tools like this should be used for educational purposes. “Borrowing” code from applications (paid or free) is unethical and should not take place. They are closed source for a reason. Keep that in mind.
CyanogenMod is one of the most popular multi-device ROMs. It is also the base for many custom ROMs available here on XDA. It supports a long list of devices, which makes it one of the most recognizable custom ROMs available.
Of course, CyanogenMod is an AOSP-derived ROM, which means that much of the project comes from source code on Google’s Android repos. It is also open source, with sources freely available to anyone looking to build upon the team’s work. Unfortunately, not every element of CM is open, as some application and libraries are delivered as proprietary binaries. Those files are mostly taken from Google services and used in CMAccount for example.
Not every user particularly cares for Google’s proprietary bits and its tendency to put them everywhere. As such, XDA Senior Member MaR-V-iN has created a script to clear out Google proprietary binaries from all CM10+ ROMs. Freecyngn disassembles the CyanogenMod settings app and replaces Google Analytics library with the free NoAnalytics. The whole process doesn’t break the Settings app, and turns your device into one that is Google-free.
Installation is very simple. All you need to do is to copy the file onto the SD card or internal storage of your device. Then, simply flash it via a custom recovery.
Having a Google-free Android is an interesting idea. If you like it, make your way to the original thread and get the newest version of the script. Also, don’t forget to take a look at our earlier series on Saying Sayonara to Google Apps.
The age old debate over the benefits of an odexed or deodexed ROM is one that will continue to divide Android users. And at the end of the day, it comes down to a case of horses for courses. Some may prefer the ease of customization that is offered by deodexing, while others will no doubt prefer the overall feeling of speed and responsiveness that comes with an odexed ROM. Thankfully, there are plenty of options out there for anyone looking to dabble in this process.
One such option for those looking to odex a firmware comes courtesy of XDA Senior Member MatrixDJ96 in the form of his Universal Odex Script. The main benefit of this particular option is that it allows the user to odex their current ROM directly from the device by running the script from a terminal emulator. Once you have installed the script by flashing via either ClockworkMod recovery or TWRP (other recoveries are currently unsupported), simply execute the appropriate command from the terminal to view the available options for your device. Whether you’re looking to “odex all the things” or just a specific part of your current ROM, the Universal Odex Script should allow you to do this quickly and easily. Just make sure to free up the internal storage space you will need on hand to complete the process.
Thorough instructions on how to use the script can be found in the original thread.
Back in 2010, XDA Recognized Developer Daneshm90 created a script for the HTC G1 to simplify the modification process for APK files. The script proved popular, as it greatly streamlined the cumbersome manual modification process. Sadly, over time the script fell into disrepair and even the download link for it ended up broken.
Eventually, XDA Senior Member raziel23x took it upon himself to breathe new life into the aging script and not only overhaul, but improve upon the original design. He’s incorporated such features as:
- Batch optimize apk (Zipalign,optipng,or both)
- Batch Ogg optimization
- Batch install apk from script (option 19)
- Batch Theme Image Transfer TOOL
- Batch Theme optipng TOOL
- Batch Theme Zipalign APK TOOL
- Compression level selector (monitor status above menu)
- Error detection. Checks if error occurred anytime u perform a task, and reports it
- Extract, Zip apk’s.
- Incorporates brut.all’s apktool
- Improved syntax of questions/answers
- Logging on/off has been removed. Instead a log.txt is created which logs the activities of the script organized using time/date headers
- Optimize pngs (ignores .9.pngs)
- Pull apk from phone into modding environment.
- Push to specific location on phone
- Quick sign an apk (Batch mode supported)
The list actually continues on quite a bit, and there are still many more improvements to be made. So head on over to the release thread and give this a spin.
April 25, 2012 By: Conan Troutman
Ever wondered what Papa Smurf is up to when he’s not foiling Gargamel’s latest evil plot or lusting after Smurfette? I know I have. Apparently he hangs around the EVO 4G forums helping people get the most out of their devices.
There are plenty of ways to maximize the performance of your device, but unfortunately it can be somewhat time consuming and awkward to make the necessary changes to implement things like build.prop and init.d tweaks, especially if you wish to implement several at once. However XDA Forum Moderator & Recognized Contributor PapaSmurf151 has created a script that will install a variety of tweaks created by numerous developers, users and some of his own, to help you optimize performance from your device as easily as possible.
The script works by asking you a few questions relating to your needs and how you use your device before deciding on which tweaks are appropriate to install. It will seek out any duplicate entries in your build.prop, and remove them to prevent conflicts and also create backups in case you wish to roll back the changes made. Tweaks include battery, memory, WiFi/3G, speed, SD card and governor tweaks. The release thread also contains a huge amount of information relevant to the options available from running this script so you can be sure that you know exactly how this is benefiting your device.
The script can be run via ScriptManager or Terminal, and should work on the vast majority of devices including the HTC EVO 4G. Obviously you’ll want to back up first before making any changes though, just in case.
If you’d like to take this for a spin then head on over to the original thread.
February 16, 2012 By: Former Writer
Rooting a device can be some sticky business. In some cases, it’s as easy as using one of the well known one click solutions, such as SuperOneClickRoot. Others, however, require some cunning such as manually patching files and using ADB.
Once root is established though, it’s work from the community that makes that root seem less imposing and easier to obtain for the less technically challenged. It is in that spirit that XDA Member Condi has taken a prior root method for the Sony Tablet S and turned it into a simple to use Windows script. The modifications made over the prior version of the root method include:
to eliminate problems like ‘com.pwn.me’ error etc.
timing is correct,
it goes fully automatic,
disabling mpt device automatically, and reenabling,
modded to work on 64 and 32bit systems,
(tested on winxp 32bit, win7 64bit).
The script is compatible with 32-bit and 64-bit Windows and has been tested on Windows XP and Windows 7. Simply make sure the proper MTP driver is installed, download the script, run it and you’ll be seeing that Superuser prompt in no time flat. It doesn’t get too much more simple than that.
So for anyone who was waiting for an easier way to root their Sony Tablet S, you can find the download link and additional information in the original thread.