Related
I'm sorry if this is a really basic question or has been answered elsewhere before, but I couldn't find how to do it after a lot of searching on this forum, so here goes:
I'm developing an app that requires advanced networking functionality, and am trying to modify the wifi driver on Android to expose a custom API to my Android app (in Eclipse/Java) that isn't part of the stock Android SDK. I've managed to successfully compile a new kernel with my driver modifications (on Nexus S/Jellybean) so that part's good, but I also need to add the API to the Android OS and SDK, recompile and flash them, and then get my Eclipse/Java project to compile and link against the custom version of Android I've built.
Does anyone know what the best way to add a custom API to Android is, or could they point me to a step by step guide if this has been answered before? In particular, once I've built a new version of the Android kernel, the system and the SDK and flashed the custom ROM that supports this API to my phone, how do I get Eclipse/Android apps that I write to link against my new API/modified SDK?
Thanks a lot!
Mcromax Canvas 2 A110 Frequently Asked Questions
What is rooting?
Android rooting is the process of allowing users of smartphones, tablets, and other devices running the Android mobile operating system to attain privileged control (known as "root access") within Android's subsystem.
Rooting is often performed with the goal of overcoming limitations that carriers and hardware manufacturers put on some devices, resulting in the ability to alter or replace system applications and settings, run specialized apps that require administrator-level permissions, or perform other operations that are otherwise inaccessible to a normal Android user. On Android, rooting can also facilitate the complete removal and replacement of the device's operating system, usually with a more recent release of its current operating system.
As Android was derived from the Linux kernel, rooting an Android device is similar in practice to accessing administrative permissions on Linux or any other Unix-like operating system such as FreeBSD or OS X.
I wan't to update to jellybean, how?
http://gizmophiliacs.com/official-micromax-a110-canvas-2-jelly-bean-update-v3-now-available/
1). Can i root my phone?
If you are running ICS by default see this:
http://gizmophiliacs.com/how-to-root-and-install-cwm-recovery-on-micromax-a110-canvas-2/
If you are running JB by default:
http://techzei.com/root-micromax-a110-canvas-2-running-on-jellybean/
2a). What can i benefit from rooting my device?
Apart from mentioned above you can flash custom ROMs based on your choice.
2b). Is there a downside to rooting?
Yes, you may loose warranty if you damage your device by rooting.
3). What is ROM?
ROM is the whole system on your phone just like windows/mac os/ubuntu on PC.
4.). What is CWM and Custom ROM?
CWM and TWRP are recovery, in recovery mode you can flash new ROMs backup existing or factory reset etc. Custom ROM are Custom OS based on existing sources modified for better performance and reliablity.
5). What is this Stoc ROM/CM/AOKP/PA/PAC your talking about?
Stock ROM is pre-installed OS
CM is short for CyanogenMod, CM gives its user vanilla android experience (which is only present in nexus devices) at the same time more options and customization available there are 4 versions so far CM6(not available for explorer)(froyo 2.2.x),CM7(Gingerbread 2.3.x),CM9(Ice Cream Sandwich 4.0.x)and CM10(Jellybean 4.1- 4.2)
AOKP is short for Android Open Kang Project, AOKP brings user MORE goodies than CM gives and it also gives the user Vanilla android experience.
PA is Short for Paranoid Android, Also like CM but it gives you unique Tablet UI (phone will look like a tablet) for your device even though it's just a phone.
PAC is combined PA, AOKP, CM. It gives the combined features of the 3
6). How to install one of this rom ?
Look for the rom that you think you like in android development section and follow the instruction given by the developer.
7). So which of them is the best?
Try them all and don't compare roms people have their own preferences. when you compare roms some devs may feel bad and leave this device for good.
Comparing ROMs is very rude and disrespecting to developers.
reserved
reserved to stack drugs...
How to install one of this rom ? plzzzzz help
rams_25_78 said:
How to install one of this rom ? plzzzzz help
Click to expand...
Click to collapse
Im adding it wait
Im back now!
I keep getting bombarded with so many jargon on this forum. So this list is to help out the many noobs like me.
List of jargon:-
(Also to help other noobs like me, I am also including the ones whose meanings I have figured out. Pls feel free to correct me. I am a noob after all. )
[I have bolded the ones for which I need info.]
MOD - Short for MODified. This is a commonly used jargon in gaming and mobile.
CM - Cyanogen Mod - A modified version of Android with unique features.
AOSP - Android Open Source Project - The official Android which is the base for CM and is also used by the phone manufacturers.
FXP - Free Xperia Project (http://freexperiaproject.com) - A version of CM, specially maintained for Xperia phones.
CWM - Clock Work Mod - Used to provide Recovery mode.
Kernel - The lower part of the Android OS. Actually this is not part of Android. On stock phones, this provided by the phone manufacturers. This allows manufacturers to go wild about their hardware and use their proprietary hardware technologies w/o disclosing that to Android. Android needs a predetermined set of APIs from the kernel to work.
ROM - Traditionally ROM stood for Read Only Memory, which were only flashable once. However, in current context it is not like that. This is the Android OS we know. This interacts with the hardware via the kernel. All app and user managements is carried out by this.
GAPPS - Google APPS. Namely - Google Play, Gmail, etc.
MDPI - Phones with Medium DPI resolution. DPI is Dots Per Inch. So this denotes the screen pixel density. Note, screen density and screen size are independent concepts. MDPI is about 160dpi. This is the average.
JB - Jelly Bean - The latest version of Android. Android 4.1 and 4.2 (latest) are both versions of Jelly Bean.
ICS - Ice Cream Sandwich - Version 4.0.x of Android.
GB - Ginger Bread - Version 2.3.x of Android.
FC - Force Close - When an app hangs and closed forcibly or it crashes.
Kang - Means stolen. However, since open source codes cannot be "stolen", so in this context it becomes - unofficial.
AOKP - Android Open Kang Project - Similar to CM, this is another port of Android with many crazy features like you can customize the LED color based on notifications of your choosing.
Dalvik - Android has a built-in Java Virtual Machine which it uses to run the Apps. (The apps are coded in Java.) Dalvik is an Android port of SUN (now Oracle) JVM. This was the thing for which Oracle sued Google.
APK - This is the extension of the Android apps. This is a package (actually a zip file) with all the app related files.
Odex - A pre-optimized file in the app's APK which the Dalvik VM can directly run. See SO and this thread.
Deodex - APK packages have classes.dex file, which has all the Java classes needed to run the app. This is a deodex file. First time when the app is launched, Dalvik VM needs to parse this file and create an optimized version of it, which it runs. That file is kept inside Dalvik Cache. See SO and this thread.
Dalvik Cache - Contains the optimized versions of the deodex files. More info at - this thread.
Additional jargon lists and references:-
[Guide]What is HSPL, MAGLDR, cLK, and CWM, and how to install them.?
ASOP should be AOSP, the Android Open Source Project
You can add AOKP, the Android Open Kang Project
...You can add Kang, which basically means Unofficial
FC is Force Close, when an Android app crashes
Dalvik Cache, see this thread
You can add Odex and Deodex, see this thread.
post-mortem said:
ASOP should be AOSP, the Android Open Source Project
You can add AOKP, the Android Open Kang Project
...You can add Kang, which basically means Unofficial
FC is Force Close, when an Android app crashes
Dalvik Cache, see this thread
You can add Odex and Deodex, see this thread.
Click to expand...
Click to collapse
I got the full form of ASOP from Google but can you explain it? I am confused since I thought Android was already open source, so what exactly is Android Open Source Project?
Also pls provide a short description about Android Open Kang Project. Android with "Unicorn Bytes", doesn't quite explain it.
He's just saying switch the letters around you have ASOP and it should be AOSP
Kang in programming terms means stolen code, however as you cant really steal something that is open source it more refers to a 'fork' of the AOSP, i.e they copied the code
The Android open source project, is the completely open source and free to use version of Android, i.e without Google apps. It is run by Google however there are many people that contribute to it and it features open software stacks for a range of devices (nexus devices etc).
It is designed to be a base from which manufacturers, developers or anyone really can modify and build on, this is where the likes of CM take their base from/ But manufacturers (Sony, HTC etc) will also use this.
In other words 'Android' is the operating system, the 'Android open source project' is a completely open source and free version of Android. (Much like Chromium is the open source version of Chrome)
This could potentially be a very useful sticky. Other words which could be added are root, radio, bootloader, recovery, partition etc. Most of those can be found in the HD2 terms guide in my sig (I think).
Android and iOS are the most popular mobile operating systems on the market. Both offer a variety of apps and settings but, eventually reach their limits at a certain point. Rooting or Jailbreaking your phone (or tablet) will offer you thousands of tweaks, skins and new apps that you should not miss out on. It will also help you to remove bloatware.:laugh:
Android Launchers and lock screen widgets are great tools to customize your Android experience without rooting your device. You are also able to root your device and customize it with a launcher and widgets afterwards. If your Android device is rooted but you don’t want flash a custom ROM, Xposed Framework might be the perfect solution for you. You are, however, also able to add new features to your custom ROM with Xposed. With the release of Android 5.0 Lollipop Google replaced the former Dalvik cache with ART. Luckily, Xposed was adapted to Android 6.0 Marshmallow
This guide is based on Google Nexus devices, but most of the things also apply to other Android devices. Some might require more work while others can be rooted quite easily, but in the end it’s no rocket science. Rooting and customisation is especially easy on Nexus devices as factory images are freely available on the Google website. However, many other popular devices like the can easily be restored using different tools available on XDA developers. I would suggest to have a quick look at the forums and I’m pretty sure that you’ll find help for your device.
Android Rooting Terms You Should Know
Before we get started, I would like to explain a few terms because the terminology can get complicated and confusing. This will help you to understand other device specific guides. I’ll try to keep it short and not go into (technical) details. Please share any questions regarding this in the comments below – I’ll do my best to answer them.
ART
ART stands for Android Runtime and replaces the formerly used Dalvik cache. It was introduced in Android 4.4 and has completely taken over in Android 5.0. I don’t want to go too deep into technical differences, but ART is said to improve battery life and app performance, amongst others.
Bootloader
The Bootloader is your phone’s software foundation. It’s basically what runs before your operating system starts (like a PC’s BIOS). As many manufactures don’t want you to modify your phone’s OS, it needs to be unlocked before you are able to root your phone or install custom ROMs (explained later).
Brick
This is something you don’t want to happen to your Android device. Like the name already implies, a bricked phone (or tablet) can only be used as a paperweight or nice decoration for your apartment. Bricked devices are irreversibly damaged and won’t work anymore. This can, for instance, happen if damaged ROMs are installed or wrong firmwares are flashed. Always make sure to read instructions and verify checksums (a set of numbers that identify the file) to make sure nothing goes wrong. If you’re lucky and your device is only soft-bricked, meaning that it does not boot but still turns on, you might be able to get it back to life.
BusyBox
Android, being based on Linux/Unix, offers a limited amount of UNIX commands (which most users won’t need anyways). BusyBox will implement more commands that are necessary for some root apps to work properly.
Custom ROM
A custom ROM is a modified version of the Android operating system. Tweaks, additional features, different themes or an enhanced performance are usually included. Custom ROMs also offer the possibility to use a newer, unreleased, version of Android on your phone that might usually not be available for your device because of restrictions from manufacturer or providers.
Dalvik
Dalvik is a virtual machine that processes Android app code. Consequently, it is responsible for translating app code into actions on your Android device.
Fastboot
Fastboot is a diagnostic- and engineering tool which offers you several features such as launching in recovery mode or flashing image files.
Kernel
The kernel is the brain of your phone that controls how the system and hardware interact. It’s basically the lowest level of your operating system that manages memory and hardware.
NAND partition
NAND stands for “Negated AND” or “NOT AND” and describes the hard drive partition that stores all system relevant information like the bootloader, recovery mode or the kernel.
NANDroid backup
A NANDroid backup is a complete system backup of your Android device. This backup can be restored later and might save your phone after flashing a faulty ROM or theme.
Radio
The radio is responsible for sending and receiving voice and data. Using an optimized radio can improve your phone’s reception or increase battery life.
Recovery Mode
Recovery mode offers you the possibility to perform system-level tasks (like formatting, defragmenting, etc.), backing-up your devices or install custom ROMs. Android offers a limited stock recovery function. More sophisticated recoveries like ClockworkMod Recovery and TWRP Recovery offer additional features and are easier to use.
Root
Rooting will give you full administrator access of your device. It might also void your warranty (depending on the device and your place of residence), so make sure to handle your device with care after rooting it. You are always able to revert this process by simply flashing a stock-ROM (the original ROM installed by your phone’s manufacturer). Doing this will also “restore” your warranty.
S-OFF
S-OFF means that the NAND partition of your Android device is unlocked. This mostly applies to HTC phones.
Superuser
Rooting your phone will create a new “account” with complete administrative permissions. This superuser account is used by some apps and functions.
Xposed Framework
Xposed Framework is an app that can be installed on a rooted Android device which offers custom ROM like features on stock Android. It has been updated and is now fully compatible to Android 5.0 and Android 6.0.
5 Reasons to root
With Android becoming better and better, many people ask themselves if it’s still worth rooting. For example, you’re not able to use Android Pay if your Android phone is rooted. The same applies in other cases, where App developers decide to not support rooted devices for security reasons.
In addition to that, Android M will come with many features like “Doze” which basically replace root apps such as Greenify. So what exactly are reasons to root in 2016?
You have an old(er) Android device. With root access, you’re able to flash a custom ROM with the latest version of Android. Because of this, you don’t rely so much on your device manufacturer to keep you up to date.
AdAway. While I’m all-in for supporting developers, some apps don’t offer an ad-free paid version. With AdAway you’re able to get rid of all unwanted ads which is simply not possible without root.
Titanium Backup. Android M will bring Auto Backup for Apps, but unfortunately it’s still up to the developer if he/she wants to implement it or not. Titanium Backup is a simply but powerful tool that backups simply everything.
Change DPI. With many devices coming with high-res displays nowadays, some people prefer to have more screenspace than big app icons. While changing DPI can also be done without root, it often breaks different apps.
Remove bloatware. This one is easy. Remove all the crap your mobile carrier put on your device. Who doesn’t want to do this?
How to Fully Backup Your Device Without Root
If your Android device is not rooted yet, you won’t be able to perform NANDroid backups. I wouldn’t suggest to root your tablet or phone without having a proper backup, because there is always a chance of error and you don’t want to brick your device.
Simple ADB Backup let’s you create a full backup of your device without root access and is the perfect solution for users without root access. The free program also offers a restore function and runs on Windows and Linux.
If you’re already rooted, make sure to check out our guide on performing a NANDroid backup.
How to Root Your Android Device
The rooting process differs from device to device which makes it impossible to give general instructions on rooting here. I’ve linked guides for some of the most popular devices below. Using the terms described earlier should make the rooting process easier for you. If your phone or tablet is not on the list, you most certainly can find a guide on the XDA-Developers forums.
Google Nexus 4, Nexus 5, Nexus 7 and Nexus 10
Google Nexus 6P
Google Nexus 5X
Oppo OnePlus 2
Samsung Galaxy S6
LG G4
Samsung Galaxy Note 5
Always make sure to perform NANDroid backups of your devices to be able to restore your phone or tablet to a working state. I would also recommend to validate checksums and carefully read through the instructions to avoid bricking your device.
Most Important Fastboot Commands
When confronted with Android rooting, you often have to work with fastboot. Fastboot is part of Google’s Android SDK and is mostly used to re-flash partitions on your Android device, similar to (custom) recovery mode. You usually use fastboot in the following manner:
fastboot [ <option> ] <command>
Here’s a list of all options and commands:
Options
-w erase userdata and cache
-s <serial number> specify device serial number
-p <product> specify product name
-c <cmdline> override kernel commandline
-i <vendor id> specify a custom USB vendor id
-b <base_addr> specify a custom kernel base address
-n <page size> specify the nand page size. default: 2048
Commands
update <filename> reflash device from update.zip
flashall flash boot + recovery + system
flash <partition> [ <filename> ] write a file to a flash partition
erase <partition> erase a flash partition
getvar <variable> display a bootloader variable
boot <kernel> [ <ramdisk> ] download and boot kernel
flash:raw boot <kernel> [ <ramdisk> ] create bootimage and flash it
devices list all connected devices
reboot reboot device normally
reboot-bootloader reboot device into bootloader
Now that we’ve covered all existing fastboot commands and options, let’s have a closer look at the most important ones and what they do / mean:
fastboot oem unlock
This is a special command and not part of the initial list. Using this command, you can unlock the bootloader for Google Nexus devices.
fastboot flash recovery recovery.img
This command will flash a custom recovery to your Android device. Depending on the file name, you need to change the bold part of the command. Please not that this only works with *.img files
fastboot -w
Caution: This command will completely wipe your device
fastboot update filename.zip
This command will update your ROM based on the provided *.zip file
Custom Recovery Mode
The standard Android recovery mode is very limited and does not offer many features. That’s where replacement recoveries like Team Win Recovery Project (TWRP) and ClockworkMod Recovery (CWRM) come in place. They offer the possibility to flash custom ROMs which is not possible with the stock recovery mode. Other features include a file browser for update.zips, adb shell and NANDroid backups. Without a custom recovery you won’t be able to flash a custom ROM.
It does not really matter which replacement recovery you install, just go with the one that suits you most. In some rare cases the root script or custom ROM installation only works with either TWRP or CWM. Nowadays, TWRP is the king of custom recoveries and would be my suggestion for you to use.
TWRP – Team Win Recovery Project
Team Win Recovery Project‘s custom recovery offers an easy and touch driven user interface. It includes all typical recovery features needed to install custom ROMs, kernels, other tweaks and many more. You are also able to backup and restore your device using TWRP.
ClockworkMod Recovery used to be one of the most popular custom recovery modes. However, in the last 2 years TWRP took over the throne and became the most popular recovery. It also includes all advanced recovery features like installing custom ROMs and other files, as well as a backup and restore function. You can control the CWM UI via touch or key-input.
Understanding Custom ROM Versions
As Custom ROMs are constantly improved, they usually come in four different categories: Nightly, Milestone, Release Candidate and Stable. This is what you can expect in every stage:
Nightly
Nightly versions are usually generated every 24 hours and can be highly experimental and unstable. Especially early versions of a new custom ROM can have many bugs and missing features. If you want to have the latest features while risking instability – go for nightlies!
Milestone Snapshot
Milestone Snapshots are basically nightly versions that have reached a certain milestone. They can be regarded as being quite stable, but may include certain bugs and issues. Since they are only created every few weeks (or months), they won’t have the latest features that might be included in the nightly versions. If you are looking for the latest features while having a rather stable system, check out milestone snapshots.
Release Candidate
Release candidates, as the name already implies, are one of the last builds before the stable version of a custom ROM is released. RCs are mostly stable but might have a few minor issues. If you’re looking for something stable and ready for daily use, I would recommend to go with release candidates!
Stable
Stable versions are (obviously) the most stable versions around, with all or nearly all problems fixed. Some stable ROMs may still include some smaller issues or certain things not working. Stable versions are definitely the safest way to go, but it might take months before a new stable with new features or fixes is released.
Official, Unofficial & Combined Releases
It is also important to say that custom ROMs are often available as official and unofficial releases. Later use the source code of the official release (if publicly available) and adapt it to devices not supported by the main developers. Unfortunately, this often leads to a delay. In addition to that, many developers combine features of different custom ROMs.
Custom ROMs
Custom Roms offer you a variety of new features, tweaks and visual enhancements. The best source to find a working one for your device is the XDA-Developers forum. Many custom ROMs are based on the two big releases: CyanogenMod and Paranoid Android. The easiest way to find the best custom ROM for you is to compare their features or simply test them for a few days. To make your start easier, I’ve written a few words about the major custom ROMs below.
I’m only able to give you a limited overview in here. If you really want to dive in I would recommend checking out your device specific sub forums on XDA developers. With Android modding becoming more and more popular, you’re often able to find many different custom ROMS for your device, especially if it’s one of the more popular phones or tablet.
CyanogenMod
CyanogenMod looks very similar to stock Android, but offers several enhancements and tweaks. Besides increased system performance and reliability, it includes many interface enhancements and integrated features. CM is one of the most popular custom ROM solutions as it brings a stock Android experience to many devices that come with a heavily-skinned Android version such as LG or Samsung Galaxy devices.
CyanogenMod Features
OpenVPN integration
Lockscreen gestures
Expanded quick settings
DSP equalizer
Complete Theme engine including own theme store
Wi-Fi, bluetooth, and USB tethering
CPU over- & underclocking
Based on Stock Android
Latest CyanogenMod Version
CyanogenMod is usually up-to-date and uses the latest Android version. The latest version available is:
CM 13.0 – based on Android 6.0 Marshmallow
A quite unique feature of CyanogenMod is it’s installer which makes installing the custom ROM quite easy. Besides flashing the ROM it will also root your Android device and will guide you through the whole process. Unfortunately, the installer is currently only available for Windows.
CyanogenMod is available for the majority of popular Android devices. You can find a list of supported devices on the CyanogenMod website.
BlissRom
BlissRom is a new kid on the block. They basically take CyanogenMod as a source and add some magic to its. While updates are not as frequent as with CyanogenMod, the team covers the most important stuff and usually releases up-to-date stuff.
BlissRom Features
Based on CyanogenMod (= all of its features)
Audio Improvements
Endless list of visual improvements
Global gestures
Modified power menu
Latest BlissRom Version
The latest BlissRom version is based on CM 12.1 and is called BlissPop and still running Android 5.1.1.
BlissRom is available on a range of devices. You can find a list here.
ParanoidAndroid
ParanoidAndroid is completely different to CyanogenMod and one of the “newer” custom ROMs out there. It’s currently my favorite custom ROM as it’s fairly close to stock Android while adding cool features like Peek and Hover. Next to CyanogenMod it seems like PA is king in the custom ROM scene. Unfortunately, the team only supports a small range of devices (Google Nexus & Oppo, OnePlusOne). There are, however, so-called Legacy versions available which support other devices.
ParanoidAndroid Features
Floating notifications & multitasking
Hidden Navigation PIE mode
UI customization
Gesture controls
CyanogenMod themes support
I was running PA on my Nexus devices and really loved it. It’s stable, fast and battery life is great. I can highly recommend this ROM.
Latest ParanoidAndroid Version
The latest PA version is based on Android 5.0 Lollipop. PA usually works with nightly version that are quite stable and frequently updated. Unfortunately it has not been updated to Marshmallow yet. It also seems like the official version for Oppo devices is maintained more frequently than the legacy versions.
ParanoidAndroid Availability
An overview of officially supported Google Nexus, OnePlusOne and Oppo devices can be found here. Legacy devices are listed here.
Device-specific custom ROMs
The custom ROM scene developed itself into a certain direction in the last year, especially with stock ROMs including more and more features. As device manufacturers often don’t publish official drivers, custom ROMs like CyanogenMod are not able to support all features. Because of this, custom ROMs are often developing in a direction of adapting ads to devices. Because of this, I cannot give you great recommendation for all devices. I would personally suggest to either go with the big players like CyanogenMod or look for a popular specific ROM for your device. The XDA Developers forums should do the trick for that.
Flashing Custom Kernels
Kernels are the brain of your Android device and communicate between software and hardware. Therefore, they are responsible for managing things like CPU / GPU clocking speed, screen sensitivity / colors or voltage. By using a custom kernel you can not only improve battery life, but also increase system performance.
Many custom ROMs already come with their own kernels. This is done to implement software communication of the custom ROM with the hardware of the device and also to ensure a better performance. Nevertheless, you are often also able to flash custom kernels to custom ROMs. If you decided to stick to a rooted version of stock Android, flashing a new kernel can offer you additional performance with the convenience of a stock OS. Unfortunately, there are no “big” kernel releases that work for multiple devices and it’s hard for me to give any suggestions here. I would suggest to check the dedicated XDA-Developers forum for your device
After downloading the custom kernel, you usually have to reboot to recovery and flash it from there. That’s it! Always make sure to check compatibility of the kernel with your ROM and device, because flashing a wrong kernel can brick your phone!
Apps
Rooting your Android device will offer you many benefits. Besides the features mentioned above, you can also install great apps that require to go deep into the system. Using them with an un-rooted device is not possible. Below I’ve listed a few apps that I like and use on an everyday basis. Feel free to share other apps in the comments section below!
Titanium Backup
Titanium Backup is a great backup tool for Android devices that offers tons of features. It provides the possibility to backup your data, settings and apps. Scheduled backups are also available. The paid pro version offers lots of great features like syncing backups with cloud-based storage providers such as Dropbox, Google Drive or Box. In my opinion this is one of the best root apps and a must-get. Especially if you’re a flash-a-holic, performing and restoring quick backups of all your apps (incl. settings and save games) is really easy and convenient with Titanium Backup.
ROM Manager
When you constantly switch between custom ROMs, ClockworkMod’s ROM Manager is one of the essential apps to get. Besides flashing ClockworkMod recovery, it will help you to organise and install your custom ROMs and backing-up your Android device. The paid premium version includes additional features like automatic backups, web connect and incremental ROM downloads.
AdAway
I struggled a little bit when deciding to either include AdAway or not, because it’s great for users but bad for app publishers and marketers. Google removed it from Google Play but you can still get it on the AdAway website. Like AdBlock Plus on your computer, the app modifies your Android devices hosts file to prevent apps and browsers to display advertisements. This will not only improve your app usage experience, but also increase battery life and decrease mobile traffic. Be fair and purchase paid versions of apps or donate a small amount to developers to make sure they will keep on programming great apps!
Google has recently begun to remove certain apps that violate their distribution agreements from Google Play. If you’re still interested in installing AdAway, please refer to the AdAway website.
Xposed Framework
Xposed Framework is a great app that offers the possibility to add features to your Android devices without flashing a custom ROM (or in addition to it). You’re able to install modules which offer visual customisation or battery improvements, amongst others.
Greenify
Greenify is a great app to improve battery life and system performance because it puts selected apps in hibernation mode. Not having tons of apps stored in RAM or running as system processes will make your Android device faster and increase your user experience. Please refer to full review for more information.
Frequently Asked Rooting Questions
1. How can I restore stock Android?
To get back stock Android, simply flash a stock ROM suitable for your device. This way you’ll get an unrooted, stock Android version with restored warranty.
2. What happens to my settings, contacts and apps when I install a custom ROM?
It’s always recommended to wipe your device before installing a custom ROM for the first time. If your Google account is linked to your phone, contacts, emails and apps will automatically be downloaded after launching the custom ROM and logging in to your Google account. You can backup your settings with apps like XYZ.
3. How can I upgrade a custom ROM?
Most custom ROMs offer a update function, some directly integrated to the OS, others using a specific app. You can also use ROM Manager to update certain custom ROMs.
4. Is it possible to just root a phone and not install a custom ROM?
Yes, simply use a stock ROM and root it. If you update it, your root-access will be gone, though.
5. Do I need to go step-by-step to upgrade my Android device or can I directly go to the latest version available?
You can usually simply flash the latest ROM and are good to go. Custom ROM updates usually come in a full package, meaning that you have to download the complete ROM to update it. The downloads are usually about 100-200 MB.
6. Is there a special order to flash a ROM or kernel?
I would suggest flashing the ROM first as they often include their own custom kernels. Afterwards, boot your phone with the custom ROM, go back to the recovery mode and flash the kernel. Also make sure to check whether your custom kernel is supported by the ROM.
7. Can I update or change certain parts of Android without flashing a ROM?
Not in terms of getting a newer Android version. However, you should have a look at Xposed Framework as it brings many custom ROM features to your Android installation.
8. Do I have to downgrade my phone to flash ROM XYZ?
No – as long as your bootloader is unlocked and you have a custom recovery installed. With some devices, you need to downgrade to be able to do that. Custom ROMs usually don’t require a certain Android version because everything OS-wise is overwritten anyways.
9. Is there a custom ROM for my phone / tablet?
I would recommend to head over to the XDA developers forums and perform a search query there. If you’re using one of the popular devices there are usually many custom ROMs available. You can always check out Xposed Framework to add some more features to your Android device if no custom ROM is available.
Final Words
Do you have any questions about the rooting process, custom ROMs, tweaks or apps? Do you maybe want to share other great apps that I might have forgotten? Feel free to do so in the comments below!
I am interested in rooting my android but do not know how to begin and how to identify my LG
how to know whether the recovery image in working or not without flashing on android
how can i create a virtual android environment that mimics my android kernel and os .So that i can flash recovery on virtual android without damaging my physical device........plesae help me .i am new to this :crying::crying:
sai2698 said:
how can i create a virtual android environment that mimics my android kernel and os .So that i can flash recovery on virtual android without damaging my physical device........plesae help me .i am new to this :crying::crying:
Click to expand...
Click to collapse
you can use virtual box on PC
just get a tutorial on internet
monterlarge said:
I am interested in rooting my android but do not know how to begin and how to identify my LG
Click to expand...
Click to collapse
just google your device and search for the compatible ROM
EASY PEASY
sai2698 said:
how can i create a virtual android environment that mimics my android kernel and os .So that i can flash recovery on virtual android without damaging my physical device........plesae help me .i am new to this :crying::crying:
Click to expand...
Click to collapse
Use virtual box
I DONT TAKE ANY WARRANTY WHATSOEVER IN ANY DAMAGE THAT MAY RESULT IN FOLLOWING THIS GUIDE OR USING THE SOFTWARE, ROM IN QUESTION, IN ANY WAY, MAY IT BE AS INTENDED OR NOT. IF YOU HAVE ANY FEELING YOU COULD END UP SUING ME FOR RISKS *YOU ALONE* ACCEPTED TO TAKE, YOU SHOULD IMMEDIATELY STEP BACK AND LEAVE THIS POST, ALL THE OTHERS: BE CAREFUL. YOU WILL LOSE ALL OF THE DATA ON YOUR PHONE'S USERDATA, CACHE AND SYSTEM PARTITION AND THE PHONE WILL BE FACTORY RESET!
STOCK FIRMWARE INSTALLER: https://support.wikomobile.com/maj/Lenny5_OPE_V34.zip <-- if you brick your device.
Hey folks
This is just a brief explanation on how i built this ROM, a complete guide to building the rom may be published at a later point in time. For the Downloads, go to the Links section. The flashing guide will be focused on Lenny 5, but the image may work on other treble-enabled devices, too, so feel free to try and report if your device works with this build.
Build variant: arm-aonly-floss-su-userdebug
If there's interest in other build variants (specifically with microg and floss - fdroid, moz-nlp, openweatherprovider - implemented), ask me, i will do my best.
Build description:
I have an old Wiko Lenny 5 around here and wanted to use it as a Kodi Remote etc. at home, but didn't want to use their stock ROM. Also i wanted some freedom in using my device, specifically a rooted device and microg implementation. After trying to build TWRP with no success and the Wiko Build information being massively outdated i then focused on Generic System Images, as Lenny 5 is Treble-enabled. Big thanks to @phhusson for the whole lot of effort he put into building AOSP GSI's (and also clues towards building LineageOS GSI's). After having AOSP9 installed on it for some time, i got bored and tried to compile LineageOS using the patch-and-build system provided on phhusson's github. That worked just great on AOSP9, but failed to build a bootable LOS16 in the first place. So after some recherche, i stumbled across @AndyYan's thread, containing some LineageOS GSI's prebuilt and ready to use. These worked great on my phone, but as stated above, i wanted to customize my LineageOS even further, so i manually patched my build-tree with AndyYan's Lineage-Treble-Patches by doing what this build script does, tested and it booted (i guess it's mainly related to the SELinux Policies not being correctly built for LOS with only phh's treble-patches). So far so good.
Additionally, i implemented the MicroG services by cloning these prebuilts on github to the respective folder in the build tree and before the build executed
Code:
export WITH_SU=true
to include LineageOS's root system in the build. I adapted the treble_arm_afS.mk device config to not use phh's su and the device/lineage/floss.mk file to include
FDroid
FDroidPrivilegedExtension (which is being built from treble sources)
MicroG services (use Play Store Apps)
FakeStore (use Play Store Apps)
MozillaNlpBackend (MicroG Network Location backend)
NominatimNlpBackend (MicroG Network Location backend)
OpenWeatherMapWeatherProvider (for LineageOS Weather Provider)
You are then free to use no Playstore at all or i.e. Yalp Store to download Play Store Apps.
After downloading the Image you may need to Unpack it via 7-zip or another tool.
Flash the device:
To install this custom ROM on the Wiko Lenny 5, in your stock ROM go to Settings->Developer Options->OEM unlock->Enable. Also, in the Developer Options, make sure, ADB Debugging is active and, on prompt, accept debugging connections from your computer.
On your computer, enter Command Prompt and issue the following commands:
Code:
adb reboot bootloader
*wait for device reboot*
fastboot oem unlock [COLOR="Red"]<-- this will factory reset the device!!![/COLOR]
*press vol up on the phone to allow unlocking the bootloader, and wait for the phone to return to fastboot mode*
fastboot erase userdata
fastboot format cache
fastboot format system
fastboot flash system <path-to-the-downloaded-gsi>
*wait for each process to finish*
fastboot reboot
now, wait for the phone to reboot, it should, after some time, show you the usual LineageOS startup screen. Take your time to set up your phone. To make MicroG and FakeStore work properly, you will have to Go to Settings->Apps&Notifications->App-Permissions->Spoof package signature->Menu->Show System Apps and allow FakeStore to spoof Signature. Go to Settings->System->Advanced->MicroG Settings and add your Google account. Activate Device Registration. Then activate Google Cloud Messaging and Google SafetyNet, if you want to take advantage of those services. Inside the UnifiedNlp Settings choose MozillaNlp in the first, and NominatimNlp in the second setting.
Go back and choose "Self check", if required, if required, grant MicroG GmsCore the permission to spoof signature, this should make most of the boxes go "checked". If Phonesky shows errors about signature spoofing, this should normally be gone after a reboot of the phone (given you allowed FakeStore sig spoofing). Disable battery optimization and then reboot the phone.
Check back in MicroG Settings->Self check, if all the boxes have been checked. If not, most mandatory points are self-explanatory.
This Lineage ROM will not allow you to update to a newer version. I cannot guarantee continuous updates, but encourage you to try building LineageOS treble with the way explained above, yourselves. If enough interest is around, i will consider doing updated builds from time to time.
Update:
Today i compiled a recent source tree containing the 5th of October patches. I will try to keep up with updating the Image whenever security fixes are released. The download links below have been updated to the newest version. To update your phone without deleting the data on it (make sure you have adb debugging enabled), you can simply do
Code:
adb reboot bootloader
fastboot flash system <system-image.img>
fastboot reboot
and then give your phone some time to "update". it should boot normally without erasing your data.
Links:
ROM .7z [~430MB]
ROM .img (~1.1GB)
(version was compiled at 19th of October '19, containing the October 5th security fixes.)
Let me know if this works for you, too!
Cheers
ivelischt
*reserved for additions/build guide*
Nice work
Nice work, I'll test the ROM later or tomorrow, also I like to see some development for this phone, also, It would be very nice to develop a custom recovery for it for better flashing experience and being able to flash gapps.
I have kinda workplace on my PC, I'm still wondering to build my first ROM but I think it will take lot of time.
Hanthonious said:
Nice work, I'll test the ROM later or tomorrow, also I like to see some development for this phone, also, It would be very nice to develop a custom recovery for it for better flashing experience and being able to flash gapps.
I have kinda workplace on my PC, I'm still wondering to build my first ROM but I think it will take lot of time.
Click to expand...
Click to collapse
Thanks. The custom recovery thing is a bit more difficult for treble devices, but i'd be happy to learn more from more experienced people.
I was not able to get TWRP running despite "successful" Custom recovery builds.
The build is quite straightforwards if you have some experience on compiling with linux. But you need around 200400Gigs of free space per build tree (lineage, aosp, ...). The most difficult thing for me was to alter the sources for inclusion of the packages i mentioned above, including microG. to build with opengapps, i expect, you'd use the same approach to include them in the build tree as with microG, just using the other packages and probably slightly customized CUSTOM_PACKAGES config. there is a k300 recovery out in the wild net. so there should be at least *some* possible way to port twrp for the k400, too.
about the time to build the rom: it took me about a day to sync sources and, using 2 cpus at 4gig's of java virtual memory, about 6 hours to compile the first round. after that, only compiling the changes made, it took me about another half an hour to recompile the changes. the editing process is marginal, if you know how to append to/remove from/patch the source files, the lineage4microg and treble rom-builder bash-scripts on github give you a pretty good insight in how to apply patches. also, from the dockerfiles you can get a list of all the dependencies your system needs to build the tree. i used these sorts of "tricks" to ensure my build runs well.
so far from me. i will try to find some free time in the future to put up some guide on how i built the rom as-is.
feel free to report if the rom works on your device!
best regards
edit: 400Gigs is better
ivelischt said:
Thanks. The custom recovery thing is a bit more difficult for treble devices, but i'd be happy to learn more from more experienced people.
I was not able to get TWRP running despite "successful" Custom recovery builds.
The build is quite straightforwards if you have some experience on compiling with linux. But you need around 200400Gigs of free space per build tree (lineage, aosp, ...). The most difficult thing for me was to alter the sources for inclusion of the packages i mentioned above, including microG. to build with opengapps, i expect, you'd use the same approach to include them in the build tree as with microG, just using the other packages and probably slightly customized CUSTOM_PACKAGES config. there is a k300 recovery out in the wild net. so there should be at least *some* possible way to port twrp for the k400, too.
about the time to build the rom: it took me about a day to sync sources and, using 2 cpus at 4gig's of java virtual memory, about 6 hours to compile the first round. after that, only compiling the changes made, it took me about another half an hour to recompile the changes. the editing process is marginal, if you know how to append to/remove from/patch the source files, the lineage4microg and treble rom-builder bash-scripts on github give you a pretty good insight in how to apply patches. also, from the dockerfiles you can get a list of all the dependencies your system needs to build the tree. i used these sorts of "tricks" to ensure my build runs well.
so far from me. i will try to find some free time in the future to put up some guide on how i built the rom as-is.
feel free to report if the rom works on your device!
best regards
edit: 400Gigs is better
Click to expand...
Click to collapse
The ROM works great but I'd like to see one like this with gapps to install on my device (freaking system image size), I've never used MicroG before and I don't know well how to use it.
Also, if you have the knowledge (I'm pretty sure you know more than me) we can investigate a way to create a TWRP version for K_400
Hanthonious said:
The ROM works great but I'd like to see one like this with gapps to install on my device (freaking system image size), I've never used MicroG before and I don't know well how to use it.
Also, if you have the knowledge (I'm pretty sure you know more than me) we can investigate a way to create a TWRP version for K_400
Click to expand...
Click to collapse
Hi Hanthonious
ivelischt said:
If there's interest in other build variants (specifically with microg and floss - fdroid, moz-nlp, openweatherprovider - implemented), ask me, i will do my best.
Click to expand...
Click to collapse
as the microG variant requires some "special sauce", namely the ability to spoof signature as well as other small fixes in the source code, my source tree is a bit different from the "vanilla/gapps" source tree. thus, to build variants not containing microg, you can simply sync the lineage source tree and apply the additional phh treble sources&patches. *edit: next to phh's patches, you will also need AndyYan's patches; you can find information about it in the OP. given, i write a guide (which i still intend to, but this takes some time), the patching step will be explained more clearly* basically, it's one step less than compiling it with microg. at the moment i cannot afford enough disk space to create another work tree, which is why i "can't promise" other build variants, until this issue is gone. which may be tomorrow or in a year. maybe you can find a gapps-version of treble-lineage 16 here in the xda boards. otherwise you will have to wait, or try to build it yourself. also, you might be interested in @AndyYan's lineage version, which is vanilla (no gapps or microg).
i would guess that the system image will not grow excessive just by including opengapps, but i may be wrong. i think that you'd possibly would have to choose a "non-complete" opengapps-package, to make it fit.
to quickly summarize what microg does is, that it spoofs its signature to make your phone think that you have the real Google Services Framework, Google Cloud Messaging, etc. services installed. this makes apps, which depend on these services, work even though you don't really "have" them. additionally, microg establishes an "essential" communication between itself and the real google services to allow you to use google services despite having all their bloatware.
to round this up, you have fakestore which spoofs existence of Google Play Store for those apps and games, which specifically check for GPS's existence (Phonesky app).
i think this should quite generally point out, what microg is for (an api which connects you to google, whilst only handing out information, which is crucial to keep a specific connection alive)
you can then use i.e. Aurora Store to download and update your preferred playstore apps. i tell you this specifically, as i hope that, using it right, microg might be able to give you a "fully stocked" phone experience, whilst keeping most of your data secure and your phone unbloated by google's app-hoard.
if you follow the instructions in the OP on how to fully enable microG, this might be a very handy solution for you, too, so maybe, you want to give it a chance.
to point out my issues with twrp (as far as i can tell using my little experience): twrp is device specific. which means, you need a vendor tree and you need to include it whilst building, so twrp can compile against it. now, treble is a way of excluding your device specific vendor tree from the build altogether (your system image basically doesnt contain the vendor files in a "folder" (/vendor), but in a seperate partition. this partition is "simply" beeing symlinked to from your system partition. this way you will never need to build vendor-specific sources but android builds against standardised "api's" which are being "serviced" by treble-enabled phone's vendor-files (lying at the vendor-partition). this makes building aosp and/or lineage, etc. easier as you can build one variant per architecture, which fits all treble enabled phones of that architecture (arm/64/binder32/64,a/ab,...). this is, very basically said, what is called a HAL (hardware abstraction layer) on a desktop computer.
but at the same time it's much more difficult to find vendor sources for those phones, as there is no more need at all for manufacturers to make these sources publich (as far as i understand it). as a matter of fact, you may not need these vendor sources for modern aosp (8.1+), which really is a grace!! but twrp doesn't seem to work when compiled against treble trees.
i even managed to compile a kernel which is mentioned at the wikogeek site for the lenny 5. i tried to include that kernel when compiling the recovery image but even that did not work out. as i am no experienced programmer (especially not in the high languages), i will not be the person to ask when it comes to finding out what bugs and how to circumvent it.
there is a little light at the end of the tunnel, though. as far as i understand it, treble-phones come with mostly generic kernels, which *could* make it easier to find a way to build a kernel/boot/recovery image in a similar fashion we build the gsi (generic system image) with. additionally, if there is some effort on it, i imagine, that it would be possible to generally modify twrp in a way so it's able to build against treble source trees with missing vendor source. this would enable twrp to run on virtually any phone which is treble enabled and there would be few to no need to port it for each device, specifically. maybe there would then be versions as in the treble gsi's (arm/64,a/b,...) as well as build variants for alternative display sizes etc.
but i wouldn't even know where to start...
i hope i was able to answer your questions. if you decide to stick with the variant in the OP, you should consider downloading and installing the most recent updated build.
best regards
Problems I found in the rom and if there is a way to solve them
Yo,
I wanted to point out the problems I found in the rom and if there is a way to solve
These are the problems I encountered:
1: *THE MOST IMPORTANT*
I can't pass the safetynet test, I researched a lot and I still couldn't solve
When I try to pass the safetynet test on magisk it gives "safetynet API Error"
When I try to do the test with the "SafetyNet Helper Sample" app it gives "SafetyNet request: success
Response validation: fail
Error Msg:
ApException [17]: API: SafetyNet .API is not
available on this device. Connection failed with:
ConnectionResult {statusCode = SERVICE_INVALID,
resolution = null, message = null}
And the "SafetyNet Test" app gives me "fail (Google Play services not available)"
I am aware of the new problem with the safetynet:
(sometimes people are still able to pass the test probably because it is still in maintenance or something)
https :// www . androidpolice . com /2020/03/11/safetynet-improvements-kill-magisk-hide
https :// twitter . com /topjohnwu/status/1237656703929180160
https :// twitter . com /topjohnwu/status/1238514375150850048
https :// twitter . com /topjohnwu/status/1237830555523149824
But even so I should be able to run the test even if it give both negative should run instead of showing those errors
2: The contacts I had on the SIM card and Google account do not appear in the contacts.
So I went on WhatsApp to save the ones I wanted to save, but after a few days and a few restarts the contacts are still saved, but on WhatsApp it shows that they are not saved even appearing in the contacts, to appear again saved on WhatsApp, I have to save them all again
3: Cant login in Clash Royale with google play games account, can i flash the rom and gapps to work or the microg and google play services will create some conflict, is there a way to unninstall microg completly and reflash the rom without microg and flash gapps?
4: Error when login in pokemon go: unable to authenticate, I researched it and it seems to be because the safetynet is negative but I can't even run the test (only after I became aware of the new safetynet problem) even with this new problem I would like to try to run the test to see if it passed since some people still are successfully passing the test
5: in the microg settings in self-check an option is not checked in the box "UnifiedNlp do not have location to test geocoder" I already researched to see if it solved something but I couldn't
edit: I solved it using the "Apple WI-FI" backend instead of the "Déjà Vu Location Service"
BUT NOW ITS GIVE ME AN UNCHECKED BOX
"Network-based location enabled:
you either disabled network-based location
(in system settings) or the system is not
supported"
6: some times in the time widget just appear "loading widget..."
and these are all the problems that I encountered, pls help me
solving these problems, thx!:good:
sorry for some mistakes i translated from portuguese to english with google translator and my knowledge of english
CooperTUGA, thanks for writing. And I want to apologize for letting you wait for so long. In fact, at the moment i do not actively develop this ROM (due to data loss on my virtual machine).
Anyways, i will try to address your issues as good as i can, though i must admit, none of these issues happened on my device.
ad 1: The only thing that comes to my mind is, that something went wrong when registering your device with the Android-ID. (see OP activation instructions). The SafetyNet-API itself should be working, atleast I had no similar issues (after Registering the device it takes some time - around 5 minutes - for Android to reflect the registered state).
But if someone happened to have this issue and knows another solution, you are welcome to tell!
ad 2: Does it help when you try to import the Files from the SIM card? As for Google contacts, it is - from my POV - stringent, that, if the SafetyNet API doesn't work properly, you will be unable to access Google Services (as Google Contacts) which would explain the missing Google Contacts.
ad 3: GApps and microG are two different things. GApps install a version (open-source fork, contains proprietary binaries) of the Official Google Apps, that is, they provide full functionality towards google services, provided you registered your device correctly.
microG is a pure Open Source fork of that, providing but the Framework with which Google Apps can be run. It does not provide Google Apps (like PlayStore etc.) by itself but merely allows them to run, given the configuration is right. This microG-ROM is not built to work with GoogleApps like PlayStore, but instead relies on the microG Services to get Apps, providing same or similar services, running (like Aurora Store etc.). To address your question, it is possible, to change the source code which was used to build this ROM, so it builds with Gapps or completely free of any such services, in fact it would mean to exclude certain patches, but such projects (Treble-enabled) are covered by others and because of above stated reasons i will not be able to provide such in near future.
Short but clear: No, there is no way to "uninstall" microG as it is built together with the ROM and the source used was especially prepared to use microG. But if configured right, you should be able to use your Google-Account in combination with Google-Services-Apps or Games despite using microG.
ad 4: See above. If everything's configured right, you should be able to play Pokemon GO, although i don't use any of these Apps (Clash Royale, Pokemon GO, WhatsApp). I never encountered any Problems along using Google Apps with this ROM.
ad 5: Well, the error says it all. I have Mozilla Location Service installed, which works like a charm. Maybe try this one? You can get it from FDroid, search for "MozillaNlpBackend" and see if it helps to sort this out? This works for me, after all.
ad6: as this is very unspecific, i cannot really tell what's the problem, but i would guess it has to do with the SafetyNet API not doing what it should or even the Location Backend not reporting position in time...
Did you clean your cache and data partitions while installing this ROM? I really am not sure what could create the behaviour you describe. Maybe there was a change in the SafetyNet/Device Certification process since this ROM-Build, maybe theres someone in those boards who could answer this, but i unfortunately can't...
I'm sorry that i cant give you more positive news, but hopefully it helps you in orienting what some common problems could be caused by.
Let me know about your success in trying to get the ROM working.
Best regards and greetings to portugal!
ivelischt
additionally: if you are interested in porting the Lineage Source for GSI/Lenny 5, you might be interested in this Thread: https://forum.xda-developers.com/android/help/how-to-root-wiko-lenny-5-t3819469
specifically, i wrote a guide there on how to build Android/Lineage Source for Treble devices. Maybe this helps you in getting your own build environment, enabling you to build to your disguise.
Images are not available anymore. Anyone here?