Android Learners

@AndroidLearners

A HackMD team dedicated to making the Android Learners Telegram group better!

Public team

Joined on May 1, 2022

  • As with any kind of modding, there are some things you should just generally be careful about, so, I've condensed some of that into this list here :) Don't flash ROMs which aren't made for your device, you will end up Soft bricking the device or worse Don't flash .zip files or anything else if you don't trust whoever is distributing them! never flash stuff like voltefix.zip, pubgfix.zip, or anything similar without investigating first. Usually, these are made to troll people, and they are known to Hard Brick devices by overwriting the entire storage or removing criticial partitions <span style="color: red;">Do not run fastboot erase abl! "abl" stands for "++A++ndroid ++B++oot++l++oader", erasing it makes your device practically useless, as it would then be Hard Bricked</span> Do not erase or overwrite partitions with Fastboot that you don't know what they are! So please don't run commands like fastboot flash system,fastboot flash boot.img etc if you don't know what they do, and if you don't trust the person giving you things to flash!
     Like  Bookmark
  • Getting Started Disclaimer and Introduction Navigating around this book Pros/Cons to modding your Android Device Things you SHOULD NOT do Enabling developer options Unlocking your Bootloader Choosing a Custom ROM
     Like  Bookmark
  • :::warning :warning: under construction! ::: How do I even get all of this? [name=Some Random Reader] [time=May 8, 2022] I'd recommend by just using your favourite search engine (e.g Google, DuckDuckGo, StartPage) Seriously, type in your device's Name, Codename, or Model Number, add "ROM" or "Root" or something at the end, and é voilá! you got yourself some (usually) decent results!
     Like  Bookmark
  • Enabling ADB on-device To enable ADB on your Android device, first enable developer options. To do that, head to your phone's "About Phone" page in the settings app, and hit the "Build Number" text about 10 times. on MIUI you might have to hit "MIUI Version" instead. Once you've done that, search for "ADB Debugging" or "USB Debugging", then enable it. Now your device will ask whenever a PC with ADB installed and running connects if you want to allow a connection using ADB Installing it on your PC/Mac
     Like  Bookmark
  • Content Markers This HackMD book uses some marks to more easily identify certain aspects and their current state For instance, I use the :warning: emoji to signify something is under construction or otherwise unfinished. Usecase Marker Under Construction :warning:
     Like  Bookmark
  • Sometimes, something unexpected happens, and you end up breaking a device, making it no longer boot. This is what we call "Bricking", and we call it that because at that point your device is a fancy colorful brick :man-shrugging: Though, sometimes there's ways to rescue your device and bring it back from the dead, so that will be detailled here Saving yourself from a "Soft Brick" So first, what is a "Soft Brick"? A Soft Brick is when you break the device on a software level, like for example flashing a wrong ROM from another device, but critical components like the Bootloader still works You can usually save yourself like this:
     Like  Bookmark
  • Things to consider when modding your Android Device Modding your Android Device has many benefits, like for example: You can make modifications to your system and apps through Magisk or LSPosed You can restrict certain apps on their permissions even more than Android allows by default (AppOps) You can get system updates for longer than your OEM provides them (see: LineageOS) However, there is also some things to consider which might be deal-breakers to you: Banking applications, some specific games, and other applications might misbehave, check the "What is SafetyNet?" section
     Like  Bookmark
  • Short Answer: Knox trips whenever an "untrusted" Boot path has been booted from, this means anything which isn't the default boot configuration, including custom ROMs or Magisk-patched boot images. Long Answer: To be more specific than above, the e-Fuse will be tripped when any of the following applies: the device boots with a non-Samsung signed...: Bootloader Kernel Kernel initialization script
     Like  Bookmark
  • Knox is a security and device management framework that Samsung pre-installs on their flagship devices At first, it was only used for business-managed devices, until it's capabilities eventually split into the normal consumer market as well, see : Secure Folder for example. Knox's features fall within three categories: data security, device manageability, and VPN capability. Knox has a couple of security features that stand out from vanilla Android, notably: e-Fuse The e-Fuse is one of the main components of Knox. It stores wether the device has been tampered with or not depending on any of the following security additons ↓
     Like  Bookmark
  • What is "Bootloader Unlocking"? Every Android phone has something called the "Bootloader" This is what loads Android (or another OS), or your recovery just to name a few. By default on most devices, the Bootloader is locked, which is done so that nobody can modify your device without permission. How do I unlock my bootloader? Disclaimer: Unlocking the bootloader WILL factory reset the device!
     Like  Bookmark
  • The Terminal Did you know you can access a Terminal on Android? if you didn't, now you do! There are various Terminal emulators out there, some which access the Android Terminal directly, like Android Terminal Emulator, or Termux, which comes with it's own packages on top of acces to Android's shell Though something you might not have known is that LineageOS actually ships it's own Bash configuration and Binary with their builds! Bash is the shell used by most Linux Distributions, and LineageOS decided to include it for convenience All you need to do is open a Terminal and run bash, that's it! Managing Overlays manually
     Like  Bookmark
  • Most Android OEMs have their own Android ROM. Xiaomi has MIUI, Oppo has ColorOS, Realme has RealmeUI, Samsung has OneUI, etc. Some people might enjoy these Android skins and use them on a daily basis, though, this generally cannot be recommended if you want to customize Android to it's fullest. This is because most OEMs try to avoid users from rooting and modding their Android phone, like Xiaomi tries to detect Magisk in the System Security and Cleaning app. Some OEM skins might also restrict applications from running in the background, you can check wether your OEM does this aggressively and how to bypass it on "Don't Kill My App!". Outside of that, some OEM skins might have customization mods made specifically for them. Here's a list of some that I know of:
     Like  Bookmark
  • Reading logs can be kind of hard, though, there are some things which can help! First, lets look at what a log looks like, do note this log is using Logcat Colorizer, which is download-able below You can see many things, let me break it down a little bit The Purple text on the left shows us exactly when something - for example an error - happened The colored squares to the right of that shows what kind of information it is, "E" for example is Error, "I" is Information, "D" is Debug, "W" is Warning and so on next to that - in teal/greenish blue - we see some random numbers that I have honestly no idea what they mean, maybe their PID? to the right of that we see the name of the program giving the Information, for example we can the first error in this screenshot is from "Perfsdkserver" and the warning at the bottom is from "Chimerautils"
     Like  Bookmark
  • A "log" in Android is basically the same thing it stands for in the English language: it just tells you what happened, and when that thing happened. So, through logs we can see errors, information, warnings, and so on :::info :bulb: Tip! The average user usually doesn't need logs, though it can be incredibly helpful for Developers to test things, so if you commonly test for your device's developers then it's always handy to have either a Terminal, a Logging App, or ADB available! ::::
     Like  Bookmark
  • A "Custom ROM" is a replacement of the pre-installed version of Android that your device ships with Why would you want to install one? You might want to install one for more features, or faster and longer-lasting system updates, or possibly because the pre-installed firmware just sucks in your opinion for one reason or another Choice There are many to choose from, for instance LineageOS, ArrowOS or Potato Open Sauce Project, just to name a few There are some ROMs which focus on Security, like GrapheneOS, and some which focus on customizability, like Resurrection Remix (Resurrection Remix is dead tho) as well as many others with different goals
     Like  Bookmark
  • FAQ: Why don't Admins help with OEM-ROM-Ports? No, we don't hate you, Generally, we don't help all too much with OEM-Ports, as we deem it as pointless to fix something which in the end will just have usability issues. This applies to pretty much everything, from OneUI to Sony's OEM-Skins, they all usually don't work without heavy modification or breaking changes. :::danger We also usually don't recommend or officially help with them as you often need SELinux permissive, which is INCREDIBLY insecure. For example: ++anyone can gain Root Access to your device if you have SELinux set to permissive++, see Magica < this can install Magisk without having TWRP just using SELinux Permissive!
     Like  Bookmark
  • Did you ever have to reset your phone after you broke something? if so, you've probably seen the Recovery screen before, the one which allows resetting the device or installing updates using a PC In the Android Modding community, it's common practice to replace the default Recovery with something more advanced with more features, which allow flashing Custom ROMs (see What is a Custom ROM?) Some common Custom Recovery environments include: TeamWin Recovery Project This is probably the most popular custom recovery there is. Tt features many advanced features, Android Encryption support, and even backup features. Though it also has it's downsides, for example, many people consider TWRP annoying to use due to the UI being entirely XML, and some dislike TWRP for being more than it needs to be, as well as being slow to update at times. LineageOS Recovery
     Like  Bookmark
  • Island is an application which allows you to create a second instance of your applications using Android's work profiles. It has many features, can work through Shizuku or Root, and has support for AppOps, Greenify, and more. What do I use this for? The app can be useful when trying to isolate certain applications, or having secondary accounts, kind of similar to parallel space except it doesn't throw advertisements at you, and uses Android's integrated work profile :wink: Download / Install You can download it from the Google Play Store For F-Droid, there's a fork called Insular
     Like  Bookmark
  • Magisk is a modding tool for Android which allows you to do many more things even without installing a Custom ROM. upon installation, Magisk patches your device's boot.img file, and from that point onward you have Root Access Root Access Root Access means that you got full access over every single file on your Android device. With this, you can make modifications to your already installed ROM that previously weren't possible before. For example, you could now change the hosts file, located in /etc/hosts to block certain websites from loading, like for example advertisement sites "Systemless" Rooting Magisk, due to being installed by patching the boot.img is a "Systemless" Root method, meaning that no files are changed inside of the root filesystem, here: /system. Instead, Magisk puts all it's data into, well, /data
     Like  Bookmark
  • Short answer: ++there is no "Best ROM"++, you must find the one you like the most :man-shrugging: Long Answer: Whilst there is no "Best ROM" as mentioned above, you will have to find one which suits you and which you enjoy using, however, here are some ROMs that I personally recommend: ![](https://upload.wikimedia.org/wikipedia/commons/b/b2/Lineage_OS_logo.svg =25x) LineageOS LineageOS is a custom distribution of Android designed for full freedom, security, and for longevity of various different devices. Lineage first appeared after the popular CyanogenMod project had died off in 2016, and is now one of the most stable and polished ROMs out there. The verification process for official devices is thorough and guarantees a smooth experience, and for every official device there is detailed install instructions starting from unlocking the device's bootloader.
     Like  Bookmark