APKTool has been one of the main, and probably most influential application editing tools for quite some time on the Android platform. It has been available for Android users ever since devices had physical keyboards, back when Android seemed like just an experimental project. The first versions of the tool were released in 2010, so this was at the time when the Eclair ruled the world. APKTool in its many variations is still one of the most popular ways to change the contents of an app or stock firmware.
Using APKTool on Windows is very easy and doesn’t require much in the way of technical skills. All you need to do is download the script, executing it, and you’re done. Setting up this tool on different operating systems requires a bit of a work. XDA Senior Member nilac8991 has shown how to use APKTool on the one of the most popular Linux distributions, Ubuntu. The guide contains the basic information about installing Java, Android SDK, and essential libraries needed for APKTool to work.
The whole process is very easy and can be done by every Linux beginner in no more than 5 minutes. Keep in mind though, that some distributions use different package managers like AUR or RPM, so you need to change the commands accordingly.
If you are new to Linux and you would love to use APK Tool, head over to the APK Tool on Ubuntu thread to learn more.
The Sony Xperia Z1, also known as the Honami, brought many interesting solutions for end users with regards to UI styling. Sony is well known for delivering a good looking OS that is stable, reliable, and easy on the eyes, and many of the people here on the XDA forums will agree.
If you didn’t purchase this formerly flagship device, fear not. Some elements from the Honami’s interface can be easily added to other Android-powered devices. One such UI element is the loading animation that is used in places such as the stock Gallery app, Browser, and so on. XDA Forum Member ljg211314 shared a thorough guide explaining the whole process of theming.
The guide is presents all the various resources needed to replace the XML files in your current ROM and the instruction on what needs to be changed.To make use of this guide, you need to use the good old APKTool, which still is in use in many modification available on XDA.
The modification is designed to work with Sony devices, but you can try to use it on your own on device of a different manufacturer. Change your AOSP experience by adding some quality stuff from Sony’s Xperia UI.
You can learn more about theming your ROM with some Honami elements by visiting the Honami UI Elements guide thread.
August 5, 2014 By: Tomek Kondrat
The Sony Xperia Z1 is undoubtedly a beautiful device. Nice hardware design coupled with a good looking UI makes this smartphone one of the top choices for those who like their phone to be beautiful more than anything else. As such, this former flagship still is quite popular among XDA users.
The phone codenamed “Honami” has a unique Xperia UI, which looks attractive to many. If you want to have parts of this UI on your device, XDA Forum Member ljg211314 created a guide explaining how to change the tab indicator style to match the Honami.
The guide shows you what changes are needed in your ROM’s framework to get the expected result. To make said changes, you need to use APKtool, which then allows you to extract the contents of the files in question and re-compile them after adding changes in XML. Ljg211314 provided all resources necessary to complete the process.
Adding Honami UI elements to any Xperia ROM isn’t too difficult. Everything can be done in just few minutes. To use it, your device must be rooted, since the modified files must be pushed back to /system partition.
If you would like to change the style of your tab indicators to those used on the Sony Xperia Z1, head over to the Xperia Z1 Tab Indicator guide thread to learn more.
July 15, 2014 By: Tomek Kondrat
Every developer, even the most capable, was at one point a newcomer. When you are a new to development and need light to show the way, there’s little better than a guide showing you where to start your journey.
If you want to try your luck with developing for Android, XDA Recognized Contributor jackeagle offers you a nice ride through the depths of coding. Jackeagle wrote a complex guide, in which you can find information about Android and its basics, as well as what is even more important, instructions on setting up a build environment using Linux. You will find a step-by-step tutorial about how to install Ubuntu on Virtualbox and configure it properly to build your very first ROM compiled from source. Every step is illustrated with a screenshot, so it’s really hard to get lost.
This guide was meant to serve a vital purpose for newcomers who haven’t yet had a chance to play deeply with Linux and Android. If you know how to use Linux, it’s still a good reminder about all commands needed in setting up process.
To find out more about Linux and Android and eventually build your own ROM from source, head over to the guide thread to get started.
Around the time of the OnePlus One‘s release, the CyanogenMod team decided to use refresh their Theme Chooser. One of the new functions that has been added is an ability to change the font, system-wide, without messing with /system/fonts folder. To change your system fonts using this new functionality, the font must be made as an application. If you have a favorite font somewhere on your PC and want to use it on Android, now you have a chance to do it really easily.
Even if you are relatively new to Android and development, you can create your own font package without too much hassle. To help you out, XDA Senior Member codekidX created a handy guide that shows all the changes that need to be made.
To start playing with fonts, you need some IDE installed. You can use either Android Studio or Eclipse, since both of these programs can compile an APK. After installing an IDE and finding a font file that you want to use on your system, you need to follow just four steps to get the font ready to install. This guide is only useful when you are using a CyanogenMod 11 or its forks with newest Theme Chooser, so keep that in mind before starting your learning process.
Is your OS looking a bit boring? Why not giving it some new life! All you need to do is visit the original thread to get started.
Much of the Android’s beauty is in the ability to change practically every part of the OS—both in terms of aesthetics and functionality. There are several ways to go about this. One way is to modify apps before compiling them from source. Another involves decompiling and editing already compiled, ready-to-use binaries.
Theming your ROM is one way to make it look cooler and more personalized. Many custom ROMs use the T-Mobile Theme Engine, which allows the use of external themes prepared by third parties. Stock ROMs usually don’t allow the use of such themes, so you’ll often have to resort to APKTool or equivalents.
If you’re a Sony Xperia user, you can now easily change the color of Phonebook and Dialer applications thanks to a thorough guide by XDA Senior Member Rajeev. This guide explains how to change the XML files to get rid of the stock values. Fear not, no Smali knowledge is required, so even the freshest newcomer will be able to do it with the available tools. Rajeev’s method method works only on Xperias with Android 4.1 or greater, but you can easily adapt it to work with other stock ROMs like Sense or TouchWiz.
Naturally, you need to be rooted in order to push some files back to the /system partition. APKTool or a similar utility is needed as well in order to decompile and recompile the APK files. If you find the stock dialer and phonebook colors boring, head over to the guide thread to get started.
June 23, 2014 By: Tomek Kondrat
One of the most interesting features of OmniROM is OpenDelta. This innovative OTA system created by XDA Senior Recognized Developer Chainfire uses open delta technology to bring updates in an easy, bandwidth-friendly way. In short, OpenDelta downloads only files that were updated since the last downloaded nightly.
If you thought that OpenDelta was a feature only available in OmniROM, you were right. But it’s an open-source project, so porting it to work with other ROMs is absolutely possible. If you ever wondered how to add it to your ROM, XDA Senior Member werty100 made a pictorial guide with a complete explanation of OpenDelta usage. With werty100′s guide you will learn how to set up Eclipse to compile an OpenDelta APK and even more important, which values should be changed to work with other ROMs with nightlies.
To fully incorporate the incremental OTA system into any ROM, only two files require some XML changes. And since it’s not as difficult as Java or Smali, almost everyone should be able to add it to their ROM.
If you are keen to learn more about making OpenDelta work on almost every ROM, head over to the original thread to find all the relevant information.
As you may already be aware, rumor has it that Google is planning to redefine the overall UI look and feel in Android. Not too long ago, we talked about Quantum Paper, the rumored unified UI that may define Google products across all platforms. These changes may be unveiled very soon, as Google is gearing up for its I/O event next week.
If you are eager to achieve a similar effect to this rumored UI paradigm in your application, there are ways to make your own apps more Quantum Paper-like. In order to show developers how to easily achieve this, XDA Senior Member krishneelg3 outlined the process. The tools that you need, in addition to basic coding knowledge, are an Android IDE like Eclipse or Android Studio and a good image editor to edit the graphics.
Krishneelg3 explains all this in detail, with regards to what needs to be changed to apply this new UI. The developer was also kind enough to provide a package with resources, which will help you out in smooth transition into a Quantum Paper-like UI. To complete the process, some changes in various XML files are needed, but everything is served on a metaphorical silver platter.
If you are an app developer and want to change the look of your projects to be up-to-date with the newest Android UI concepts, head over to the guide thread to learn more about Quantum Paper transformation.
June 13, 2014 By: Tomek Kondrat
When you first came to XDA Developers, the world of Android modification was likely very new to you. Custom ROMs, kernels, recoveries were all more than likely previously unknown. Compounding matters, these things pieces of development work often have different installation procedures, depending on target device.
If you are just beginning your Android journey and happen to own a Sony Xperia device, you might be interested in a guide by XDA Senior Member cy56. This guide is very newbie friendly, and it explains the process of backing up, wiping, and flashing everything for the first time.
The guide is thoroughly detailed, and contains specific sections for Xperia devices since the kernel flashing on these devices is not done through fastboot. Keep in mind that every firmware version and device are a little bit different. However, the guide begins with CM10 and ends on KitKat-based ROMs.
If you are an Xperia user and want to start the journey towards custom ROM and other tweaks, make your way to the guide thread to get started.
Kernel development is undoubtedly one of the most popular and important types of development here on XDA. There are literally thousands of kernel projects available on this site, spread across almost every supported device forum. Creating something original definitely isn’t easy, but given the Linux kernel’s open source nature, it’s easy to learn and incorporate external features into your own builds.
If you ever wondered how to make your favorite kernel even better, you are in the right place to learn! XDA Forum Member srsdani created yet another great video tutorial. This time, srsdani shows viewers how to play with kernel and add some things like CPU governors and I/O schedulers.
There is also a short video explaining how to use the make menuconfig option, which is very useful if you want to add some new features to existing kernel source. After following the steps shown in these videos, you should get ready to flash your new kernel image with the newly added functions. Then once you’ve gotten the hang of things, you can try with other features.
If you are eager to learn some of the basics regarding kernel development such as adding governors and schedulers, visit the original thread.
Not too long time ago, we compared Linaro and GCC to see whether changing your compiler could result in better performance. The process of compiling a kernel with Linaro and other toolchains is similar to using GCC by itself. However, it requires a bit of knowledge and preparation, and this is where guides and tutorials come in.
If you prefer to learn in video form, you should definitely check out the video guide series by XDA Forum Member srsdani. This series of eight movies guides you through all the issues you may face while installing a Linux distro on a VM, configuring it, and of course, building a kernel with Linaro.
The process will take you couple of hours, so this guide will be a perfect companion on your journey to Android development. The guide also contains a few tricks that can be used to extract the kernel config, or dump a boot.img, making the video tutorial even more interesting.
You can find the videos in the original thread. So if you are keen to learn new things related to kernel development, head over there and give it a try.
The path to becoming a great Android developer is not straightforward. To make an application or modify an existing one, you need to know Java. To write a good application, you need to know all of the language’s nuances. Much of this information is available in resources found here on XDA. Applications written in Java use listeners, small functions that launch an activity when you press a certain part of the screen.
XDA Senior Member mohamedrashad wrote a useful guide to help new coders understand listeners better and learn how to use them. The guide explains how to define a button in Java, initialize it, and add a listener to launch the activity. You will also learn how to add Checkboxes and Radio buttons, and how to use them in groups. This is naturally just a small part of the Java language, but it can undoubtedly be useful for many—both newcomers just beginning their journey in Java an experienced coders looking for a refresher.
To learn more about depths of Java programming and how to use listeners in your app, head over to the guide thread.
May 27, 2014 By: Tomek Kondrat
Building ROMs from source is becoming increasingly popular. While most who decide to build their own ROM do so to learn something new, some share their builds with community. However, ROMs are not always created from scratch. Some features are taken from open source projects that have their code publicly available on a Git.
Big projects with many contributors use the web-based software review tool Gerrit. Using Gerrit is a bit different than Git, and we covered a great guide some time ago. This tool can also be used to cherry-pick single commits, and a simple guide by XDA Senior Member jabza will show newcomers how to do this.
Jabza’s guide shows new developers how to use terminal to get one commit and resolve errors afterwards. Jabza uses ParanoidAndroid’s Halo as an example, but his instructions can be applied to any other open source project. With just few steps, you will be able to add some useful features to your ROM.
If you’re a new developer and you want to learn how to cherry pick useful features from other projects, make your way to the guide thread and give it a shot.