[GUIDE] How to enable Camera2 API persistently and keep bootloader locked - Xiaomi Mi A1 Guides, News, & Discussion

Hello everyone. I'm pretty sure that there are a plenty of people that are rooting and unlocking their A1 just to enable Camera2 API (just like me).
But formally you can enable and make it persistent without unlocking bootloader and rooting.
Why "formally"? Because you will actually need to unlock and root during the process, but then you can relock your bootloader and forget about it until you will wipe your /data. Yes, Camera2 API will remain enabled after relocking and will persist even after OTA updates.
1. If you already didn't, unlock the bootloader and root your phone by Magisk using this guide.
2. Enable ADB in the developer settings.
3. Assuming you already have platform-tools binaries, do this in your shell/cmd:
Code:
adb shell
Now, when you are in the device shell, type this:
Code:
su
The device will probably ask about root access, grant it.
Now, when you are in the root shell, type this:
Code:
setprop persist.camera.HAL3.enabled 1
4. Reboot and make sure that Camera2 API works for you now.
5. Go to Magisk manager and completely uninstall Magisk here.
6. Reboot and make sure that your system boots properly.
7. Reboot to bootloader:
Code:
adb reboot-bootloader
8. Relock your bootloader:
Code:
fastboot oem lock
Done! Now you have permanently enabled Camera2 API without messing OTA and security measures.
THIS DOESN'T TOUCH SYSTEM FILES AT ALL AND HAS NOTHING TO DO WITH BUILD.PROP

flex1911 said:
Hello everyone. I'm pretty sure that there are a plenty of people that are rooting and unlocking their A1 just to enable Camera2 API (just like me).
But formally you can enable and make it persistent without unlocking bootloader and rooting.
Why "formally"? Because you will actually need to unlock and root during the process, but then you can relock your bootloader and forget about it until you will wipe your /data. Yes, Camera2 API will remain enabled after relocking and will persist even after OTA updates.
1. If you already didn't, unlock the bootloader and root your phone by Magisk using this guide.
2. Enable ADB in the developer settings.
3. Assuming you already have platform-tools binaries, do this in your shell/cmd:
Code:
adb shell
Now, when you are in the device shell, type this:
Code:
su
The device will probably ask about root access, grant it.
Now, when you are in the root shell, type this:
Code:
setprop persist.camera.HAL3.enabled 1
4. Reboot and make sure that Camera2 API works for you now.
5. Go to Magisk manager and uninstall Magisk here.
6. Reboot to bootloader:
Code:
adb reboot-bootloader
7. Relock your bootloader:
Code:
fastboot oem lock
Done! Now you have permanently enabled Camera2 API without messing OTA and security measures.
Click to expand...
Click to collapse
Is it true
Sent from my Mi A1 using Tapatalk

Have you tried it? When updating the OTA build.prop in system is not rewrited? What is the difference with replace build.prop in twrp? When I tried it the OTA didn't upload because the edited system partition.
Enviado desde mi Mi A1 mediante Tapatalk

Can you give me the platform-tools binaries? Or link for that

flex1911 said:
Hello everyone. I'm pretty sure that there are a plenty of people that are rooting and unlocking their A1 just to enable Camera2 API (just like me).
But formally you can enable and make it persistent without unlocking bootloader and rooting.
Why "formally"? Because you will actually need to unlock and root during the process, but then you can relock your bootloader and forget about it until you will wipe your /data. Yes, Camera2 API will remain enabled after relocking and will persist even after OTA updates.
1. If you already didn't, unlock the bootloader and root your phone by Magisk using this guide.
2. Enable ADB in the developer settings.
3. Assuming you already have platform-tools binaries, do this in your shell/cmd:
Code:
adb shell
Now, when you are in the device shell, type this:
Code:
su
The device will probably ask about root access, grant it.
Now, when you are in the root shell, type this:
Code:
setprop persist.camera.HAL3.enabled 1
4. Reboot and make sure that Camera2 API works for you now.
5. Go to Magisk manager and uninstall Magisk here.
6. Reboot to bootloader:
Code:
adb reboot-bootloader
7. Relock your bootloader:
Code:
fastboot oem lock
Done! Now you have permanently enabled Camera2 API without messing OTA and security measures.
Click to expand...
Click to collapse
Editing prop file will make sure that there is no ota
Sent from my Mi A1 using Tapatalk

AridaneAM said:
Have you tried it? When updating the OTA build.prop in system is not rewrited? What is the difference with replace build.prop in twrp? When I tried it the OTA didn't upload because the edited system partition.
Enviado desde mi Mi A1 mediante Tapatalk
Click to expand...
Click to collapse
persist props are being stored in /data/property, so it doesn't touch build.prop at all.

Hello,
I doubt that this will work with funtional OTA, modificating the build.prop it's modificate system, so it should't have working OTA. If we use Magisk and the modules to enable camera2api and hal3 it's because it doesn't modify system. Anyway, if someone try it and corroborate it work great with OTA, I will retract my self.
Regards

black_arashi said:
Hello,
I doubt that this will work with funtional OTA, modificating the build.prop it's modificate system, so it should't have working OTA. If we use Magisk and the modules to enable camera2api and hal3 it's because it doesn't modify system. Anyway, if someone try it and corroborate it work great with OTA, I will retract my self.
Regards
Click to expand...
Click to collapse
As I stated above, it doesn't modificate any system files at all.

Welcome @flex1911 from zenfone 2 forum :fingers-crossed:

I am currently waiting for delivery of my Mi A1 (hopefully today) and will give this a go and report back.
For people questioning this, build.prop is only one of a number of read only files that are used when setting up after reboot so I can see why this would potentially work. Not a dev myself, but understand the basics.
PS Its modify not modificate

Step 5 should be only Magisk application uninstall and not a complete uninstall right?

Removed.

It works but before locking back the bootloader you must let Android to boot the system.
If you lock the bootloader just after uninstalling Magisk it will end up with a "System has been destroyed" error

mahfoozceecy said:
The OP heading reads "How to enable HAL3 without unlocking and root". Then, in the post you are telling people to Unlock and Root via Magisk !
What's going on ?
Anyway, if someone knows how to Magisk and root, then for sure, he or she would know how to use a simple magisk module to enable HAL3.
Click to expand...
Click to collapse
You probably didn't get the point at all.

mahfoozceecy said:
The OP heading reads "How to enable HAL3 without unlocking and root". Then, in the post you are telling people to Unlock and Root via Magisk !
What's going on ?
Anyway, if someone knows how to Magisk and root, then for sure, he or she would know how to use a simple magisk module to enable HAL3.
Click to expand...
Click to collapse
Whats going on with u too? Why quoting the full damn OP?

unixbrain said:
It works but before locking back the bootloader you must let Android to boot the system.
If you lock the bootloader just after uninstalling Magisk it will end up with a "System has been destroyed" error
Click to expand...
Click to collapse
Yeah, thx. Updated the post to make it more obvious.

flex1911 said:
Yeah, thx. Updated the post to make it more obvious.
Click to expand...
Click to collapse
U mean complete uninstall Magisk or ?

Yes. You can completely uninstall Magisk.
Sent from my Mi A1 using Tapatalk

flex1911 said:
You probably didn't get the point at all.
Click to expand...
Click to collapse
The OP Heading should have read "Enable HAL3 without Editing Build.prop and Keep the OTA" .. along those lines.

mahfoozceecy said:
The OP Heading should have read "Enable HAL3 without Editing Build.prop and Keep the OTA" .. along those lines.
Click to expand...
Click to collapse
The heading doesn't matter if you read the OP itself. It's simple reading comprehension to be honest. Basically you don't edit build.prop, still get the OTA and add Camera2 API.

Related

BLU Advance 5.0 HD

It looks to me like the best phone $80 can buy I spent couple hours trying to figure out how to enable Multi User module.
My understanding is that adding this to /system/build.prop would bring users module back:
fw.max_users=3
fw.show_multiuserui=1
None of the commonly used apps can root this phone.
Without root I cannot remount /system to read-write to edit build.prop
Stock recovery can mount /system
There are options in recovery to run update from sd card or to update via adb sideload but the phone does not show in adb devices while in recovery. There is also fastboot option.
I also tried dirty cow exploit but it fails with "only position independent executables (PIE) are supported"
I am into this for only couple hours, so I know I am missing a lot. Any pointers that could get me closer to enabling Users module would be welcome.
So, after some reading, i figured I should be able to apply update form recovery that will replace build.prop with modified one. For start, to test things out, I just want to copy file from update.zip to /system/build.prop.test
I created update.zip with update-script and the file I want to add to /system.
Here is update.zip: www . filedropper.com /update_10
I signed update.zip using this:
www . learn2crack.com /2014/02/sign-android-apk-zip.html
I get error "Signature verification failed". Is the problem that keys are test keys or that they are outdated? Is some special manufacturer key required to sign updates?
I am not looking for someone to do this, I just need to be pointed in the right direction.
I have multiple users now :
- downloaded TWRP from bluroms.info
- connected the phone, enabled USB debugging and OEM unlocking in developer options
- run "adb reboot bootloader"
- after phone booted in fastboot mode
fastboot oem unlock (followed instructions on screen / all data wiped)
fastboot boot blutwrp.img (downloaded TWRP)
- twrp started...
- mounted /system
adb pull /system/build.prop
- edited build.prop
adb push build.prop /system/build.prop
adb reboot
- phone got stuck on logo after reboot
removed battery and started the phone again and all seems good
@sasha_ Hey I know this isn't about how to root but could you tell me exactly how you managed to root your Blu Advance 5.0 HD? PM me.
mrfunnybone said:
@sasha_ Hey I know this isn't about how to root but could you tell me exactly how you managed to root your Blu Advance 5.0 HD? PM me.
Click to expand...
Click to collapse
If by rooting you mean, installing supersu so that apps can request root access, i did not do that, because i do not need it. There must be some tutorial around about installing supersu once you root access to the /system - and the steps I described can you get there.
sasha_ said:
If by rooting you mean, installing supersu so that apps can request root access, i did not do that, because i do not need it. There must be some tutorial around about installing supersu once you root access to the /system - and the steps I described can you get there.
Click to expand...
Click to collapse
So is getting root access to system like booting recovery TWRP? then pressing the Mount button and checking System? Sorry I'm a newb at this.
I'd love to gain root on this phone I have twrp installed but can't seem to find a root method that works
Just in case you guys are still watching this, I posted my experience with this phone here
https://forum.xda-developers.com/showpost.php?p=75164672&postcount=26

Questions for disable verity

Hello,
I have rooted my pixel 3 by using Magisk,
my version is still Android pie,
it has successfully rooted but then when I type "adb root" it returns adbd cannot run as root in production builds,
I found out it might because I need to disable the verity, but when I type adb disable-verity it shows "verity cannot be disabled/enabled - USER build",
I have tried to follow the steps from https://android.stackexchange.com/q...dm-verity-on-android-with-user-build-type-rom but I don't quite understand how to do it,
I was wondering if anyone have more specific steps that will be able to disable the verity.
Thanks!
Skylar514 said:
Hello,
I have rooted my pixel 3 by using Magisk,
my version is still Android pie,
it has successfully rooted but then when I type "adb root" it returns adbd cannot run as root in production builds,
I found out it might because I need to disable the verity, but when I type adb disable-verity it shows "verity cannot be disabled/enabled - USER build",
I have tried to follow the steps from https://android.stackexchange.com/q...dm-verity-on-android-with-user-build-type-rom but I don't quite understand how to do it,
I was wondering if anyone have more specific steps that will be able to disable the verity.
Thanks!
Click to expand...
Click to collapse
In magisk advanced settings untick preserve adb verity and reinstall.
wangdaning said:
In magisk advanced settings untick preserve adb verity and reinstall.
Click to expand...
Click to collapse
Hello,
Thank you for your respond.
I have done that and it still doesnt let me disable the verity.
Is there any other way I can disable the verity?
Thanks!
Skylar514 said:
Hello,
Thank you for your respond.
I have done that and it still doesnt let me disable the verity.
Is there any other way I can disable the verity?
Thanks!
Click to expand...
Click to collapse
Use proton kernel!
pheco said:
Use proton kernel!
Click to expand...
Click to collapse
Hello,
I just installed the proton kernel,
and I checked my kernel version it is "Linux version 4.9.191-Proton-v19-g225054cc ([email protected]) (GCC 9.1.0) #20 SMP PREEMPT Sun Sep 8 21:50:57 PDT 2019",
but when I tried adb dm-verity it still shows verity cannot be disabled/enabled - USER build.
I was wondering if you have any idea?
Thank you.
I think you might have to do it to both slots. If it is still enabled on one of them I think it still checks.
Hello,
I upgrade my phone to android 10, and I can't flash the proton kernel,
I have done it to both slots and its still unable to disable.
Any idea?
Thank you!
Skylar514 said:
Hello,
I upgrade my phone to android 10, and I can't flash the proton kernel,
I have done it to both slots and its still unable to disable.
Any idea?
Thank you!
Click to expand...
Click to collapse
As far as I know you cannot do it in 10. I have never updated and tried, but that is what I have heard. There is no way to modify system except systemlessly with magisk modules. What exactly are you trying to do, might help get more suggestions if you tell us.
wangdaning said:
As far as I know you cannot do it in 10. I have never updated and tried, but that is what I have heard. There is no way to modify system except systemlessly with magisk modules. What exactly are you trying to do, might help get more suggestions if you tell us.
Click to expand...
Click to collapse
I am trying to run python script on the phone, so I have found this website https://medium.com/swlh/python-on-android-root-4aa56f22070a
and I was trying to follow the step to install python on the phone, but I am stuck at the adb remount command step.
It shows that I need to type adb root, but when I typed adb root it shows "adbd cannot run as root in production builds",
and I have try mount -o rw,remount /system, it gave me error "mount: '/system' not in /proc/mounts".
I checked mount and for some reason it shows system_root instead of system for "/sbin/.magisk/block/system_root on /sbin/.magisk/mirror/system_root type ext4 (ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr)", so I did some research and found out that I need to disable the verity, but when I tried to disable it it gave me the error which is "verity cannot be disabled/enabled - USER build".
Skylar514 said:
I am trying to run python script on the phone, so I have found this website https://medium.com/swlh/python-on-android-root-4aa56f22070a
and I was trying to follow the step to install python on the phone, but I am stuck at the adb remount command step.
It shows that I need to type adb root, but when I typed adb root it shows "adbd cannot run as root in production builds",
and I have try mount -o rw,remount /system, it gave me error "mount: '/system' not in /proc/mounts".
I checked mount and for some reason it shows system_root instead of system for "/sbin/.magisk/block/system_root on /sbin/.magisk/mirror/system_root type ext4 (ro,seclabel,relatime,block_validity,delalloc,barrier,user_xattr)", so I did some research and found out that I need to disable the verity, but when I tried to disable it it gave me the error which is "verity cannot be disabled/enabled - USER build".
Click to expand...
Click to collapse
System partition is under /system_root on Pie. I wonder if you could create a magisk module to install the app systemlessly.
wangdaning said:
System partition is under /system_root on Pie. I wonder if you could create a magisk module to install the app systemlessly.
Click to expand...
Click to collapse
Hi,
So now I am trying to unpack the boot.img file that I downloaded from google firmware website in order to try the method that provided by https://android.stackexchange.com/q...dm-verity-on-android-with-user-build-type-rom.
But I was wondering instead of editing boot.img, should I just edit the magisk_patched.img?
Thanks!
Skylar514 said:
Hi,
So now I am trying to unpack the boot.img file that I downloaded from google firmware website in order to try the method that provided by https://android.stackexchange.com/q...dm-verity-on-android-with-user-build-type-rom.
But I was wondering instead of editing boot.img, should I just edit the magisk_patched.img?
Thanks!
Click to expand...
Click to collapse
You are going to need root so better to modify the magisk boot image.
wangdaning said:
You are going to need root so better to modify the magisk boot image.
Click to expand...
Click to collapse
Hello,
Thank you for your respond!
Do I need to modify boot.img as well?
Or just the magisk_patched.img?
Thank you!
I think there is a way to disable verity before installing the magisk boot img, but you would have to look at the magisk github information.
Sounds good!
Thanks for your advice!
Beside that I was wondering if you know that is there anyway we can access the battery data through abd command?
I know that we can gather cpu frequency info, but I am not sure if we can get the battery data as well.
Thanks in advance!
Maybe check this thread about battery
https://forum.xda-developers.com/pixel-3-xl/themes/looking-mod-to-make-battery-indicator-t3913080

Question regarding Magisk/systemless root and file system permissions

Hey. I've been reading through all the threads on the Pixel 3a in preparation to root my new device (thanks to all for the great guides). The last version of Android I rooted was MM. I have never used systemless root, but have always rooted and customized the look/performance of my phones. For example, in the past I've simply used a root file explorer to replace system fonts and the boot animation. I also use Substratum (Layers) to theme other apps and system menus, and then Xposed for a few other mods. One of my questions is: will I have read/write permissions in order to make some UI changes with Magisk/systemless root on the Pixel 3a (running stock Android 10)? From what I have gathered, the answer is no, but I'm not clear. I've also never been without a persistent recovery like CWM or TWRP. This is all very new and uncomfortable. But I hate the thought of not having root access, even if I can't customize everything I'd like to change. Does anyone with a rooted Pixel 3a use Substratum or have a method to customize system fonts? The native theme options do not come close, in my opinion. It appears I can create a module and flash in Magisk for system fonts?
Ditamae said:
Hey. I've been reading through all the threads on the Pixel 3a in preparation to root my new device (thanks to all for the great guides). The last version of Android I rooted was MM. I have never used systemless root, but have always rooted and customized the look/performance of my phones. For example, in the past I've simply used a root file explorer to replace system fonts and the boot animation. I also use Substratum (Layers) to theme other apps and system menus, and then Xposed for a few other mods. One of my questions is: will I have read/write permissions in order to make some UI changes with Magisk/systemless root on the Pixel 3a (running stock Android 10)? From what I have gathered, the answer is no, but I'm not clear. I've also never been without a persistent recovery like CWM or TWRP. This is all very new and uncomfortable. But I hate the thought of not having root access, even if I can't customize everything I'd like to change. Does anyone with a rooted Pixel 3a use Substratum or have a method to customize system fonts? The native theme options do not come close, in my opinion. It appears I can create a module and flash in Magisk for system fonts?
Click to expand...
Click to collapse
Modules for fonts are not a problem.
https://forum.xda-developers.com/pixel-3a/themes/fonts-t4017299
Ditamae said:
Hey. I've been reading through all the threads on the Pixel 3a in preparation to root my new device (thanks to all for the great guides). The last version of Android I rooted was MM. I have never used systemless root, but have always rooted and customized the look/performance of my phones. For example, in the past I've simply used a root file explorer to replace system fonts and the boot animation. I also use Substratum (Layers) to theme other apps and system menus, and then Xposed for a few other mods. One of my questions is: will I have read/write permissions in order to make some UI changes with Magisk/systemless root on the Pixel 3a (running stock Android 10)? From what I have gathered, the answer is no, but I'm not clear. I've also never been without a persistent recovery like CWM or TWRP. This is all very new and uncomfortable. But I hate the thought of not having root access, even if I can't customize everything I'd like to change. Does anyone with a rooted Pixel 3a use Substratum or have a method to customize system fonts? The native theme options do not come close, in my opinion. It appears I can create a module and flash in Magisk for system fonts?
Click to expand...
Click to collapse
Pretty much on Android 10 you can't directly modify the filesystem, however magisk can systemlessly modify it using modules. With the latest template, it's actually quite easy to create a magisk module now, you just need to follow this guide and create a zip with the file structure described https://github.com/topjohnwu/Magisk/blob/master/docs/guides.md
If you were able to directly modify the filesystem before, then this is pretty much just as easy.
Just a word of caution as we don't have twrp for Android 10, you should enable adb access and grant root permissions to an adb shell before messing with anything just incase you bootloop.
If you do it's as easy to recover as
Code:
adb shell su -c rm -rf /data/adb/modules/<module id>/
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
Pretty much on Android 10 you can't directly modify the filesystem, however magisk can systemlessly modify it using modules. With the latest template, it's actually quite easy to create a magisk module now, you just need to follow this guide and create a zip with the file structure described https://github.com/topjohnwu/Magisk/blob/master/docs/guides.md
If you were able to directly modify the filesystem before, then this is pretty much just as easy.
Just a word of caution as we don't have twrp for Android 10, you should enable adb access and grant root permissions to an adb shell before messing with anything just incase you bootloop.
If you do it's as easy to recover as
Code:
adb shell su -c rm -rf /data/adb/modules/<module id>/
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
Thanks @Skittles9823 and @Tulsadiver. As soon as my USB C to USB A cable arrives I can get started.
Ditamae said:
Thanks @Skittles9823 and @Tulsadiver. As soon as my USB C to USB A cable arrives I can get started.
Click to expand...
Click to collapse
If you have a male to female USB-A to USB-A cable you can use that with the OTG adapter that came with the phone as well.
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
If you have a male to female USB-A to USB-A cable you can use that with the OTG adapter that came with the phone as well.
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
I know! I looked but couldn't find one. Figured a male to male USB-A to USB-C would come in handy in the future for more than just the Pixel. On another note, your how-to guide on Magisk Modules is super thorough, but it might be a little above my ability (at the moment). Time to get reading/researching. Would you be open to questions in the future? I definitely want to modify this thing. I have a day off work tomorrow and school hasn't started yet, so I should have time to unlock/root tomorrow evening.
Skittles9823 said:
Pretty much on Android 10 you can't directly modify the filesystem, however magisk can systemlessly modify it using modules. With the latest template, it's actually quite easy to create a magisk module now, you just need to follow this guide and create a zip with the file structure described https://github.com/topjohnwu/Magisk/blob/master/docs/guides.md
If you were able to directly modify the filesystem before, then this is pretty much just as easy.
Just a word of caution as we don't have twrp for Android 10, you should enable adb access and grant root permissions to an adb shell before messing with anything just incase you bootloop.
If you do it's as easy to recover as
Code:
adb shell su -c rm -rf /data/adb/modules/<module id>/
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
Wait, how are you able to access adb from bootloader? It's a bootloop, so getting into the phone shouldn't be possible.
Bramton1 said:
Wait, how are you able to access adb from bootloader? It's a bootloop, so getting into the phone shouldn't be possible.
Click to expand...
Click to collapse
i have put it into bootloader mode by holding the key combination during a bootloop. i have had to hold the keys maybe 6 to 10 secs but it does eventually go to bootloader mode. this was on a op2 though and not my 3a but i'd expect it to work with the 3a also.
Bramton1 said:
Wait, how are you able to access adb from bootloader? It's a bootloop, so getting into the phone shouldn't be possible.
Click to expand...
Click to collapse
Not from the bootloader, during boot.
Once the G logo appears you have full ADB access as long as you've granted shell super user permissions, you're good to fix any issue.
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
Not from the bootloader, during boot.
Once the G logo appears you have full ADB access as long as you've granted shell super user permissions, you're good to fix any issue.
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
Just to be clear, this:
Code:
adb shell su -c rm -rf /data/adb/modules/<module id>/
will remove the incompatible module in question during a bootloop? Do you open an active shell while installing all modules? If I grant shell root permissions now I should be able to access it at a later time, correct? Sorry for all the questions. I just want to have a method to undo modules before I start flashing. This seemed easier with TWRP.
Ditamae said:
Just to be clear, this:
will remove the incompatible module in question during a bootloop? Do you open an active shell while installing all modules? If I grant shell root permissions now I should be able to access it at a later time, correct? Sorry for all the questions. I just want to have a method to undo modules before I start flashing. This seemed easier with TWRP.
Click to expand...
Click to collapse
Yes, you'll need to replace <module id> with the folder name (which you can get by running
Code:
adb shell su -c ls /data/adb/modules
and then run the rm -rf command.
Yea, definitely grant root to shell in advance otherwise you won't be able to grant su access when you bootloop. But you just need to grant it once and make sure to check the box in the adb prompt that remembers your PC and keeps its access, then you'll be good.
Sent from my Google Pixel 3a XL using XDA Labs
Skittles9823 said:
Yes, you'll need to replace <module id> with the folder name (which you can get by running
Code:
adb shell su -c ls /data/adb/modules
and then run the rm -rf command.
Yea, definitely grant root to shell in advance otherwise you won't be able to grant su access when you bootloop. But you just need to grant it once and make sure to check the box in the adb prompt that remembers your PC and keeps its access, then you'll be good.
Sent from my Google Pixel 3a XL using XDA Labs
Click to expand...
Click to collapse
Got it. Thanks again. Just to clarify, when you say to "check the box in the adb prompt that remembers your PC" you're referring to the the USB debugging authorization?
Ditamae said:
Yes, you'll need to replace <module id> with the folder name (which you can get by running
Got it. Thanks again. Just to clarify, when you say to "check the box in the adb prompt that remembers your PC" you're referring to the the USB debugging authorization?
Click to expand...
Click to collapse
Yes
Sent from my Google Pixel 3a XL using XDA Labs

Questions about rooting without unlocking bootloader?

Phone is Samsung A50 (A505F), Android 11,
1) As title.. how do you do that? I will keep stock ROM.
Only want to root to debloat, and add other apps that require root.
2) Also if you use kingroot, does it unlock the bootloader?
3) If you relock a bootloader does it remove root?
Will relocking erase user data?
Thank you
Generally speaking - with regards to this thread's title:
Rooting phone's Android works without unlocking it's bootloader. Rooting Android simply is adding an user called "superuser ( AKA root )" to Android.
Reason why people unlock bootloader is to be able to flash custom ROMS.
rossrosh007 said:
1) As title.. how do you do that?
2) Also if you use kingroot, does it unlock the bootloader?
Is the kingroot app required to be installed at all times to keep root?
3) If you relock a bootloader does it remove root?
Will relocking erase user data?
Phone is Samsung A50 (A505F)
Thank you
Click to expand...
Click to collapse
Rooting without unlocking bootloader only works on
4.2 jellybean
4.4 KitKat
5.0 lollipop
5.1.1. lollipop
All of the other version of android will not work because in android 6 marshmallow google patched root without unlocking bootloader so this means if u are on Android 6 marshmallow it will not work also if u are on Android 6 marshmallow and higher don't brother with kingroot or all of that one click root because that will not work I would recommend magisk to root your phone
@rossrosh007
Hint: Add Samsung A50 (A505F) to this thread's title thus mainly owners of such a device get addressed.
Austinredstoner said:
Rooting without unlocking bootloader only works on
4.2 jellybean
4.4 KitKat
5.0 lollipop
5.1.1. lollipop
All of the other version of android will not work because in android 6 marshmallow google patched root without unlocking bootloader so this means if u are on Android 6 marshmallow it will not work also if u are on Android 6 marshmallow and higher don't brother with kingroot or all of that one click root because that will not work I would recommend magisk to root your phone
Click to expand...
Click to collapse
I'm on Android 11.
Ok, so I have to patch boot.img with magisk or magisk manager (I don't know the difference)? On GitHub the latest version is just magisk v22.
So to use magisk unlocking bootloader is required... I'll be keeping stock ROM. So will I be able to relock bootloader after patching and rooting?
jwoegerbauer said:
Generally speaking - with regards to this thread's title:
Rooting phone's Android works without unlocking it's bootloader. Rooting Android simply is adding an user called "superuser ( AKA root )" to Android.
Reason why people unlock bootloader is to be able to flash custom ROMS.
Click to expand...
Click to collapse
I'm on Android 11, and I'll keep stock Rom.
How can I flash SuperSU without custom recovery or unlocking bootloader?
If I have to unlock bootloader, can I relock it after flashing SuperSU?
rossrosh007 said:
I'm on Android 11, and I'll keep stock Rom.
How can I flash SuperSU without custom recovery or unlocking bootloader?
If I have to unlock bootloader, can I relock it after flashing SuperSU?
Click to expand...
Click to collapse
Don't confuse SuperSU ( what is an application which lets you manage root permissions for apps which require root access) and SU ( AKA superuser and/or root ): Totally different things.
SuperSU app relies on presence of SU applet.
Installing SU applet doesn't require phone's bootloader gets unlocked, but it's required Android's DM-VERITY feature permanently gets disabled before, this because content of /system partition gets altered.
Look also inside here:
SuperSU: Installation Guide (Rooted and Unrooted Devices)
There are two ways to install SuperSU. If you have a Rooted Device then you can simply download this APK file and install it on your device. For unrooted de
www.squto.com
jwoegerbauer said:
Don't confuse SuperSU ( what is an application which lets you manage root permissions for apps which require root access) and SU ( AKA superuser and/or root ): Totally different things.
SuperSU app relies on presence of SU applet.
Installing SU applet doesn't require phone's bootloader gets unlocked, but it's required Android's DM-VERITY feature permanently gets disabled before, this because content of /system partition gets altered.
Look also inside here:
SuperSU: Installation Guide (Rooted and Unrooted Devices)
There are two ways to install SuperSU. If you have a Rooted Device then you can simply download this APK file and install it on your device. For unrooted de
www.squto.com
Click to expand...
Click to collapse
Ok. SuperSU app is the permission manager.
How do I go about implementing superuser without unlocking bootloader on Android 11?
Unlocking BL is required when using magisk. I'll be keeping stock ROM, so will I be able to relock BL after patching boot.img with magisk? Will root/superuser stay if I relock BL?
Some threads say the magisk patched boot.img is considered tampered and the DM-verity will cause issues when relocking BL. Unless you sign it... Is that true? (Different users saying true and false, so I don't know what is what)
1. You install matching SU applet by means of ADB. The SU applet can get fetched from here
LineageOS Downloads
download.lineageos.org
2. Can't tell you what is right or wrong: never made use of Magisk or TWRP.
jwoegerbauer said:
1. You install matching SU applet by means of ADB. The SU applet can get fetched from here
LineageOS Downloads
download.lineageos.org
2. Can't tell you what is right or wrong: never made use of Magisk or TWRP.
Click to expand...
Click to collapse
Fair enough on point 2
The SU from LineageOS not a problem to use on Samsung stock Rom? I mean that SU applet not developed to be compatible with LineageOS only or something?
Any instruction on how to apply this SU applet will be useful. (I'm searching through the forum as well)
Only to clarify things:
SU is a Linux command, Android is based on Linux kernel, hence SU applet compiled for mobile's CPU architecture always works, regardless of mobile's brand / model / Android release.
As I already mentioned here, you can install SU by means of a ADB command-sequence which typically looks like this
Code:
adb disable-verity
adb reboot
adb shell "mount -t auto -o rw,remount /system"
adb push <SU-BINARY-LOCATION-ON-PC-HERE> /system/bin
adb shell "chown root:root /system/bin/su"
adb shell "chmod 06755 /system/bin/su"
adb shell "chcon '/system/bin/su' u:object_r:su_exec:s0"
jwoegerbauer said:
Only to clarify things:
SU is a Linux command, Android is based on Linux kernel, hence SU applet compiled for mobile's CPU architecture always works, regardless of mobile's brand / model / Android release.
As I already mentioned here, you can install SU by means of a ADB command-sequence which typically looks like this
Code:
adb disable-verity
adb reboot
adb shell "mount -t auto -o rw,remount /system"
adb push <SU-BINARY-LOCATION-ON-PC-HERE> /system/bin
adb shell "chown root:root /system/bin/su"
adb shell "chmod 06755 /system/bin/su"
adb shell "chcon '/system/bin/su' u:object_r:su_exec:s0"
Click to expand...
Click to collapse
True, it's all Linux based, but thought the directories might be different manufacturer to manufacturer. With the verify functions and all... Didn't want to modify a wrong directory and get bricked.
Nice, thanks for the help and ADB commands. Also just came across LADB (on-phone ADB shell), will give it a go on that.
Will update back.
Austinredstoner said:
Rooting without unlocking bootloader only works on
4.2 jellybean
4.4 KitKat
5.0 lollipop
5.1.1. lollipop
All of the other version of android will not work because in android 6 marshmallow google patched root without unlocking bootloader so this means if u are on Android 6 marshmallow it will not work also if u are on Android 6 marshmallow and higher don't brother with kingroot or all of that one click root because that will not work I would recommend magisk to root your phone
Click to expand...
Click to collapse
rossrosh007 said:
I'm on Android 11.
Ok, so I have to patch boot.img with magisk or magisk manager (I don't know the difference)? On GitHub the latest version is just magisk v22.
So to use magisk unlocking bootloader is required... I'll be keeping stock ROM. So will I be able to relock bootloader after patching and rooting?
Click to expand...
Click to collapse
Hope you can give me some insight on this. Would be good to learn.
jwoegerbauer said:
Only to clarify things:
SU is a Linux command, Android is based on Linux kernel, hence SU applet compiled for mobile's CPU architecture always works, regardless of mobile's brand / model / Android release.
As I already mentioned here, you can install SU by means of a ADB command-sequence which typically looks like this
Code:
adb disable-verity
adb reboot
adb shell "mount -t auto -o rw,remount /system"
adb push <SU-BINARY-LOCATION-ON-PC-HERE> /system/bin
adb shell "chown root:root /system/bin/su"
adb shell "chmod 06755 /system/bin/su"
adb shell "chcon '/system/bin/su' u:object_r:su_exec:s0"
Click to expand...
Click to collapse
Can I install supersu.apk (root access manager) after this?
If I need to revert things back to how they were (unroot, enable dm-verity) ... How do I do that?
rossrosh007 said:
Can I install supersu.apk (root access manager) after this?
Click to expand...
Click to collapse
SuperSU APK is just like any other Android application. It only will properly work if SU is runing as Android service, means gets started at Android's boot up
Code:
# su daemon
service su_daemon /system/bin/su --daemon
seclabel u:r:sudaemon:s0
oneshot
on property:persist.sys.root_access=1
start su_daemon
what requires Android's boot file init.rc must got patched accordingly.
frequently conversing - with thoughts to this thread's headline:
I am rooting the phone's Android products externally, unfastening its bootloader. Rooting Android only is combining a user-designated "superuser ( AKA motive )" toward Android.
Special purpose how? Somebody unlock bootloaders is to be capable of flashing system ROMS.
jwoegerbauer said:
Only to clarify things:
SU is a Linux command, Android is based on Linux kernel, hence SU applet compiled for mobile's CPU architecture always works, regardless of mobile's brand / model / Android release.
As I already mentioned here, you can install SU by means of a ADB command-sequence which typically looks like this
Code:
adb disable-verity
adb reboot
adb shell "mount -t auto -o rw,remount /system"
adb push <SU-BINARY-LOCATION-ON-PC-HERE> /system/bin
adb shell "chown root:root /system/bin/su"
adb shell "chmod 06755 /system/bin/su"
adb shell "chcon '/system/bin/su' u:object_r:su_exec:s0"
Click to expand...
Click to collapse
I've just found this thread and wanted to understand something. Does adb disable-verity work without unlocking bootloader?
Do you mean that if you install su on the system via adb on the above sequence then the system is essentially rooted no matter whether you unlock the bootloader or not?
Earlier it was mentioned that you need to run a service in order for the superuser apps to work and this requires the boot.img to be modified and this needs the bootloader to be unlocked. Will superuser apps like superuser apk work just with su on the system?
I mean can I just soft start the daemon with a terminal app without adding it as a startup service?
Again: Rooting Android is adding an user named SUPERUSER to Android OS - not to get confused with Android's default user named root - an user who has elevated rights ( comparable to Administrator in Windows OS ).
The SuperSU app what you're referring to is a manager app that runs a database where apps which request superuser right are stored.
The SuperSu service ( read: sudaemond ) is a complete other thing, it serves another purpose: it's needed to have SuperSU app working.
It's not possible to add any binary or user or rooting app without unlocking your bootloader. All partitions except /data are not writable.
More nonsense is hardly possible.

I want a complete guide on how to install android 10 on TB-X304L. OEM unlocking is greyed out and it shows an error if I try a method given by @hk96

The problem I have is that the 'enable OEM unlocking' option is greyed out on my tablet. I've tried this method but I keep getting this error. I didn't find anything helpful on the internet. Please help me if you can.
Look inside system file build.prop for entry
Code:
ro.oem_unlock_supported
If it's value is 0 then unlocking bootloader isnt supported.
If Android is rooted then you can try to change this entry to
Code:
ro.oem_unlock_supported=1
More info here:
Locking/Unlocking the Bootloader | Android Open Source Project
source.android.com
jwoegerbauer said:
Look inside system file build.prop for entry
Code:
ro.oem_unlock_supported
If it's value is 0 then unlocking bootloader isnt supported.
If Android is rooted then you can try to change this entry to
Code:
ro.oem_unlock_supported=1
More info here:
Locking/Unlocking the Bootloader | Android Open Source Project
source.android.com
Click to expand...
Click to collapse
Well I am unable to root with those 1 click rooting apps. Is there any other way to root it? The PC way is not gonna work because it needs twrp and twrp requires me to unlock OEM
To root a device's Android TWRP isn't needed at all: Rooting is the act of unlocking the Android OS to gain complete control over the device through which you can access hidden files, change the ROM or install certain special apps. Rooting Android OS simply means to add Superuser functionality to it.
Here is what you have to do to root your device's Android: Replace Android's Toybox binary - what is a restricted version by default - by unrestricted Toybox v0.8.5. This can get achieved by means of ADB.
jwoegerbauer said:
To root a device's Android TWRP isn't needed at all: Rooting is the act of unlocking the Android OS to gain complete control over the device through which you can access hidden files, change the ROM or install certain special apps. Rooting Android OS simply means to add Superuser functionality to it.
Here is what you have to do to root your device's Android: Replace Android's Toybox binary - what is a restricted version by default - by unrestricted Toybox v0.8.5. This can get achieved by means of ADB.
Click to expand...
Click to collapse
I am not a developer and new to all these things. I would appreciate if you could provide any video or article on how to do it. Thanks in advance!!
Shutupboomer said:
I am not a developer and new to all these things. I would appreciate if you could provide any video or article on how to do it. Thanks in advance!!
Click to expand...
Click to collapse
I was able to find this method of rooting through adb:https://forum.xda-developers.com/t/universal-guide-root-any-android-device-manually.2684210/
try it out and please reply if this method worked for you as i also want to try.
update: the rooting manually method didnt work. however, i found another way to get temporary root access on the lenovo tab 4 10. the lenovo tab 4 10 uses kernel version 3.18.71 which can be exploited by cve-2019-2215. download the zip i have attached and then copy the su98-memory-kallsyms file without the extention to /data/local/tmp if you want to do it through adb or to the /data/data/_________ folder where _______ is the terminal emulator you want to use with it and chmod it. then you can just do ./su98-memory-kallsyms and it will give you a root shell.
there is even an app included that does this and provides root access to all the apps. you can however whitelist some apps by puting them in the /data/local/tmp/su98-whitelist.txt. and the apps which werent allowed root access will be automatically put in the su98-denied.txt from where you can put them in the whitelist.
WARNING: this version of su98 was not specifically compiled for lenovo tab 4 10 and is a bit unstable. sometimes when performing a root task, it will freeze your tablet and you will need to restart. this is particularly annoying for me as my powr button is broken and i need to remove and reconnect the battery every time.

Categories

Resources