Related
Dear forum,
Long time no talk! I have been able to get "root" for our phones on G925VVRU4BOG7, which anyone can downgrade to. The catch is that even with /system mounted as rw, I am unable to write to it directly through most conventional means. (I can write to /data, though, which means i can patch dalvik-cache, which means my mods are coming ) However, I am able to still write to it using another, more complicated way (I can go into more detail for those interested), as a whole. Here's where you come in-- is anyone still full-rooted? If so, please message me as soon as possible! I may be able to have users who are on newer builds downgrade to older builds and get su properly installed, then manually upgrade back up to the later builds again!
If you are rooted still, all i'm going to have you do is perform this command:
Code:
su
dd if=/dev/block/platform/15570000.ufs/by-name/SYSTEM bs=4096 of=/sdcard/system.img
Then send me that system.img file on your sdcard! It'll be pretty big, so you can zip it or .7z (7-zip), whatever you'd like to do.
I will also need what build you are on. You can just send me your Build number within "Settings->About phone".
First one who does it gets credits on the official release thread i'll make, when I get a procedure down that people can follow!
Thanks!
-Trailblazer101
i have an s6 edge on 5.0.2 rooted. Would that be of help?
Did you get the system.img file? I really wish I could help you. I have this phone on 6.0.1 and stuck without root, but the thing is I really need the root because I bought it used, worked fine the first few days, then didn't get any signal (turns out that it was reported as stolen and of course the IMEI got blacklisted; I tried to contact the seller but he was gone, and his ebay account deleted, so basicly I'm stucked with a ' 5.1" tablet' . I got scammed :/ )
I would be very grateful if you could explain how did you get root on G925VVRU4BOG7 . I know that you want the file mentioned for creating some kind of universal root for the phone, but right now I'm kind of desperate and need root as soon as possible to fix my IMEI issue and I would follow your steps if you made a tutorial.
Thank you very much!
trailblazer101 said:
Dear forum,
Long time no talk! I have been able to get "root" for our phones on G925VVRU4BOG7, which anyone can downgrade to. The catch is that even with /system mounted as rw, I am unable to write to it directly through most conventional means. (I can write to /data, though, which means i can patch dalvik-cache, which means my mods are coming ) However, I am able to still write to it using another, more complicated way (I can go into more detail for those interested), as a whole. Here's where you come in-- is anyone still full-rooted? If so, please message me as soon as possible! I may be able to have users who are on newer builds downgrade to older builds and get su properly installed, then manually upgrade back up to the later builds again!
If you are rooted still, all i'm going to have you do is perform this command:
Code:
su
dd if=/dev/block/platform/15570000.ufs/by-name/SYSTEM bs=4096 of=/sdcard/system.img
Then send me that system.img file on your sdcard! It'll be pretty big, so you can zip it or .7z (7-zip), whatever you'd like to do.
I will also need what build you are on. You can just send me your Build number within "Settings->About phone".
First one who does it gets credits on the official release thread i'll make, when I get a procedure down that people can follow!
Thanks!
-Trailblazer101
Click to expand...
Click to collapse
I am currently running on A0E2 using your rooted rom for this phone. It runs great....except I tried flashing xposed framework using Flashfire and it of course failed...due to the fact that xposed only works on 5.1.1 or above...sucks we are in such a catch 22 with our devices...although I'm happy because I am still rooted.. Anyway...I set up ADB and entered that command you posted and it worked...I just don't know where the storage location of the system.img file is for me to transfer to my PC, 7zip, and send to you. Any help would be excellent....as I desperately want to run xposed framework on my device....but am stuck on 5.0.2
r0ckinb0i said:
I am currently running on A0E2 using your rooted rom for this phone. It runs great....except I tried flashing xposed framework using Flashfire and it of course failed...due to the fact that xposed only works on 5.1.1 or above...sucks we are in such a catch 22 with our devices...although I'm happy because I am still rooted.. Anyway...I set up ADB and entered that command you posted and it worked...I just don't know where the storage location of the system.img file is for me to transfer to my PC, 7zip, and send to you. Any help would be excellent....as I desperately want to run xposed framework on my device....but am stuck on 5.0.2
Click to expand...
Click to collapse
Looking at the last part of the command and if it ran successfully, it should be in /sdcard. Did you ever find it?
gabes100 said:
Looking at the last part of the command and if it ran successfully, it should be in /sdcard. Did you ever find it?
Click to expand...
Click to collapse
Thank you I found it...I'm new to command prompt although I am learning quickly. I found it. I just need to load it onto my computer and compress it so I can send it to Trailblazer. I will do that tomorrow night when I get back home.
I have the img on my computer. It is 4.3G. How do I get it to Trailblazer? Google Drive? EDIT: it is 4.58GB. I am uploading now to google drive, it will an hour
Hi Trailblazer,
Here is a link to system.img:
https :// drive google com / open?id=0B-j3XfGrnj9PbUdwaml5eERvbFU
I am too new to post links the correct way.
Are there any updates on this topic? When I first saw this thread last week, It got me thinking about what a Tethered Root (Temporary/Semi - Root) would still be capable of doing for those of us still on Official Firmware in this day and age.
And really it occurred to me at that moment, that if we could just attain a Root Shell even if it was only for 60 seconds to five minutes, that would be sufficient to get enough root information off of the phone and into a PC editable format.
I ask, because I am in the process of forming a method for the G925V 6.0.1 [PI2] Build. The problem I'm pretty sure I'm going to run into sooner or later in my experiments/research, is the fact that I am one of the few who have the 64GB Verizon S6 Edge. Technically speaking, my device refers to itself in Download/ODIN mode as a SM-G925VZKE model. This also means that my Stock .PIT file is going to be very different than most people's, also meaning my FSTAB configuration probably will be different.
Because there shouldn't be a reason I can't at least get a temporary Root Shell very soon.
So whats up with this? My wife has 6.0.1 on Verizon and I have international much better choice. Will we have root on this phone?
If you are currently on 6.0.1 on your Verizon device. It would serve you well for the time being to disable Automatic Security Updates.
Settings > Lock Screen and Security > Other Security Settings > Security Policy Updates
Turn OFF Automatic Updates, and Turn OFF Wi-Fi Only.
If you leave these on, any potential root option will be patched by Samsung/Google before you know it exists. Disable it for now so you can find an exploit for the build the device is on.
UPDATE:
So apparantly, I've had a rooted 6.0.1 PI2 device persistent through factory resets for over a week, but didn't realize just how much was achieved on my device! According to diagnostics.
I'm already started on writing up the combination of methods that the OP was walking into. Turns out it works up to the September patch too.
But lucky me and not you this time. I got my device essentially decommissioned because I ran my code too soon. But in the sweetest possible way after being so pissed when my tech coach said my warranty was void.
By the end of tomorrow night I should have a thread.
Anyone still working on this?
d0lph said:
Anyone still working on this?
Click to expand...
Click to collapse
Yes. Using the dirtycow vulnerability we've managed to get an arm64 version running that will indeed allow a root console on MM builds.
The last thing standing in the way, for at least a tethered root, is for someone to help me convert the script from the flashable zip version of the SuperSu installer into basically a batch script. Because the how-to guide ChainFire wrote in comments inside his installer script is kind of hard to read because it covers all the different versions of android in a tiny block of text and not every device sets up the same SELinux environment.
Not to mention, if I could get SuperSU to try and install itself as a System Application, it would probably work with what I have already. But for some reason I CANNOT find a single guide anywhere on how to perform a "System" Install of SuperSU, everyone wants to use the "Systemless" version, which is NOT going to work I believe.
We can manage booting the device in the event of DM-Verity Failure, when that happens with the 5.1.1 OG ENG Kernel, we can indeed mount "/system" as read/write, and we can indeed change the contents of the System partition that persist through a reboot.
I just need help setting Perms & Contexts. Because at one point in time, I DID actually manage to get SuperSU to give me a root shell instead of a user shell, but only on the ADB Command Line. In that test I could not get an application to start from the launcher and have Root Permissions.
Delgoth said:
Yes. Using the dirtycow vulnerability we've managed to get an arm64 version running that will indeed allow a root console on MM builds.
The last thing standing in the way, for at least a tethered root, is for someone to help me convert the script from the flashable zip version of the SuperSu installer into basically a batch script. Because the how-to guide ChainFire wrote in comments inside his installer script is kind of hard to read because it covers all the different versions of android in a tiny block of text and not every device sets up the same SELinux environment.
Not to mention, if I could get SuperSU to try and install itself as a System Application, it would probably work with what I have already. But for some reason I CANNOT find a single guide anywhere on how to perform a "System" Install of SuperSU, everyone wants to use the "Systemless" version, which is NOT going to work I believe.
We can manage booting the device in the event of DM-Verity Failure, when that happens with the 5.1.1 OG ENG Kernel, we can indeed mount "/system" as read/write, and we can indeed change the contents of the System partition that persist through a reboot.
I just need help setting Perms & Contexts. Because at one point in time, I DID actually manage to get SuperSU to give me a root shell instead of a user shell, but only on the ADB Command Line. In that test I could not get an application to start from the launcher and have Root Permissions.
Click to expand...
Click to collapse
Thank you for taking the time to still work on this. Subscribed. Following this to the T.
Rand0lph said:
Thank you for taking the time to still work on this. Subscribed. Following this to the T.
Click to expand...
Click to collapse
If you want to follow the complete story of what I just mentioned please follow and contribute to this thread: Injecting Root & Setting SELinux - End Stages?
This is the thread that contains the Greyhat Root console, first designed for the AT&T Galaxy Note 5. But that device uses the same Exynos7420 Mainboard as the Galaxy S6 Edge, so the project is still compatible.
I haven't kept the OP maintained as I should yes. But it is actually worth it to read that whole thread as @droidvoider went out of his way explaining some of his methods. I have a bit of R&D that isn't posted in that thread as well, if you can read up on the project. I'd be more than happy to share what I know with anyone wanting to help as long as they can catch up with what we have accomplished so far.
Look at some of the other threads I've started as well for the initial methods.
Delgoth said:
If you want to follow the complete story of what I just mentioned please follow and contribute to this thread: Injecting Root & Setting SELinux - End Stages?
This is the thread that contains the Greyhat Root console, first designed for the AT&T Galaxy Note 5. But that device uses the same Exynos7420 Mainboard as the Galaxy S6 Edge, so the project is still compatible.
I haven't kept the OP maintained as I should yes. But it is actually worth it to read that whole thread as @droidvoider went out of his way explaining some of his methods. I have a bit of R&D that isn't posted in that thread as well, if you can read up on the project. I'd be more than happy to share what I know with anyone wanting to help as long as they can catch up with what we have accomplished so far.
Look at some of the other threads I've started as well for the initial methods.
Click to expand...
Click to collapse
Sorry, I didn't even acknowledge this is for the EDGE S6. I have a regular Verizon S6.
Rand0lph said:
Sorry, I didn't even acknowledge this is for the EDGE S6. I have a regular Verizon S6.
Click to expand...
Click to collapse
I don't really think that matters as much for the thread I referred to.
I tested the Greyhat Root Console on my S7 Edge, and it worked as well using the September build.
The S6 Line plus the Note 5, all use the same System on a Chip.
If anything, there may be just a couple tweaks to make when compiling it using the NDK.
FIRST OF ALL
This isn't my work all credits goes to nexmon team for patched firmware and libs Github
And for @chrisk44 for Hijacker App Github, XDA
Tested on Galaxy s6 MM and should work on every android device with BCM4358.
Requirement:
-BCM4358
-Root SuperSU
-BusyBox
Downloads:
-Download Hijacker App From Here.
-Download Patched Firmware From Here (there's two files, .patched and .original in case you didn't backup yours) or you can go to nexmon git and get the file from there.
Installation:
-Rename the firmware from "bcmdhd_sta.bin.patched" to "bcmdhd_sta.bin"
-Copy the renamed file to "/system/etc/wifi" (Backup the original first) set permission to 644 (rw,r,r)
-Create empty file in "/vendor/firmware/" and name it "fw_bcmdhd.bin"
-Open Hijacker app follow the installation instruction (if you got an error "Your device is not supported ... bcm4339 ... bla bla bla." Long click the install button)
-REBOOT
Everything should be working fine now, open Hijacker app and test it.
[Disconnect from all the network or turn your wifi off for Hijacker app to work]
Bugs:
-Your WiFi will sometimes restart itself (Phone restart will fix this)
-Others? I don't know you tell me.
Working/Not Working:
-See Nexmon and Hijacker Git Repo.
Thank them for the work then thank me if you find this is useful, thank you.
Screenshots:
Hijacker includes a patched firmware for the BCM4339. Overriding the check and installing it on a different chipset can be dangerous. I only implemented the override in case you are on BCM4339 but the detection doesn't work.
chrisk44 said:
Hijacker includes a patched firmware for the BCM4339. Overriding the check and installing it on a different chipset can be dangerous. I only implemented the override in case you are on BCM4339 but the detection doesn't work.
Click to expand...
Click to collapse
Hijacker check the firmware in /vendor/firmware but samsung wireless firmware is in /system/etc/wifi so the hijacker app wont override anything except the empty file created in /vendor/firmware.
Edit: I will remove your app from my post if you want.
What happens when you click "find firmware" when installing nexmon?
Keep in mind that "nexmon" is not a firmware... it's a project which creates firmwares for some chipsets. You shouldn't use a firmware that is intended for an other chipset.
chrisk44 said:
What happens when you click "find firmware" when installing nexmon?
Keep in mind that "nexmon" is not a firmware... it's a project which creates firmwares for some chipsets. You shouldn't use a firmware that is intended for an other chipset.
Click to expand...
Click to collapse
I know that nexmon is a project, and the firmware installation is happening manually not by nexmon app.
Ok let me start again. The project "nexmon" has released patched firmwares to support monitor mode for various chipsets, including BCM4339 and BCM4358. Hijacker includes only the firmware for BCM4339 because I don't have a device with 4358 and I can't include the other firmware without testing it. Hijacker includes the firmware for BCM4339 and installs it wherever the firmware is. The fact that your firmware is located in /system/etc/wifi is not because of chipset or samsung, it's because of android 6 and the app defaults for android 7. Clicking "find firmware" will find it and clicking instalm will install it ONLY if it is for BCM4339. Overriding this will result in the firmware for 4339 being installed on a device with 4358. Do you see the problem here? There shouldn't be reboots or wifi restarts with these firmwares, they are actually very well written.
You can use the app if you want but you will have to install the firmware manaully, which means:
Download the firmware as a binary file,
copy the old firmware somewhere for backup,
copy the new file over the old one in system,
restart wifi to load the new firmware,
install the nexutil program (binary file) in /su/xbin or /su/bin or /system/bin (not recommended) to manage monitor mode
and you're done. Hijacker should work immediately.
chrisk44 said:
Ok let me start again. The project "nexmon" has released patched firmwares to support monitor mode for various chipsets, including BCM4339 and BCM4358. Hijacker includes only the firmware for BCM4339 because I don't have a device with 4358 and I can't include the other firmware without testing it. Hijacker includes the firmware for BCM4339 and installs it wherever the firmware is. The fact that your firmware is located in /system/etc/wifi is not because of chipset or samsung, it's because of android 6 and the app defaults for android 7. Clicking "find firmware" will find it and clicking instalm will install it ONLY if it is for BCM4339. Overriding this will result in the firmware for 4339 being installed on a device with 4358. Do you see the problem here? There shouldn't be reboots or wifi restarts with these firmwares, they are actually very well written.
You can use the app if you want but you will have to install the firmware manaully, which means:
Download the firmware as a binary file,
copy the old firmware somewhere for backup,
copy the new file over the old one in system,
restart wifi to load the new firmware,
install the nexutil program (binary file) in /su/xbin or /su/bin or /system/bin (not recommended) to manage monitor mode
and you're done. Hijacker should work immediately.
Click to expand...
Click to collapse
Okay, this is what written above. Since its working, I decided to share it with galaxy s6 owners... that's it. I don't know why are you repeating and telling me what your app does, I fully understand this plus i didn't say that "oh man! this is my work" and I told you I know what nexmon is and what it does, if you dont want your app to be here in my thread I will remove it.
I didn't say anything like that, plus my app is already here. I'm just pointing out that you are suggesting to galaxy s6 owners to use a firmware that is not intended for their device. Especially when there IS a correct firmware out there. I'm really not obligated to way in here, I'm just trying to prevent damages.
---------- Post added at 18:59 ---------- Previous post was at 18:04 ----------
Anyway, I'll include it in the next release and hope for the best...
chrisk44 said:
I didn't say anything like that, plus my app is already here. I'm just pointing out that you are suggesting to galaxy s6 owners to use a firmware that is not intended for their device. Especially when there IS a correct firmware out there. I'm really not obligated to way in here, I'm just trying to prevent damages.
---------- Post added at 18:59 ---------- Previous post was at 18:04 ----------
Anyway, I'll include it in the next release and hope for the best...
Click to expand...
Click to collapse
Okay that's kind.
Wait a second, do you have frame injection using the 4339 firmware? Do aireplay, mdk and reaver work?
chrisk44 said:
Wait a second, do you have frame injection using the 4339 firmware? Do aireplay, mdk and reaver work?
Click to expand...
Click to collapse
As it says in nexmon git page, no.
Hi guys, is there still wip regarding injection mode?
is there. any chance of nexmon working galaxy note 4 or 3
Quick question. I had come across the Nexmon app before finding Hijacker. My question is sorta this, I'm assuming then that Nexmon doesn't have to be installed to make Hijacker work? Because Hijacker is hit or miss for me. Sometimes it works and sometimes it doesn't.
Chuck
Boahen said:
is there. any chance of nexmon working galaxy note 4 or 3
Click to expand...
Click to collapse
It works on Note 3 AOSP rom, same wifi chipset as nexus 5
digitalchaos1980 said:
Quick question. I had come across the Nexmon app before finding Hijacker. My question is sorta this, I'm assuming then that Nexmon doesn't have to be installed to make Hijacker work? Because Hijacker is hit or miss for me. Sometimes it works and sometimes it doesn't.
Chuck
Click to expand...
Click to collapse
You can manually run binary files from any terminal, by executing LD_PRELOAD=/path of libfakeioctl.so
Then execute nexutil -m2 to turn on monitor mode, you're ready to go now.
Sent from my SM-G950F using Tapatalk
daoudedy said:
It works on Note 3 AOSP rom, same wifi chipset as nexus 6
You can manually run binary files from any terminal, by executing LD_PRELOAD=/path of libfakeioctl.so
Then execute nexutil -m2 to turn on monitor mode, you're ready to go now.
Sent from my SM-G950F using Tapatalk
Click to expand...
Click to collapse
OK thanks, that actually helps me. I had stumbled upon this whole setup when I came across the Nexmon app in the Play Store. I've been wanting a device that has a chip that can support monitor mode for a long time so naturally when I saw the app I was excited. I had installed it but didn't quite know exactly how to use the "firmware" part of the app to install the firmware. Did a Google search and came across your post and installed Hijacker and followed the post to a T. But it would only work when it wants to. I have another spare S6 that I just installed Hijacker to and followed the instructions for that as well. Both phones are hit or miss really but I notice that if I open Nexmon and start monitor mode there first then open Hijacker then it works but when I go to "crack" it looks like it's doing something but I'm under the impression I should see some sort of progress being displayed on the bottom half of the app. Is this correct? I am a power user and know my way around the file system well but don't have a whole lot of experience with this type of thing. And just as a disclaimer, I am using this on my own router and Moderators if I have said anything crossing a line PLEASE let me know and I will edit my content! I don't want to violate any rules talking about these apps the wrong way. Thank you
Chuck
digitalchaos1980 said:
OK thanks, that actually helps me. I had stumbled upon this whole setup when I came across the Nexmon app in the Play Store. I've been wanting a device that has a chip that can support monitor mode for a long time so naturally when I saw the app I was excited. I had installed it but didn't quite know exactly how to use the "firmware" part of the app to install the firmware. Did a Google search and came across your post and installed Hijacker and followed the post to a T. But it would only work when it wants to. I have another spare S6 that I just installed Hijacker to and followed the instructions for that as well. Both phones are hit or miss really but I notice that if I open Nexmon and start monitor mode there first then open Hijacker then it works but when I go to "crack" it looks like it's doing something but I'm under the impression I should see some sort of progress being displayed on the bottom half of the app. Is this correct? I am a power user and know my way around the file system well but don't have a whole lot of experience with this type of thing. And just as a disclaimer, I am using this on my own router and Moderators if I have said anything crossing a line PLEASE let me know and I will edit my content! I don't want to violate any rules talking about these apps the wrong way. Thank you
Chuck
Click to expand...
Click to collapse
Go to nexmon git page and read the instructions, s6 has a bcm4358
Sent from my SM-G950F using Tapatalk
daoudedy said:
Go to nexmon git page and read the instructions, s6 has a bcm4358
Sent from my SM-G950F using Tapatalk
Click to expand...
Click to collapse
Thank you, I will check that out. I do know what chip it has, I just hadn't found a page about Nexmon. I will find that page and read, read, read lol. Thank you
Chuck
digitalchaos1980 said:
Thank you, I will check that out. I do know what chip it has, I just hadn't found a page about Nexmon. I will find that page and read, read, read lol. Thank you
Chuck
Click to expand...
Click to collapse
https://github.com/seemoo-lab/nexmon
Sent from my SM-G950F using Tapatalk
I highly recommend @JamFlux's work instead. Currently, this has got way more complicated than it should be (in the past 24 hours, only 40% users have managed to accurately follow the procedure, and even less for the latest beta). However, I will continue working on this project in order to make it compatible across more devices. The app is now open-source and you can visit the GitHub repo here. Thanks for using UpdateEngine Interface and I hope to see you folks again soon.
I've created the UpdateEngine Interface, a tool to install OTAs that haven't been assigned to your device. It talks to Android's update_engine binary to flash the block-based updates just the way the original updater does, ensuring that your data is preserved and your system partition's signature doesn't change.
TLDR: It allows you to install Oreo without using someone else's TWRP backup or losing data.
Now has the latest build (20th December)
Installation:
Install Magisk
Install the attached Magisk module (named UpdateEngine_1.2.zip) and reboot
Open the newly installed UpdateEngine app and press start
Wait for the installation to complete and restart your device to boot into Android O
If you wish to update to the latest beta, use Magisk to install UpdateEngine_1.3.zip afterwards
Note: If you're a FlashFire user, please uninstall it and reboot before continuing.
Note #2: You must install Oreo via v1.2 before installing the latest beta (via v1.3).
XDA:DevDB Information
UpdateEngine User Interface, Device Specific App for the Xiaomi Mi A1
Contributors
ur0
Version Information
Status: Stable
Current Stable Version: 1.1
Created 2017-12-19
Last Updated 2017-12-19
Does it need a virgin /system?
I love you! thats what we need.
konradit said:
Does it need a virgin /system?
Click to expand...
Click to collapse
Yeah. It requires that the system hasn't been modified since the December OTA (just like the original updater) since the updates are applied block-by-block.
Which beta does it have currently? THE first one or newer?
jazzthe#1 said:
Which beta does it have currently? THE first one or newer?
Click to expand...
Click to collapse
I only have the first build, since that's the only one that people captured (I'm not in the beta, so I can't get the newer ones myself).
Okay
@ur0 wow, thats awesome, thank you bro)
This looks interesting, although I'm waiting for Xposed Oreo. A question though, I've heard the leaked Oreo build is rooted, does this method install untouched boot.img?
@Filip013 yes, this installs the untouched boot.img.
@rostifaner and @TerQQ, You're welcome!
so this tool can install android O ota beta without twrp ? and without losing data ? and how to install this tool ? sorry for many question .
is possible to add feature "choose ota file from device" or something similar ?
TerQQ said:
is possible to add feature "choose ota file from device" or something similar ?
Click to expand...
Click to collapse
I'm looking into adding this -- the only problem is that it also requires a bit of metadata (which is inconvenient to type manually). I'll look into defining a format which the app can read directly.
It doesn't seem to be working for me. When I press Start, it opens FlashFire app & nothing happens. Even if I come back to this app, there will two buttons Pause & Stop, but nothing will be happening. Also can you please make it open source?
ghpranav said:
It doesn't seem to be working for me. When I press Start, it opens FlashFire app & nothing happens. Even if I come back to this app, there will two buttons Pause & Stop, but nothing will be happening. Also can you please make it open source?
Click to expand...
Click to collapse
That's weird -- can you please post the logcat outputs after this happens (maybe after restarting and trying again)?
I'm sure that it's something with flashfire since the app doesn't use it or depend on it.
I'm definitely going to open-source this after I fix a few hacks I made to get the initial version working.
Any chance of posting your work to github? would be interesting to see the source if possible
How to install?
How to install magisk and update engine. Will we have to root and flash these file from TWRP? Please give the tutorial in detail.
for me its working great.
I don't understand what purpose this tool serves. You're saying that using this we can install the oreo update without someone's twrp bakup?
I keep getting a crash when i press start, then the app won't open again until I reboot and even then no download... am i missing something?
I have magisk 15.6 and i disabled all my other modules just in case...
EDIT:
12-19 11:32:16.564 3121-3267/? E/DatabaseUtils: Writing exception to parcel
java.lang.SecurityException: Permission Denial: reading com.android.providers.media.MediaProvider uri content://media/external/fs_id from pid=9022, uid=10111 requires android.permission.READ_EXTERNAL_STORAGE, or grantUriPermission()
at android.content.ContentProvider.enforceReadPermissionInner(ContentProvider.java:608)
at android.content.ContentProvider$Transport.enforceReadPermission(ContentProvider.java:483)
at android.content.ContentProvider$Transport.query(ContentProvider.java:212)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:112)
at android.os.Binder.execTransact(Binder.java:565)
I think you need to add the read/write premission to your app. not sure how its working for others
EDIT 2: Selinux is denying your app.. had to use a selinux disabler app to get it not to crash... might want to look into that..
EDIT 3: Not working... Nothing happens when i click start...
NOTE: This is only for Nougat (7.1) custom ROMs (such as Lineage 14.1 based)!
Make sure you do a proper nandroid backup before flashing!
I made a flashable zip for updating the libhoudini stuffs for Nougat (7.1) ROMs to 7.1.0a_y.49344. Not sure if this has been posted elsewhere before, though.
Before flashing, check your current libhoudini version by typing "houdini --version" either from adb shell or from terminal emulator. (UPDATE: Use the built-in Terminal as it doesn't work in Termux)
You should only try to flash this if your houdini version is below 7.1.0a_y.49344. Current custom ROMs usually have a houdini version of 7.1.0_y.48901 (DotOS 1.2 for example).
Flashable zip (It's about 34MB in size) (Dropbox link here)
The original source is from here, apparently taken from Nexus Player (fugu).
After flashing, "houdini --version" should report something like this:
Code:
[14902]
[14902] Houdini version: 7.1.0a_y.49344
[14902]
TESTING NEEDED: I'm not sure what this version of houdini might fix or break, so try this at your own risk. If you're currently not having problems with apps then there's no need to flash this. Compared with existing device files (7.1.0_y.48901, in /system/lib/arm/), several library files are changed, plus an additional "libgate.so" which I could identify it as being an ARM library file (so it'll also be placed in /system/lib/arm, although I'm not sure where it might be used).
EXPERIMENTAL (UNTESTED!): Here's another version in case someone might be interested. This build is 8.0.0_y.49374, and the version number literally means it's to be used for Oreo, so I'm not sure if it'll work on a 7.x ROM. The original source of this version is from Android-x86.
Flashable zip (Dropbox link here)
If the zip works, it should report the following version:
Code:
[19729]
[19729] Houdini version: 8.0.0_y.49374
[19729]
What is the use for this ?
PedroCaseiro said:
What is the use for this ?
Click to expand...
Click to collapse
It's just to put updated libhoudini libraries into the device, in hope that those updated stuffs might help with fixing some native libhoudini crashes on certain problematic ARM-only apps.
I had some ARM-only apps that always FC with native crashes (SIGSEGV) from libhoudini on Zenfone 2. Although the updated binaries unfortunately could not fix the problems entirely, at least the they work as intended as I haven't discovered anything broken by the updated stuffs yet.
However, this won't help if your app crash is due to the developer shipping an incomplete set of x86 native binaries (this can happen). You need to sideload it through adb and force it to use ARM abi, like this:
Code:
adb install --abi armeabi xxx.apk
Note that the abi name varies among apps, armeabi is just an example, it might be arm, or armeabi-v7a, depending on the app itself.
EDIT: Say, is there a way to report device incompatibilities to Play Store so I can explain the device's situation and let Play Store always ship the last known good version for our device? There seem to be some apps that previously worked, but not now due to updated native libraries that would cause native crashes on libhoudini (Play Store will still treat our device as compatible due to the device exposing the ARM abis thanks to libhoudini), and I often need to disable the app in question's auto-update to prevent Play Store updating it to the native-crashing version.
Running "houdini --version" in a terminal emulator results in:
"houdini: command not found"
for latest version of Groovy Android
deckinghalls said:
Running "houdini --version" in a terminal emulator results in:
"houdini: command not found"
for latest version of Groovy Android
Click to expand...
Click to collapse
Are you using Termux? It seems I'm getting the same result there as well, but houdini outputs just fine in the built-in Terminal as well as in the T-UI launcher.
And as for file lists:
In /system/bin there's the "houdini" binary.
Then there's "libhoudini.so" in /system/lib/ (this is the main library which is of i386 architecture).
And the rest of the files (ARM libraries) in /system/lib/arm/. These consist of the exact same set of files as the ones provided by the custom ROMs, plus an additional one (libgate.so).
LSS4181 said:
Are you using Termux? It seems I'm getting the same result there as well, but houdini outputs just fine in the built-in Terminal as well as in the T-UI launcher.
And as for file lists:
In /system/bin there's the "houdini" binary.
Then there's "libhoudini.so" in /system/lib/ (this is the main library which is of i386 architecture).
And the rest of the files (ARM libraries) in /system/lib/arm/. These consist of the exact same set of files as the ones provided by the custom ROMs, plus an additional one (libgate.so).
Click to expand...
Click to collapse
I am not sure what is meant by "the built-in Terminal" (I don't recall any ROM coming with one?) but I did use Termux as well as the terminal in TWRP. I figured out if you type "su" to get root access first, then the command works fine in Termux.
Flashed the .zip file. So far, I haven't noticed any changes, good or bad. I don't remember which apps would FC (maybe the Amazon Echo app and Disney Infinity 3.0?) but I'll keep you posted.
deckinghalls said:
I am not sure what is meant by "the built-in Terminal" (I don't recall any ROM coming with one?) but I did use Termux as well as the terminal in TWRP. I figured out if you type "su" to get root access first, then the command works fine in Termux.
Flashed the .zip file. So far, I haven't noticed any changes, good or bad. I don't remember which apps would FC (maybe the Amazon Echo app and Disney Infinity 3.0?) but I'll keep you posted.
Click to expand...
Click to collapse
Some ROMs do have built-in terminal app. However, you need to enable it, which can be done in Settings -> Developer Options (assuming you know how to enable Developer Options as well). There would be an option to enable "Local terminal" which is the built-in terminal app.
Which means it will help the x86 device run ARM ???
I do not understand. Please analyze me
Mkey_34 said:
Which means it will help the x86 device run ARM ???
I do not understand. Please analyze me
Click to expand...
Click to collapse
libhoudini is Intel's ARM binary translator that helps x86 devices run ARM apps, albeit with some limitations and performance reduction due to overhead. Without it, most apps won't be able to work at all, as they don't have x86 native libraries.
Zenfone 2 already has houdini included, that's why it could run as many apps as any other devices. The flashable zip here contains updated files (for 7.1 ROMs) in hope it could help with some problematic ARM-only apps that refuse to work with libhoudini, though in most cases the differences are barely noticeable.
LSS4181 said:
libhoudini is Intel's ARM binary translator that helps x86 devices run ARM apps, albeit with some limitations and performance reduction due to overhead. Without it, most apps won't be able to work at all, as they don't have x86 native libraries.
Zenfone 2 already has houdini included, that's why it could run as many apps as any other devices. The flashable zip here contains updated files (for 7.1 ROMs) in hope it could help with some problematic ARM-only apps that refuse to work with libhoudini, though in most cases the differences are barely noticeable.
Click to expand...
Click to collapse
Thank you
---------- Post added at 02:58 AM ---------- Previous post was at 02:53 AM ----------
something's wrong I can not download it. I need another link. thank you
My device is running Groovy Android 7.1.1, 18 May Build.
so i have successfully upgraded houdini version using your flashable file. Thank You for your work.
what if i want to revert to the houdini version that comes preinstalled with the rom, will dirty flash rom zip work?
sushuguru said:
what if i want to revert to the houdini version that comes preinstalled with the rom, will dirty flash rom zip work?
Click to expand...
Click to collapse
The zip is meant to be flashed every time you reflash the ROM, so yes, dirty flashing should be able to revert it.
But again... you're supposed to do a nandroid backup before flashing, and there's no need to flash this if you aren't encountering any native code crashes from arm-only apps at the moment.
Unfortunately, as Intel had already left the mobile market and no more Intel-powered smartphones produced anymore, some developers started to "move on" and use libraries or compiler options incompatible with houdini in order to make their apps run more efficient on modern ARM smartphones, without having to be "constrained" for compatibility reasons...
The houdini binaries I found only seems to be a minor update, and I'm not sure if Intel is still working on this or if there are possibilities to obtain an even newer houdini version with "y" suffix, which our phone uses.
Added an experimental (UNTESTED!) version found from Android-x86 (8.0.0_y.49374). This version was originally meant for Oreo, so I'm not sure if this would work on a Nougat ROM.
Currently on Android-x86 only the "y" version (which our devices use) is available. The other versions ("x" and "z") are not present, and the link would simply give you a "not found" error.
Although I don't mainly use the phone anymore, I could still conduct some tests with the device if I have time.
Bit the bullet and tested the 8.0.0_y.49374 build. Does not work. Evie force crashes right off the bat. Haven't tested further than this, but if I cannot even use my launcher of choice, that isn't a good sign.
NOTICE: Apparently, fOmey intends to support native android through Xposed, making this obsolete and since he confirmed that the source code will not be available, this project can't be updated with reasonable effort anyways. TL;DR: sm4a is dead
WARNING: Currently sm4a is stuck on Smali Patcher 7.2 and (due to complications on my end, specifically the decompiler not producing usable code diffs) an update to 7.3 is unlikely without access to the proper source code of smali patcher. If you want to, you can try to clone the repo, revert the last few commits, decompile smali patcher and try to port over the changes yourself.
Smali Patcher is a Module created by @fOmey that allows for users to apply patches to their Android system, such as removing signature verification or making mock locations seem genuine.
While the tool is very useful, it requires a windows installation to be ran. That was the reason I decided to work on porting the program to linux.
However: In doing so I recognized that I could get it running entirely on android without dependency on any desktop system using termux.
If you want to try it out, I have provided instructions for installing my port here (tested only on LineageOS 17.1 for SM-A520F because that is my only phone, it should work fine on other devices though).
Please note that I had to make some changes to the internal logic of Smali Patcher to get this running so if you experience any problems you should ask me for support and not bother fOmey. I have also created a windows backport of my modifications here.
Also, feel free to mess with the source code.
Thanks to fOmey for creating his awesome tool and not threatening to sue me if I release my modifications.
Nice. Working for me
Hi @CreepycCrafter24
Nice 1st post!
Your work has been featured on the portal: https://www.xda-developers.com/smalipatcher-android-framework-without-pc/
Well done! ?
Sébastien.
Seems like an nice idea but...
Instructions unclear
Root/vdexextractor doesnt exist at all, neither i know what copy over to proot means (i just know it isnt a folder)
---------- Post added at 10:58 PM ---------- Previous post was at 10:46 PM ----------
Automatic install fails to bc it only refers to ubuntu, whilst the proot thing needs ubuntu-18.04 or ubuntu-20.04 as input
Dr. DoubtReaper said:
Seems like an nice idea but...
Instructions unclear
Root/vdexextractor doesnt exist at all, neither i know what copy over to proot means (i just know it isnt a folder)
Click to expand...
Click to collapse
The manual instructions are mostly there for advanced users that don't like automated installation scripts or for non-standard environments. If you just want it to work you should be able to use the automated install script.
Proot is the utility that allows the script to have an isolated environment with an openjdk install. By "copying over to proot" I mean copying the file into a directory that is easily accessible from the proot environment, such as usr/var/lib/proot-distro/installed-rootfs/ubuntu/home, which is the proots home directory
The thing with ubuntu-... is interesting because that exact script worked when I last tested it. Could you try upgrading your packages? (pkg update I think)
CreepycCrafter24 said:
The manual instructions are mostly there for advanced users that don't like automated installation scripts or for non-standard environments. If you just want it to work you should be able to use the automated install script.
Proot is the utility that allows the script to have an isolated environment with an openjdk install. By "copying over to proot" I mean copying the file into a directory that is easily accessible from the proot environment, such as usr/var/lib/proot-distro/installed-rootfs/ubuntu/home, which is the proots home directory
The thing with ubuntu-... is interesting because that exact script worked when I last tested it. Could you try upgrading your packages? (pkg update I think)
Click to expand...
Click to collapse
I actually tried used the automatic install but as i said it failed, so i moved to manual which is strange too...
Packages are all on latest
I would have attached some screenshots but xda says no
Dr. DoubtReaper said:
I actually tried used the automatic install but as i said it failed, so i moved to manual which is strange too...
Packages are all on latest
I would have attached some screenshots but xda says no
Click to expand...
Click to collapse
I just updated all packages on my side and "ubuntu" still shows up as a valid distro in proot-distro. I am confused. I guess you should try manually running the commands in the setup script and replacing the distro name
CreepycCrafter24 said:
I just updated all packages on my side and "ubuntu" still shows up as a valid distro in proot-distro. I am confused. I guess you should try manually running the commands in the setup script and replacing the distro name
Click to expand...
Click to collapse
Hmm, manual setup kinda doesnt work either , might need some eidts in the automatic script but ive no clue bout that
Automatic script fail at ubuntu unknown distro. I think the script should read "ubuntu-20.04"
$ proot-distro list
Supported distributions:
* Alpine Linux 3.12.0
Alias: alpine
Status: NOT installed
* Arch Linux
Alias: archlinux
Status: NOT installed
* Kali Nethunter
Alias: nethunter
Status: NOT installed
Comment: Minimal version, most of utilities should be installed manually.
* Ubuntu 18.04
Alias: ubuntu-18.04
Status: NOT installed
* Ubuntu 20.04
Alias: ubuntu-20.04
Status: installed
Note: ubuntu-20.04 installed manually
CreepycCrafter24 said:
I just updated all packages on my side and "ubuntu" still shows up as a valid distro in proot-distro. I am confused. I guess you should try manually running the commands in the setup script and replacing the distro name
Click to expand...
Click to collapse
AFAFontes said:
$ proot-distro list
Supported distributions:
* Alpine Linux 3.12.0
Alias: alpine
Status: NOT installed
* Arch Linux
Alias: archlinux
Status: NOT installed
* Kali Nethunter
Alias: nethunter
Status: NOT installed
Comment: Minimal version, most of utilities should be installed manually.
* Ubuntu 18.04
Alias: ubuntu-18.04
Status: NOT installed
* Ubuntu 20.04
Alias: ubuntu-20.04
Status: installed
Note: ubuntu-20.04 installed manually
Click to expand...
Click to collapse
Am I doing it right?
Truant_Luce said:
Am I doing it right?
Click to expand...
Click to collapse
Yes you have the distro installed already but if you want to use automatic setup you need to wait for the script to be updated or edit yourself because path and login are still wrong.
I changed the install script to reference ubuntu-20.04. You might need to run "proot-distro remove ubuntu-20.04" if you still have the proot from a failed install. Other than that it should now work.
CreepycCrafter24 said:
I changed the install script to reference ubuntu-20.04. You might need to run "proot remove-distro ubuntu-20.04" if you still have the proot from a failed install. Other than that it should now work.
Click to expand...
Click to collapse
Its proot-distro remove ubuntu-20.04 btw
CreepycCrafter24 said:
I changed the install script to reference ubuntu-20.04. You might need to run "proot-distro remove ubuntu-20.04" if you still have the proot from a failed install. Other than that it should now work.
Click to expand...
Click to collapse
Thought I'd share a screenie that I feel is most relevant. I did uninstall the old one and try again, to meet this end. Still unsuccessful.
Truant_Luce said:
Thought I'd share a screenie that I feel is most relevant. I did uninstall the old one and try again, to meet this end. Still unsuccessful.
Click to expand...
Click to collapse
I have added git to the required packages. You can try the install script again. Also note that the command "smalipatcher" won't work because the home directory is not in PATH so you will need to run "./smalipatcher" instead.
Is it possible to implement android 11 signature spoofing patch?
https://github.com/microg/android_packages_apps_GmsCore/pull/1222/files
kurtn said:
Is it possible to implement android 11 signature spoofing patch?
https://github.com/microg/android_packages_apps_GmsCore/pull/1222/files
Click to expand...
Click to collapse
This might be possible but currently I don't have the time to try to implement this. If you need it right now you can try to implement the patch yourself.
Otherwise I will look into it in the coming days
Another problem is that the downloaded ubuntu doesn't come with the build tools for building vdexExtractor (done in setup2.sh)
so you might need to additionally run ./smalipatcher-shell and run "apt install glibc-utils zlib1g-dev" inside it.
Tested on freshly installed treble havocOS with magisk.
Don't forget to give termux permissions for storage!
@CreepycCrafter24 might add those to the script.
CreepycCrafter24 said:
I have added git to the required packages. You can try the install script again. Also note that the command "smalipatcher" won't work because the home directory is not in PATH so you will need to run "./smalipatcher" instead.
Click to expand...
Click to collapse
I feel like I'm stress testing your patience for noobs. Lol. Linux isn't fully my forte, but I understand a little. I am learning. I appreciate your willingness in making this project.
New screenies for you.
Edit: I will say I somehow assume this is partly on my end, with just my phone I assume. But thought I'd share.