March 1, 2014 By: eagleeyetom
Computer programmers use many different coding languages. To effectively work with Android, you need to know Java, C++, and XML. Android devices can be used to compile projects in other languages like Go, which was developed by three Google employees back in 2007.
Go, although being a Google project, has no default build options on Android devices. Luckily, XDA Senior Member alireza7991 ported a set of Go tools required to compile on Android. The project includes Go Compiler, Go Linker, Go Packages, and Net support. With this installed, you will be able to write code, compile it on the device, install it, and run it. To play with Go code on your device, you need a rooted ARMv7 device. A NEON-compatible SoC is suggested for faster compilation times.
Installation is very simple, and requires you to side load the tools to your device in recovery mode and reboot. Main commands are explained in the original thread, where you can also find a download link.
February 25, 2014 By: eagleeyetom
A boot animation is the first thing a user sees after turning on a phone or tablet. This introductory part of the ROM is very important, and directly influences our experience of said ROM. For this, Android uses PNG files and a desc.txt bundled into one zip. The text file contains resolution and frame rate information so that the boot animation displays at the correct size and with the desired speed.
Making a public preview of boot animation wasn’t as easy as it sounds. Recording from a device with a video camera definitely doesn’t look professional, and the video quality leaves much to be desired. If you ever planned to make a video of your boot animation, you should definitely give a try to a Windows-only tool written by XDA Forum Member makers_mark. A batch script pulls down the boot animation from the device using ADB. Then, it converts the bootanimation into an MP4 file that is ready to be uploaded to YouTube or similar video delivery services. The script uses such tools like 7zip to unpack the archive and FFmpeg to convert those files into a video. The process is carefully described in the thread, with an explanation of the particular elements that go into boot animations.
The tool works only on Windows machines, and it can be downloaded from the original thread.
February 22, 2014 By: eagleeyetom
Pushbullet is one of my favorite applications, and it became a must-have on my device ever since I first tried it. It’s a great tool that allows users to perform a variety of tasks such as share a photo and sending relatively large files between a computer, phone, or tablet with ease. The tool was featured some time ago, but it has been updated a couple of times since then. XDA Forum Member guzba and his crew haven’t been sitting idle, and now Pushbullet has its own version for Windows.
Previously, this app worked as an extension for Chrome or Firefox. But this wasn’t perfect, as those two browsers aren’t used by everybody. Now, the Pushbullet team announced on their blog that a dedicated application for Windows is out and they are looking for beta testers.
Having a standalone app is beneficial because a PC is now treated as a separate device. It can now be used to send or receive notifications, without needing to have a browser running in background. Another great thing is the ability to sending files directly by right clicking on the file and selecting a pushing option.
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 undoubtedly a great operating system. A wide variety of devices, an easy-to-use interface, and relatively low device prices make Google’s system the first “smart” operating system. Android is almost complete. It allows you to tap like a maniac to squeeze a bird between two pipes or inhale your daily dose of Android news. This Linux-based OS doesn’t offer many things that GNU has to offer, but luckily the development-fu is strong on XDA. Because of the aftermarket communities, this small operating system can be given some serious Unix power.
Not too long ago, we talked about GNU CoreUtils as an alternative to Busybox. The developer responsible for that tool, XDA Senior Member alireza7991, decided to expand his project a bit and make the source for the most common tools public. Tools like grep, wget or make are compiled with GCC 4.8.1/4.8.2 toolchain and optimized to get the best performance. If you are planning to test them, simply download the package, unzip it, and push it to /system/xbin with ADB or your favorite root-based file explorer.
More information about the project and a complete list of tools can be found in the original thread, so please go there and give it a try.
February 13, 2014 By: eagleeyetom
If you are a Sony Xperia user eagerly awaiting the latest OTA updates, you must remember that in order to receive the update, your phone must be running stock firmware. By unlocking the bootloader, your phone won’t be able to directly install the OTA, and will lose features such as Sony Bravia Engine. Furthermore, you may also face difficulties with your warranty. You can avoid these issues with the Backup TA for Sony Xperia tool by XDA Senior Member DevShaft. The only disadvantage is that it works only on Windows, so users must use a Windows machine or virtualization software like VirtualBox to back up and restore their keys.
Now, thanks to XDA Forum Member limiter121, Mac OS X users can use Backup TA on their machines. The developer has re-written the script, which is now compatible with Apple’s latest OS builds. And in the future, Mac OS X might be included in the official release. This tool should work with all Xperias with TA partitions, and the developer was kind enough to write a FAQ, which can be found on Bitbucket alongside source code of the tool.
More information can be found in the original thread.
January 16, 2014 By: eagleeyetom
If you ever thought of modding an application, you’ve undoubtedly heard about smali and baksmali. These two tools can convert an APK into editable files, which can then be converted into more readable Java files by a tool such as the one we will cover today. Decompiling can be done with binary files only. But for your own comfort, some kind of kitchen is recommended.
In the past, we’ve talked about many tools able perform various operations with precompiled applications. One such tool was created by XDA Senior Member ricky310711, author of Android Kitchen and multi-tool for Nexus 5. With Quick Mod Tool 2.0, you can easily decompile, compile, and sign an application. But those are just a small portion of what you can do with this tool. You can work on classes, select compression levels to save space, and work with JAR files. At the moment, Quick Mod Tool works only with Windows operating system. The tool is very lightweight, and takes just 4 MB of disk space.
More information about this tool and a download link can be found in the original thread. If you are planning to do some theming or modify an application, you should definitely go there and give Quick Mod Tool 2.0 a shot.
January 12, 2014 By: eagleeyetom
Recently, we’ve talked a good deal about ADB and getting it set up on various operating systems. ADB is a very handful set of tools that allows you to install your favorite apps directly from your PC or even work with your /system partition by pushing or pulling some files. ADB is also a great tool to get error logs and debug Android applications.
If you’ve used ADB more than once, you likely noticed that pushing files is far from convenient. Typing long commands and paths is not the easiest way, especially when your path resets after accessing ADB shell. Because of this, XDA Senior Member youssef badr created a useful Windows-only tool that helps you push files really easily.
All you need to do is to specify which file needs to be pushed and the path on your device. The script takes care of the rest. You can keep your device in shell state to see the full file structure. Obviously, you need to have working ADB and associated drivers on your PC to use this tool.
More information and the tool itself can be found in the original thread.
Every Android kernel is made of few parts, which (depending on the OEM) contains a zImage created during kernel compilation and a ramdisk where some device-specific settings are stored. Sometimes, the ramdisk contains a recovery, logo, and so on.
If you’ve ever tried to work on a precompiled kernel, you’ve noticed that it can’t be extracted with a simple archive manager. Rather, you need some tools capable of unpacking and repacking the kernel as an IMG file. These tools can be easily built on Linux. And thanks to XDA Senior Member A.S._id, you can download them easily and compile your 0wn.
The current set of tools includes such binaries as: mkbootfs, simg2simg, make_ext4fs, mkbootimg, ext2simg, img2simg, simg2img, sgs4ext4fs, and unpackbootimg. Some of them were created by XDA Senior Recognized Developer Chainfire and the CyanogenMod team.
The compilation process is presented in the thread. It’s really simple, and needs just two commands. If you have problems executing them, don’t forget to set the correct permissions by setting the files as executable. After compilation, you end up with binaries that can be used in the kernel modification process.
Naturally, this tool works only on Linux machines. Having configured Github account is also recommended. You can learn more about those binaries by visiting the original thread.
January 11, 2014 By: eagleeyetom
If you’ve ever flashed a custom ROM, you’ve probably noticed that your custom recovery reads some sort of script to format your system partition, make symlinks, and so on. This set of commands is known as Edify. Usually there are two parts of Edify: updater-script, which is a text file with instructions for recovery; and updater-binary, which loads said script. Open source projects generate the updater-script directly from source, but not every ROM is built from source.
It’s extremely easy to break the syntax of Edify script. One missing semicolon can interrupt the flash and gave a nasty error. If you don’t read the recovery log, finding a mistake is problematic. This is why a tool by XDA Senior Member yashade2001 should interest you.
Yashade2001 created a Windows-only application that will help greatly with finding syntax errors. Depending of the type of code, EdiSense uses different colors. So for example, comments are green and various commands are dark blue. EdiSense can save you a lot of time and find an error within few seconds.
Right now, this tool is available only for Windows. Hopefully, the developer will port it to other operating systems as well. If you are modifying your updater-script, you should definitely visit the original thread and give EdiSense a shot.
January 11, 2014 By: eagleeyetom
In the past few weeks, we’ve talked about several tools to decompile application and convert the output Java code. These tools, however, are for Windows and Linux PCs, and not Android devices. Naturally, these tools are very useful if you want to modify an application for your personal use or learn how to improve your own project.
Recently, yet another tool popped up to accomplish this task, but it has a unique twist. Show Java written by XDA Senior Member niranjan94 can decompile an application and show the code directly on your Android device. It’s a perfect solution for when curiosity takes hold, and you don’t have access to your PC.
The application uses two external tools: Class File Reader and dex2jar to get the code. The output is presented in an elegant, syntaxed form. Code is then stored on the SD Card, so you can even analyze it on your PC.
The application is still in a very early stage, which is described as Alpha by developer. There are still some bugs such as a slow decompilation process and lack of support for system applications. However, using the app is very simple. Just tap on one of installed apps and wait for result. Your device does not have to be rooted or have any additional apps installed.
You can learn more about this project and grab the newest APK by visiting the application thread.