Magisk Based GCAM Port, AR Sticker Support, Portrait Mode, HEVC Enabled - Essential Phone Themes, Apps, and Mods

I have created a Magisk based DIY GCAM port for our PH-1 Phones.
Prerequisites:
Stock Pie 9.0, works on any of the Oreo 8-8.1 builds as well
Magisk 17.1 or newer (Uses 17000 template)
What it does:
It replaces media_profiles_V1_0.xml in vendor/etc : this allows for hevc, slo-mo
It sets postfsdata magisk policy (gives camera_config permissions, and allows it to switch faster when in recents)
Sets the following lines in props:
persist.camera.HAL3.enabled=1
persist.camera.eis.enable=1
ro.vendor.sensors.dev_ori=true
persist.camera.is_type=5
persist.camera.is_mode=5
This is a free-for-all zip, meaning i dont care if you modify it, pass it off to other groups, help anybody else, etc..Do with it what you wish. I am not responsible for any of your headaches however....
Thanks:
@bsg - the originator
@Arnova8G2 - for being kind enough to port GCAM to better our lives
@invisiblek and the rest of the hood at discord - everything gets done there
@S4turno - hosting and being a good sport
@emowing - selinux fixes in magisk
@xterminater07 - sending logs, and doing some testing
@cstark27 - building a settings-less version of GCAM to make life easier, and good help (it's hard to find)
@ArtZ IMX258 color profile improvement and excellent GCAM mods
@urikill another GCAM mod contributor
@Tolyan009 another GCAM mod contributor
@SKULSHADY another GCAM mod contributor
@TheIronLefty GCAM Jesus Christ Himself
PH1 GCAM MOD
https://www.androidfilehost.com/?fid=1322778262904008891
RECOMMENDED GCAM IS TOLYAN009 (TINEUN) 1.0.11 HIS REPO CAN BE FOUND HERE:
https://www.celsoazevedo.com/files/android/google-camera/dev-tolyan009/
LINK TO GCAM HOSTING (REPO FOR ALL OF THE GCAM VARIANTS)
https://www.celsoazevedo.com/files/android/google-camera/
OLD FILES
https://www.androidfilehost.com/?w=files&flid=255766 (This is the dump for the V15, V16 flavors)
Enjoy Folks

Instuctions on how to use the PH1_GCAM_MODULE:
Basically, All GCAM ports Mostly, Fully, Sporadically, Sorta, Sometimes, with Caveats, 100% of the time, 60% of the time, more or less...... work with the PH-1. We are lucky to have a phone that doesn't have the headaches of the OP3/5/T, MI5S, and others that need wacky fixes to make GCAM work properly to some degree (This doesn't mean we don't have our own first world problems)
1. Install the latest DIY GCAM Mod from the Post Above.
2. Click on the link in the OP "REPO FOR GCAM VERSIONS" or the link to TOLYAN009 (TINEUN) and pick whatever GCAM you want. it is updated almost daily with new versions, different devs, different features and mods.
2A. If you choose TOLYAN009 (TINEUN) @TheIronLefty aka GCAM JEEZY aka GCAM SUPERBOSS aka KING OF GCAM SETTINGS put together a very nice thread, here: https://forum.xda-developers.com/es...om-gcam-settings-using-tolyans-build-t3829476
Let me be honest, i like making things work, im not very skilled in the way of making things pretty, perfect, noise free, etc. He did a lot of legwork testing all sorts of settings to get here. They look pretty nice. Follow his OP for optimized settings (and he is always testing, he may come up with something better, so check back often)
3. Install the APK and go.

ARCore, ARStickers, TANGO, and other AR related things
ARCore is a pain, since our phone isnt "technically" supported, but works well otherwise. What is included in the DIY GCAM MOD v1 and the full camera zips is a older beta release, that uses calibration_cad files in order to set up the orientation, etc. So now they are using .textproto files located in /data/data/com.google.ar.core/files/device_profile2_database, and they use the buildid from the buildprop to actively select the right textproto file. So anyways, if you want the latest ARCore, here is how.
1. Install this ARCore https://www.apkmirror.com/apk/googl...se/arcore-1-4-180716096-android-apk-download/ its the latest at this time
2. Install this ARStickers https://www.celsoazevedo.com/files/android/google-camera/ar/f/ARStickers_AllPack_ParseErrorFix.apk this is the latest.
3. Open GCAM and try to open AR Stickers (it will crash and FC, it needs to here, this is what it is supposed to do, its creating the device proto location, and the mata textproto isnt there, yet)
4. Using a file explore/adb/whatever browse to here /data/data/com.google.ar.core/files/device_profile2_database and rename a .textproto of your choice, I am currently using device_profile_taimen_colon_9.textproto . Just change the device codename (in this case taimen, to mata). Feel free to try any one you want.
5. Now open GCAM again, and open AR Stickers, it should give you the 3 permission prompts.
Alternatively, now that we have permatwrp, there are twrp flashable zips that do the majority of the work above, see here.
https://www.celsoazevedo.com/files/android/google-camera/ar/
As a bonus, here is the link to the latest Tango Measure app https://www.apkmirror.com/apk/googl...surements-2-1-180728039-android-apk-download/
Good luck, and thanks to @starcms for method of doing this

Congrats @aer0zer0, for this work. I know u will pull it off. By teh way gr8 work.

are the download links working for anyone?

Wickidmasshole said:
are the download links working for anyone?
Click to expand...
Click to collapse
Try without chrome, I name things bad

aer0zer0 said:
Try without chrome, I name things bad
Click to expand...
Click to collapse
Not working for me either. Tried on chrome and edge

sirdicholas said:
Not working for me either. Tried on chrome and edge
Click to expand...
Click to collapse
Try without chrome

aer0zer0 said:
Try without chrome
Click to expand...
Click to collapse
I did try on edge browser. What browser should I use then?
Edit: also tried with dolphin browser. I can select a mirror, after that it says page not found.

Here is the selinux fix for you. GCam must be installed in /system/priv-app/
in post-fs-data... replace your setenforce 0 with.. I gave it all permissions but you can trim these down to only the necessary one if you want to test every single permission.
magiskpolicy --live "allow priv_app { camera_prop unlabeled } file { append create write relabelfrom link unlink ioctl getattr setattr read rename lock mounton quotaon audit_access open }"
magiskpolicy --live "allow priv_app { unlabeled qti_debugfs } dir { append create execute write relabelfrom link unlink ioctl getattr setattr read rename lock mounton quotaon rmdir audit_access remove_name add_name reparent execmod search open }"

sirdicholas said:
I did try on edge browser. What browser should I use then?
Click to expand...
Click to collapse
I use firefox

ok, I'm a n00b, how do i install this after rooted?

emowing said:
Here is the selinux fix for you. GCam must be installed in /system/priv-app/
in post-fs-data... replace your setenforce 0 with.. I gave it all permissions but you can trim these down to only the necessary one if you want to test every single permission.
magiskpolicy --live "allow priv_app { camera_prop unlabeled } file { append create write relabelfrom link unlink ioctl getattr setattr read rename lock mounton quotaon audit_access open }"
magiskpolicy --live "allow priv_app { unlabeled qti_debugfs } dir { append create execute write relabelfrom link unlink ioctl getattr setattr read rename lock mounton quotaon rmdir audit_access remove_name add_name reparent execmod search open }"
Click to expand...
Click to collapse
Everything is moved there, I'll give this a whirl later. Good looks @emowing

xterminater07 said:
ok, I'm a n00b, how do i install this after rooted?
Click to expand...
Click to collapse
download the magisk module (zip file) created by aer0zer0. Open up magisk manager, select modules, click floating +, browse to your downloaded zip, reboot. Make sure you don't have any other gcam by arnova installed. It will not work if you do.

emowing said:
download the magisk module (zip file) created by aer0zer0. Open up magisk manager, select modules, click floating +, browse to your downloaded zip, reboot. Make sure you don't have any other gcam by arnova installed. It will not work if you do.
Click to expand...
Click to collapse
Just figured it out! Thanks . Similar to exposed. Sounds working now with messenger on the microphone without any additional settings. Great work guys! However, with selinux off, are we at any major security risks?

xterminater07 said:
Just figured it out! Thanks . Similar to exposed. Sounds working now with messenger on the microphone without any additional settings. Great work guys! However, with selinux off, are we at any major security risks?
Click to expand...
Click to collapse
Well sure, but one piece at a time

aer0zer0 said:
Well sure, but one piece at a time
Click to expand...
Click to collapse
Also, you got root going, noice

Wickidmasshole said:
are the download links working for anyone?
Click to expand...
Click to collapse
Because the the filename is: "GCAM with AR Stickers, version 3.zip"
the (,) in the filename messes with the URL.
If you click on one of the mirrors it'll give you a broken link like this:
http://qc4.androidfilehost.com/dl/s...0776376/GCAM+with+AR+Stickers,+version+3.zip?
If you delete the '%2C' in the link, the download will start.
corrected link:
http://qc4.androidfilehost.com/dl/s...20776376/GCAM+with+AR+Stickers+version+3.zip?

I've already posted code to not turn off selinux. Just wait for aer0zer0 to make a new package

emowing said:
I've already posted code to not turn off selinux. Just wait for aer0zer0 to make a new package
Click to expand...
Click to collapse
You guy rocks!!!

Related

[Guide]Barclays mobile banking anti-anti-rootcheck patching

Edit: I've created a xposed module which works with the banking app version 1.7.1 see post below.
---------------------------------------------------
Edit: The changes needed to work with the latest version of the app (1.7.1) are listed in a post below below.
---------------------------------------------------
*There was a error in the diff file. I've uploaded the correct version. Also this patch will definitely not work with the latest version of the app.*
I managed to patch the Barclays mobile banking app version 1.4.2 to make it work with cyanagonmod 10.0 and cyanogenmod 11.
I realize that the current version on play store is 1.7.1 but I haven't updated to the latest version yet. If you do try the latest version please let me know if it differs greatly from the current version in it's root checks
I'm not going to attach the patched apk since using banking app from a stranger on the internet is really not a smart thing . Instead I will detail the work I did which hopefully someone else will find useful.
This guide is geared towards more technical people who already have some experience with android development. It will not give a detailed step by step how to, rather a general information about the process.
Obfuscation methods used in the app
The app obfuscates the names of some but not all of the namespaces/classes/methods which can stump some decompilers.
It seems to generously sprinkle useless switch statements and loops which does nothing but make the code appear way more complicated than it really is. I would guess quite a lot of the bulk in the code is coming through these dummy statements. smali2java-toolkit was of great help to figure this out.
All strings in the app have been encrypted by a simple xor algorithm which is then decrypted at run time just before they are used:
for example rather than
Code:
myfunction(“Hello world”)
the code writes something in the sort of:
Code:
myfunction(decrypt(“Juqqdxidqw”, 'x'))
The decryption function is a static method 'bЮЮЮЮЮЮ' in the class appears to be 'rrrrrr.srrrrr' (the method/class/namespace names are obfusecated)
I extracted the decompiled code from this method to write a console application which let me decrypt any string in the application:
Code:
static String decrypt(String crypStr, char keyChar) {
char[] arrayOfChar1 = crypStr.toCharArray();
char[] arrayOfChar2 = new char[arrayOfChar1.length];
for (int i = 0; i < arrayOfChar1.length; i++)
{
int j = keyChar ^ arrayOfChar1[i];
arrayOfChar2[i] = ((char)j);
}
return new String(arrayOfChar2);
}
Anti root methods used in the app
Checking for 'test-keys' string in the build tag. (/system/build.prop file)
Checking for superuser related package/apk files.
Checking for superuser hider package/apk files.
Checking for existance of 'su' binary
Attempting to execute 'su' binary​The above checks are done both in the java/dex code and in a native code library.
Defeating the anti-root methods in Java/dex code:
The Java code is fairly easy defeat since changing the strings of the apk/file names which are checked as root related will make it think that no 'bad' apps are on the phone.
A bulk of checks happen in the isRootedDevice method of the com.barclays.android.application.BMBApplication class. While it checks for quite a lot of apk's, for my particular purpose I only needed to patch 2 lines in the method:
Smali file line 306 – which starts the checks for “test-keys” string in the build tag.
Smali file line 407 – which start the check for the string “/system/app/Superuser.apk”.​The next method in the same class 'runRootCommand' attempts to execute 'su'
Smali line: 956 – which contains the string “su” which will be passed to java.lang.Runtime.exec
A (mostly?) duplicate of the isRootedDevice function exists in the com.barclays.android.container.DeviceData the relevant lines are :
smali file line 1237: "test-keys" string check
smali file line 1271: "/system/app/Superuser.apk" file check​All of the above checks can easily be defeated by changing the the string so that it will check for a non existent package or file.
Keep in mind that all the strings listed above are in encrypted form. You can use the decrypt function listed above to decode them. I found the key char/byte needed to decrypt a given string is in the very next line to the one containing the encrypted string.
Defeating the anti-root methods in Native library
From what I can see the exact same tests which were done in the Java code is repeated in the native code library 'libtest_ndk.so'. As this check appears to form part of the authentication mechanism i don't believe it's possible to simply stop this check from being called from the Java code.
Also the com.barclays.android.container.sampler.SharedLibraryLoader which loads the native library appears to be doing some kind of checksum validation. While this probably could be easily worked around, disassembling an arm shared library was non trivial for me.
My approach was to write another native library which would hook into all the system calls such as 'system' 'stat' 'fopen', '__system_property_get' and redirect any operations to non existent targets, or change the return value. This achieves the same thing as what was done for the java code.
I put in some extra code into the smali classes to load my native library and to call it's initializer with the path to the actual native library.
Basic steps performed to patch the library:
Use apktool to decompile the original apk.
Code:
apktool d barclays.apk barclays
Use smali2java as helper to understand the code: This tool cannot decompile the critical check functions due to obfuscation. However it made it easier to understand the smali files generated by the apktool.
Patch the smali files to work around the checks as described above.
Build the hooking native library seperately
Code:
~/adt/adt-bundle-linux-x86_64-20131030/sdk/tools/android update project --path . --target android-19
ndk-build
Include the hooking shared library into the lib/armeabi of the decompiled package and change the smali files to load the new shared library.
Use apktool to rebuild the apk.
Code:
Apktool b barclays barclays.apk
Sign the apk from using your own key.
Create keystore:
Code:
keytool.exe -genkey -v -keystore my-release-key.keystore -alias release -keyalg RSA -keysize 2048 -validity 20000
Sign Keystore:
Code:
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore barclays.apk release
Attached is the code for the hook library native project and the diff for the smali changes. Please note that this is for the smali files for generated by apktool (v1.5.2) for the version 1.4.2 of the Barclays mobile banking app.
For Users of other ROMs/SU applications and root hiders.
The app checks for a lot of common packages which I did not bother to patch since I don't use them, but if you do then you should put fixes for all those package/file names in both the smali and native code hook library.
A non exhustive list of files it check are:
Code:
/system/bin/amphoras
/system/bin/su
/system/xbin/su
/system/app/superuser.apk
/data/data/com.amphoras.hidemyroot
/data/data/eu.chainfire.supersu
/data/data/stericson.busybox
/data/data/stericson.busybox.donate
/data/data/com.jrummy.busybox.installer.pro
/data/data/com.jrummy.busybox.installer
/data/data/com.rootuninstaller.free
/data/data/com.rootuninstaller
Hey i will try this out shortly and post a APK (whether you use it or not thats up to you, but i am well known in the xperia play section of this website and should be trusted, Still its up to you.)
EDIT: well i am not a android developer, i can follow almost all this post except the bits about the native library any chance of a bit more information
specifically this bit "Include the hooking shared library into the lib/armeabi of the decompiled package and change the smali files to load the new shared library."
i assume that means just simply copy the built lib file in to that folder then include the file in the code somewhere? where do i do that to?
Sorry about the late reply but I just saw this message.
fma965 said:
EDIT: well i am not a android developer, i can follow almost all this post except the bits about the native library any chance of a bit more information
specifically this bit "Include the hooking shared library into the lib/armeabi of the decompiled package and change the smali files to load the new shared library."
i assume that means just simply copy the built lib file in to that folder then include the file in the code somewhere? where do i do that to?
Click to expand...
Click to collapse
That's pretty much correct. There is already a 'libtest_ndk.so' file in the lib/armeabi folder of the apk. You just have to build my code from the zip file to get the libhooktest.so, which should then be copied into the lib/armeabi folder alongside the libtest_ndk.so.
Edit: Not sure if this is enough instructions. I'm just not good at writing instructions. Steps you need to build the native library are in my post. If you need more info i suggest about building the library http://code.google.com/p/awesomeguy/wiki/JNITutorial#Setup_Environment is a good
Afterwards you have to do the modifications I've listed in the diff to the .smali files.
But i have some bad news about this patch:
The diff file i have attached in the post is wrong. I've mistakenly uploaded the patch to reverse the changes i did . I will update the post with the correct diff file.
It will only work for Barclays app version 1.4.2. it will definitely not work for the latest version of the app which is 1.7.1.
I'm currently going through the code of 1.7.1 I've made some headway into the code but there I'm quite way off from getting it to work.
If you wish I can give you a copy of the original 1.4.2 of Barclays app, the built lib file and the patched app. I would recommend against using the patched app blindly but it might make it easier to figure out the changes i did. I would rather not upload them to xda though.
HiddenRambler said:
Sorry about the late reply but I just saw this message.
That's pretty much correct. There is already a 'libtest_ndk.so' file in the lib/armeabi folder of the apk. You just have to build my code from the zip file to get the libhooktest.so, which should then be copied into the lib/armeabi folder alongside the libtest_ndk.so.
Edit: Not sure if this is enough instructions. I'm just not good at writing instructions. Steps you need to build the native library are in my post. If you need more info i suggest about building the library http://code.google.com/p/awesomeguy/wiki/JNITutorial#Setup_Environment is a good
Afterwards you have to do the modifications I've listed in the diff to the .smali files.
But i have some bad news about this patch:
The diff file i have attached in the post is wrong. I've mistakenly uploaded the patch to reverse the changes i did . I will update the post with the correct diff file.
It will only work for Barclays app version 1.4.2. it will definitely not work for the latest version of the app which is 1.7.1.
I'm currently going through the code of 1.7.1 I've made some headway into the code but there I'm quite way off from getting it to work.
If you wish I can give you a copy of the original 1.4.2 of Barclays app, the built lib file and the patched app. I would recommend against using the patched app blindly but it might make it easier to figure out the changes i did. I would rather not upload them to xda though.
Click to expand...
Click to collapse
No worries about the late reply, yeah you basically told me what i assumed it was i had to do, however when i was trying to do it i didn't have a 1.4.2 apk so was trying ot use 1.7.X and obviously failed .
Yeah the modifications to smali files is easy well when you know what your changing xD
if you could upload the apk for 1.4.2 that would be great, i would assume that as long as the signature matches the official apk its untampered, your modified one will obviously be signed with a different signature though.
:cyclops:
Good news. I've managed to get latest version 1.7.1 patched . I will try to post the patch information this weekend. In the meantime i suggest anyone interested download a copy from the play store and keep a backup of the apk in case they release a new version.
Fix for latest version of the mobile banking app (version 1.7.1)
I've figured out the changes required for the v1.7.1 of the app which is the latest version as of this post.
Changes from the old 1.4.2 are:
Almost all the classes in the app are now obfuscated, whereas before only some of the core class names were obfuscated.
The string encryption has changed. rather than a single encryption function it now uses a group of functions to perform the encryption. rrrrrr/vuuuvu class seems to manage invoking the proper decryptor based on the arguments.
All root checking is now done via the native library.
Native library now does some checks as soon as it's loaded before any methods are called.
The last change is a big problem since its not possible to do the patching of the dll after loading it as was done before. The onload/init of the dll exits the whole application as soon as it detects the phone is rooted.
My solution was to use a modified version of the 'crazy_linker' custom loader library which comes with the ndk to load the library into memory without invoking it's onload/init functions. This lets us hook into the necessary functions before they are called.
I've attached the smali changes as a diff and the new native hook library in this post.
As a side note I think the version 1.4.2 is a far better version. Why on earth would a banking app need to permissions to take pictures, who spends their time 'customizing' a banking app with personal pictures.
Edit: I've fixed a bug where the root was still being detected when used with chainfire su app. Special thanks to lil-diabo for helping me fix the issue. :good:
Xposed module for barclays banking app 1.7.1
Edit: New version (BarcPosed1.1.apk) has some support for barclays pingit. I've not tested this my self as I don't use the application personally. If anyone tries it please let me know.
I've converted my patch into xposed module. This module is compatible with the current banking app (version 1.7.1).
Please consider this as a beta version for now. I've tested it on cyanogenmod but it might have some issues with other roms. If you try it please let me know if it worked.
Assuming you already have a working xposed installation the steps to get the app working are:
1) Install banking app from playstore. Make sure it's version 1.7.1
2) Install the BarcPosed.apk from my post.
3) Run the BarcPosed app and click the 'install' button. You will need to grant it root permissions.
4) Enable the module in xposed and reboot.
5) Use the barclays app as normal.
6) Disable automatic updates for the banking app to prevent it from updating.
I've included the source code for the app.
Thanks, works perfectly. You sir (or madam) are a genius
Sent from my GT-I9300 using XDA Premium 4 mobile app
Works like a charm
Just tested it and it works!
Most excellent, Thanks again for your hard work.
So much easier than having to manually edit the files etc.
It works,excellent job, finally can use Barclays mobile, thank you very much
sent from Samsung Galaxy S4 Active
Just tested and it worked marvellously. Could you please make a fix for pingit as well?
Zell Dinch said:
Just tested and it worked marvellously. Could you please make a fix for pingit as well?
Click to expand...
Click to collapse
HiddenRambler said:
Edit: New version (BarcPosed1.1.apk) has some support for barclays pingit. I've not tested this my self as I don't use the application personally. If anyone tries it please let me know.
Click to expand...
Click to collapse
I've updated my post with version that stops the rooted warning from pingit. Don't use pingit myself so don't know how successful it is. Let me know if you try it.
Brilliant, been struggling in vain with Root Cloak Plus on my N5 but this works perfectly. Many thanks.
Sent from my Xoom Wifi using Tapatalk
Before I switched to KK, I used Barclays App 1.3 doing a small trick with SuperSU. It worked perfectly. I signed the app myself so that it wouldn't update itself from the market and so that I could still use the automatic update in the market.
Do you think it would be possible to make your AMAZING solution work with my v1.3 signed app instead?
thnx
vivelafrance said:
Before I switched to KK, I used Barclays App 1.3 doing a small trick with SuperSU. It worked perfectly. I signed the app myself so that it wouldn't update itself from the market and so that I could still use the automatic update in the market.
Do you think it would be possible to make your AMAZING solution work with my v1.3 signed app instead?
thnx
Click to expand...
Click to collapse
You could try "root cloak" or "root cloak plus" they probably will work.
Actually, what I did, is sign the app with OneClickSigner and it worked fine. Now, the app is not attached to the market anymore since the signature changed, so that means I can continue to use the "automatic update" from the market and it won't ask me to update the app all the time when Barclays upload a new version.
thnx
HiddenRambler said:
...
I've converted my patch into xposed module. This module is compatible with the current banking app (version 1.7.1).
...
Click to expand...
Click to collapse
Hello,
I have a request, can you make it compatible with GingerBread plz?
Thanks.
LoMAX_HUN said:
Hello,
I have a request, can you make it compatible with GingerBread plz?
Thanks.
Click to expand...
Click to collapse
Can you try the attached apk. It's the same code but built as an app for gingerbread version (API lvl 10). I couldn't test it as I don't have a phone for that version.
If it doesn't work please give me a logcat.
Banking Works, but Not PingIt
HiddenRambler said:
Edit: New version (BarcPosed1.1.apk) has some support for barclays pingit. I've not tested this my self as I don't use the application personally. If anyone tries it please let me know.
I've converted my patch into xposed module. This module is compatible with the current banking app (version 1.7.1).
Please consider this as a beta version for now. I've tested it on cyanogenmod but it might have some issues with other roms. If you try it please let me know if it worked.
Assuming you already have a working xposed installation the steps to get the app working are:
1) Install banking app from playstore. Make sure it's version 1.7.1
2) Install the BarcPosed.apk from my post.
3) Run the BarcPosed app and click the 'install' button. You will need to grant it root permissions.
4) Enable the module in xposed and reboot.
5) Use the barclays app as normal.
6) Disable automatic updates for the banking app to prevent it from updating.
I've included the source code for the app.
Click to expand...
Click to collapse
xposed is fantastic!
This worked for me. It's so nice to be able to update my SU binaries without fear of breaking the app.
I'm running Cyanogenmod v10.2.0 on a Samsung Galaxy S3 (International) (i9300).
I tried using the v1.1 of the BarcPosed.apk with PingIt, but it still tried to gain root and then closed itself immediately.

ViPER4Android Universal Fix CM13 Android 6.0/+

So... here I will share 2 scripts I made to fix permissions for ViPER4Android running with enforced SELinux.
Why 2 scripts?
I like to keep everything open-source. Here I like to notice, Cyanogenmod is taking the wrong direction in my point of view. Every update takes out something of the customization possibilities of the user, so I am thinking of choosing new ROM. I faced real nightmare with SELinux permissions (well... SELinux is good, but Cyanogenmod doesn't provide any tool or way to manage those permissions). The more funny part is that with branch 13.0 of cyanogenmod there is no more init.d. Before someone corrects me - yeah... there is init.d, but SELinux blocks any script from executing at boot time, so don't use it. You will get your logs spammed by error messages. So... I've tried to enable init.d again, but there is no way to manage init.d to work as before. I've tried lots of different fixes from other posts, but nothing seems to work anymore, because of SELinux restrictions. I didn't managed to find any way to run scripts on boot time with root permissions in a suitable way... without messing with other system files or rebuilding build.img... so I came with those 2 solutions:
ViPER4Android (OpenSource) This is the solution I recommend to all of you. It is full open source. It doens't mess with you current system and it should work on any device/ROM. The zip file contains ViPER4Android app and driver, sepolicy-inject tool from setools-android so we can set permissions for ViPER4Android to work with enforced SELinux and Universal Init.d.
sepolicy-inject is open source equivalent to supolicy tool of Chainfire's SuperSU. I strongly recommend sepolicy-inject over supolicy, because every root closed source app should be threaten as security risk as the code can't be examined. I don't trust it esepcially when it is part of your android root manager
Universal init.d is just a application - it simulates init.d function. Imagine it like init.d on the user side... sadly enough you need to be pre-rooted to get it running.
ViPER4Android (Legacy) Maybe more of you will like this solution as it is more automated and it doesn't require any user action after installing the zip. This zip will do the same as the one above - it will install ViPER4Android removing all other DSP apps, but here come the difference - THIS SCRIPT WILL INSTALL CHAINFIRE'S SUPERSU in order to set SELinux policies for ViIPER4Android. Chainfire's SuperSU uses supolicy-tool - it let you manage SELinux policies on boot time. Chainfire's SuperSU will run everything in /system/su.d/ so again... you have init.d support - this is the real pain in the ass.
Before you download and flash, please read:
Both scripts WILL REMOVE other DSP apps from your device and will install ViPER4Android 2.4.0.1. I STRONGLY RECOMMEND TO USE SOLUTION 1 AS IT IS FULL OPEN SOURCE! Support open source software!!!
INSTRUCTIONS
ViPER4Android (OpenSource) - IN ORDER TO WORK, YOUR DEVICE MUST BE ROOTED! (Your device need to be rooted as Unversal Init.d needs root permissions in order to simulate init.d functionality)Download the .zip; Flash and reboot; Open Universal Init.d and grant root permission if asked; Reboot once more in case it don't work!
Sometimes Universal init.d is not fully initialized and needs some root permissions. That's why you need to reboot second time - then everything works. No further actions needed.
ViPER4Android (Legacy) - Just flash and reboot... but once more - SUPPORT OPEN SOURCE AND CHOOSE SOLUTION 1!!!!
For Samsung devices - if the scripts above doesn't work for you, check this post. Thx to Viper4713 for the instructions and voshchronos for solving the issue!!!
Hope to make someone happy
PS: If u want to make me happy with some beer, here you can donate a small amount. Thank you for your support.
Can i flash it on android one device running on 6.0.1
Yes. If you have any issues, please let me know!
rpangelov said:
Yes. If you have any issues, please let me know!
Click to expand...
Click to collapse
Hi, i tried to install the open source version on my kltedv running resurrection remix 6.0.1 however it is still not working. The init.d shows the kernel doesnt support init.d, and v4a drivers status is abnormal. It is also cause screen freeze and random restart. Any ideas? Your kind input would be very much appreciated. Thanks.
hiropandaz said:
Hi, i tried to install the open source version on my kltedv running resurrection remix 6.0.1 however it is still not working. The init.d shows the kernel doesnt support init.d, and v4a drivers status is abnormal. It is also cause screen freeze and random restart. Any ideas? Your kind input would be very much appreciated. Thanks.
Click to expand...
Click to collapse
I've just readed some info about the ROM you use. As it is based on Cyanogenmod I assume there is root manager builded in. Maybe it is disabled as CM root access is disabled by defaults? Look at: Settings -> Developer Options -> Root Access - turn in on by "Apps only".
Then just follow this steps:
1. Start Universal Init.d
2. Turn it off from the toggle button
3. Run test from the button on the bottom of Universal Init.d
4. If ask for root permissions, grant them!
5. Turn Universal Init.d ON from the toggle (step 2 you turned it off)
6. Restart your device and check once more!
If you still have any issues, please let me know!
Greetz,
Angelov
---------- Post added at 10:44 PM ---------- Previous post was at 10:42 PM ----------
rpangelov said:
I've just readed some info about the ROM you use. As it is based on Cyanogenmod I assume there is root manager builded in. Maybe it is disabled as CM root access is disabled by defaults? Look at: Settings -> Developer Options -> Root Access - turn in on by "Apps only".
Then just follow this steps:
1. Start Universal Init.d
2. Turn it off from the toggle button
3. Run test from the button on the bottom of Universal Init.d
4. If ask for root permissions, grant them!
5. Turn Universal Init.d ON from the toggle (step 2 you turned it off)
6. Restart your device and check once more!
If you still have any issues, please let me know!
Greetz,
Angelov
Click to expand...
Click to collapse
Hi Angelov, many thanks for your helpful instruction. I couldnt get it work with open source version. However it is working now after i install V4A legacy version. Many Thanks once again.
hiropandaz said:
---------- Post added at 10:44 PM ---------- Previous post was at 10:42 PM ----------
Hi Angelov, many thanks for your helpful instruction. I couldnt get it work with open source version. However it is working now after i install V4A legacy version. Many Thanks once again.
Click to expand...
Click to collapse
You are welcome! As I mentioned in the instructions - the legacy script will work always, but I don't like the implementation of it. I am working on new version of the opensource script, so there won't be any issues of that kind. When I am ready I will upload it here after updating my first post.
Greetz,
Angelov
This "universal" fix has been shared several months ago on XDA and a simple root shell is enough to use V4A in enforcing mode.
FYI init.d is deprecated now but it's not related to CM. Use su.d instead.
Primokorn said:
This "universal" fix has been shared several months ago on XDA and a simple root shell is enough to use V4A in enforcing mode.
FYI init.d is deprecated now but it's not related to CM. Use su.d instead.
Click to expand...
Click to collapse
Can you provide me a link to this universal fix you are talking about?
PS: init.d is deprecated in AOSP, i get that. Please read my first post once more, obviously isn't clear enough. Using su.d will result in using closed source tools to manage your Selinux policy's. As I mentioned it above - please support open source software. Every closed source root app has to be threaten as security risk. My opinion...
rpangelov said:
Can you provide me a link to this universal fix you are talking about?
PS: init.d is deprecated in AOSP, i get that. Please read my first post once more, obviously isn't clear enough. Using su.d will result in using closed source tools to manage your Selinux policy's. As I mentioned it above - please support open source software. Every closed source root app has to be threaten as security risk. My opinion...
Click to expand...
Click to collapse
Check the official V4A thread for instance. Others have opened threads in device specific forums or in the App & Games forum.
Have a look at this thread, it might interest you: http://forum.xda-developers.com/android/software-hacking/wip-selinux-capable-superuser-t3216394
FYI I do support open-source free/libre softwares, as much as I can.
Primokorn said:
Check the official V4A thread for instance. Others have opened threads in device specific forums or in the App & Games forum.
Have a look at this thread, it might interest you: http://forum.xda-developers.com/android/software-hacking/wip-selinux-capable-superuser-t3216394
FYI I do support open-source free/libre softwares, as much as I can.
Click to expand...
Click to collapse
I've seen phh's SuperUser but I didn't tried it - this is one of my tasks for this/next week.
As I've tried the most scripts, I didn't liked all the actions needed to be taken before running the .zip script in order to get viper working. I compile my own Cyanogenmod and I don't use gapps. Almost all apps I use on my device are opensource as I use F-droid as my only market (well... I need whatsapp, but I download it just from the website). Anyway... Cyanogenmod has it's own root manager builded in.... so why I need to install one more, which contains closed source tools in it? That is also the reason I don't advice people to use it... and I don't see that as solution to my problem. AOSP is opensource, but nowadays it is very dependent on some closed-source elements and I want to wipe them all out and use open source alternatives for. I hope you understand why using su.d isn't solution in this case. You just make your self and others dependent on one more closed source app, so I don't get where is the support for open source? I think that opensource script is good solution to the problem without using any closed source tool.
To make it easy as possible - just flash the .zip and you are ready to go, I included the latest version of Chainfire's SuperSu in the legacy script, so you don't need to install it before running the .zip. It looks easier to me....
Actually it is very stupid because the result of using the scripts (doesn't matter which one) you will end up with rooted device anyway (if it isnt already), but in order to get opensource script working your device has to be rooted before running the .zip, but if your device is already rooted, you just flash the zip and you are ready to go.
rpangelov said:
I've seen phh's SuperUser but I didn't tried it - this is one of my tasks for this/next week.
As I've tried the most scripts, I didn't liked all the actions needed to be taken before running the .zip script in order to get viper working. I compile my own Cyanogenmod and I don't use gapps. Almost all apps I use on my device are opensource as I use F-droid as my only market (well... I need whatsapp, but I download it just from the website). Anyway... Cyanogenmod has it's own root manager builded in.... so why I need to install one more, which contains closed source tools in it? That is also the reason I don't advice people to use it... and I don't see that as solution to my problem. AOSP is opensource, but nowadays it is very dependent on some closed-source elements and I want to wipe them all out and use open source alternatives for. I hope you understand why using su.d isn't solution in this case. You just make your self and others dependent on one more closed source app, so I don't get where is the support for open source? I think that opensource script is good solution to the problem without using any closed source tool.
To make it easy as possible - just flash the .zip and you are ready to go, I included the latest version of Chainfire's SuperSu in the legacy script, so you don't need to install it before running the .zip. It looks easier to me....
Actually it is very stupid because the result of using the scripts (doesn't matter which one) you will end up with rooted device anyway (if it isnt already), but in order to get opensource script working your device has to be rooted before running the .zip, but if your device is already rooted, you just flash the zip and you are ready to go.
Click to expand...
Click to collapse
I mentioned su.d because that's a solution with newer Android versions but I didn't say it's the best one. Using FLOSS softwares is a good move but you are using proprietary codes with CM.
Hi everyone, i flashed both of the zips with TWRP but i got an error code : 255. Any idea how to fix it ? Please help me. I'm using an x86 phone btw
trongtin64 said:
Hi everyone, i flashed both of the zips with TWRP but i got an error code : 255. Any idea how to fix it ? Please help me. I'm using an x86 phone btw
Click to expand...
Click to collapse
I think it's because your phone architecture... anyway - I will look at it today and I will let you know if I find a solution for your problem. Can you tell me which phone exactly you own ? Thank you.
Greetz, Angelov
rpangelov said:
I think it's because your phone architecture... anyway - I will look at it today and I will let you know if I find a solution for your problem. Can you tell me which phone exactly you own ? Thank you.
Greetz, Angelov
Click to expand...
Click to collapse
i'm using a zenfone 5 (A501CG) with resurrection remix mm 5.6.7
trongtin64 said:
i'm using a zenfone 5 (A501CG) with resurrection remix mm 5.6.7
Click to expand...
Click to collapse
You have a x86 architecture and this zip is probably for arm only. I guess you need the updater-binary for x86 and place it into the zip in META-INF/com/google/android.
Primokorn said:
You have a x86 architecture and this zip is probably for arm only. I guess you need the updater-binary for x86 and place it into the zip in META-INF/com/google/android.
Click to expand...
Click to collapse
Ok so i need an updater-binary for x86 right? Can i copy it from other zip to your zip? Will it work?
trongtin64 said:
Ok so i need an updater-binary for x86 right? Can i copy it from other zip to your zip? Will it work?
Click to expand...
Click to collapse
AFAIK you can use the one from a custom rom. You need a compatible custom recovery of course.
Primokorn said:
AFAIK you can use the one from a custom rom. You need a compatible custom recovery of course.
Click to expand...
Click to collapse
I'll use the one from my custom rom . Thank you for helping me :good:
It works great. thanks.
my bad for not following the instructions.

[ROM] [UNOFFICIAL] LineageOS 13 for Life One X2 [DISCONTINUED]

LineageOS 13 for Life One X2​
This Rom was ported from the Unofficial LineageOS 13 for the Yureka Black. First I need to give credit for all the hard work the developers put into their Rom, I only modified it to work on the Blu Life One X2.
Note: Please remember I'm doing this on my own time and using my own money to cover expenses.
What Works:
Boots
Calls
SMS
Data
GPS
Wifi
Bluetooth
Audio
Video Playback
Sensors
Led
Not Working Yet:
(Please let me know if you find anything else)
Camera
Flash (works but reversed front to back)
Fingerprint
Downloads:
Builds: https://drive.google.com/drive/folders/0BzMHnGbQH3bhVnppRTdHbjZyZEk?usp=sharing (list view recommended)
TWRP: https://drive.google.com/file/d/0BzMHnGbQH3bhRGhuQVNsWUFsa0k/view?usp=sharing
Kernel: https://github.com/meganukebmp/android_kernel_blu_life-one-x2
Gapps: http://opengapps.org
Special thanks to Ieatgravity and Tydraco for all their support.
Screenshots:
(screenshots taken with the PitchBlack | DarkRed CM13/12 theme)
Theme: https://apkpure.com/pitchblack-darkred-cm13-12/com.resurrectionremix.pitchblack
Changelog
Lineage-13.0-08282017-2012-UNOFFICIAL-Life_One_X2:
fixed gapps (fixed "there was a problem communicating with google servers" error)
Lineage-13.0-09042017-2137-UNOFFICIAL-Life_One_X2:
Fixed theme manager crashing
Cleaned up some of my code
Troubleshooting
Encryption Unsuccessful Screen:
Boot into TWRP and format Data (not wipe)
Reserved
Great work! I look forward to testing this.
I was using drax rom, flashed your LOS and i keep getting the encryption unsuccessful. how do i go about this?
Daisuke1988 said:
I was using drax rom, flashed your LOS and i keep getting the encryption unsuccessful. how do i go about this?
Click to expand...
Click to collapse
Go into TWRP and format Data. That fixed it for me.
srgrusso said:
Go into TWRP and format Data. That fixed it for me.
Click to expand...
Click to collapse
Thanks! now one last thing, which gapps did you use? ive tried 3 and they all fail. would it be because of the encryption thing?
Daisuke1988 said:
Thanks! now one last thing, which gapps did you use? ive tried 3 and they all fail. would it be because of the encryption thing?
Click to expand...
Click to collapse
Sorry unfortunately I haven't been able to get them working either. I've been getting "there was a problem communicating with google servers" error. I'm currently trying to fix this. I think it is related to this error from dmesg:
Code:
[ 1398.055688] type=1400 audit(1503798238.823:50): avc: denied { search } for pid=7470 comm="IntentService[P" name="com.google.android.gsf" dev="mmcblk0p46" ino=803248 scontext=u:r:untrusted_app:s0:c522,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=dir permissive=1
I have been using other apk resources for now. I'll add opengapps to the list.
Ok I think I figured out the gapps problem. I hope to have a fix tomorrow.
Here is a quick fix. Download build.prop
https://drive.google.com/file/d/0BzMHnGbQH3bhLWdIQmd4cVl6LWs/view?usp=sharing
Boot into TWRP and mount system partition rw then:
adb push build.prop system/
adb shell
chmod 644 system/build.prop
reboot
now opengapps should work.
The problem for now will be to operate the cameras correctly, in addition to the fingerprint reader ... But little by little and with this is a breakthrough
srgrusso said:
Ok I think I figured out the gapps problem. I hope to have a fix tomorrow.
Here is a quick fix. Download build.prop
https://drive.google.com/file/d/0BzMHnGbQH3bhLWdIQmd4cVl6LWs/view?usp=sharing
Boot into TWRP and mount system partition rw then:
adb push build.prop system/
adb shell
chmod 644 system/build.prop
reboot
now opengapps should work.
Click to expand...
Click to collapse
man youre awesome!
kiomet said:
The problem for now will be to operate the cameras correctly, in addition to the fingerprint reader ... But little by little and with this is a breakthrough
Click to expand...
Click to collapse
im assuming once the finger print sensor is working we can use it as gesture navigations right?
Daisuke1988 said:
im assuming once the finger print sensor is working we can use it as gesture navigations right?
Click to expand...
Click to collapse
I could be wrong, but I don't think this phone supports that. Hopefully someone will correct me if I am wrong.
New build uploaded with gapps fixed.
Lineage-13.0-08282017-2012-UNOFFICIAL-Life_One_X2.zip
srgrusso said:
I could be wrong, but I don't think this phone supports that. Hopefully someone will correct me if I am wrong.
Click to expand...
Click to collapse
Not natively. Probably will work with an additional app. But the rom itself doesn't have this built in. (not even swipe for back option from stock X2 )
ieatgravity said:
Not natively. Probably will work with an additional app. But the rom itself doesn't have this built in. (not even swipe for back option from stock X2 )
Click to expand...
Click to collapse
on the stock rom it has the option to use it as a agivation option under the finger print settings
Daisuke1988 said:
on the stock rom it has the option to use it as a agivation option under the finger print settings
Click to expand...
Click to collapse
Yes but the lineage os for this rom was ported from another phone. It wasn't compiled for our phon so the option for navigation isn't included. Now with that said. If someone would like to experiment and see if they can extract that from the stock settings and merging it with the lineage settings then maybe we can add that functionality. Either way it will be useless without a working fingerprint scanner.
ieatgravity said:
Yes but the lineage os for this rom was ported from another phone. It wasn't compiled for our phon so the option for navigation isn't included. Now with that said. If someone would like to experiment and see if they can extract that from the stock settings and merging it with the lineage settings then maybe we can add that functionality. Either way it will be useless without a working fingerprint scanner.
Click to expand...
Click to collapse
well it will come. over all, the rom is working great.

[WIP][LineageOS] OnePlus 5T OxygenOS Camera, Camera service and Gallery for LineageOS

Hi,
This is my first thread as a dev so please accept my appologies if there's an established way to make this and I'm not doing it.
I managed to create a flashable zip to add the official OnePlus Camera, OnePlus Camera Service and OnePlus Gallery packages to an existing LineageOS 15.1 rom.
Maybe this was already availble somewhere made by someone else but I couldn't find it so here I upload it and share my version of it.
Instructions:
1. Remove any phone protection (fingerprints, schemas...) prior to anything else
2. Reboot to TWRP
3. Flash op5t_camera_patch.zip (make a backup if you want before)
4. Wipe Cache/Dalvik when proposed
5. Reboot system
6. Open the OnePlus Camera, this will create the config files in /data/data/com.oneplus.camera with correct permissions. At this step, portrait mode is not enabled yet, this is normal.
7. Long press the OnePlus camera icon and open the infos of the camera app, and force close it.
8. Extract the data-data-com.oneplus.camera.zip archive.
9. Inside you will find a folder com.camera.one/shared_prefs
10. Copy the XML files of the folder com.oneplus.camera/shared_prefs/ from the zip to your device /data/data/com.oneplus.camera/shared_prefs/ (replace existing files, may require root)
11. Now you can use the OnePlus Camera and the OnePlus Gallery! And Portrait mode should work.
Enjoy
Caution:
- Please don't flash over non-LineageOS roms! It could overwrite some important files and cause issues. I personally use the MicroG fork of LineageOS with no issues. Also, it has been tested only with the latest LineageOS builds (starting from 2018-05-14).
- This is only for the OnePlus 5T. It may work for the 5 but I cannot test it. Also this is the APKs from the 5T and there's no guarantee they will work with another device.
Notes:
- This is a work in progress, at the moment there are issues with HDR Auto, optical zoom and portrait mode not being 100% functional.
- Don't take me for responsible about any problem that may arise, this is your device, and only you can decide what you flash inside. That said, it should not cause any issue.
- This is the APKs from the latest OxygenOS for the OP5T (5.1.1)
- I had to re-sign the OnePlusCameraService.apk with my own signature because of a shared user issue. When I removed the shared user from AndroidManifest.xml, obviously the signature was wrong. So I re-signed it.
- There are a lot of shared libraries in this flashable zip, some probably unrelated to the camera, service and gallery. I just compared the libraries and jar between OxygenOS and LineageOS, and put them in the zip. I didn't take the time to check which one are unrelated.
- This also adds the package com.oneplus (OnePlus System). Don't know if that's a good thing or not.
- This zip will not overwrite anything because it only contains something no present in LineageOS.
- I have the feeling my iddle battery drain has reduced. Maybe because of the Oneplus System package.
Downloads:
https://nofile.io/f/QMteWeWCT7h/op5t_camera_patch.zip
https://nofile.io/f/rurW0tJpWND/data-data-com.oneplus.camera.zip
Temporary mirrors (will stop working in 60 days):
https://framadrop.org/r/nvdU_L7q_C#j9XrmIRz+WWshtyhkmm1i8Asgbown0D5OkeAfmmKo4o=
https://framadrop.org/r/nOAqp4mVNE#i6JKBlxBQHEVQnRh6UgWAyLjqxwX/BYnDsXKt0bR8MU=
I will post Android File Host links as soon as possible.
but how to download this?
vk_singh said:
but how to download this?
Click to expand...
Click to collapse
there are links at the bottom of his post.
lockmunk said:
there are links at the bottom of his post.
Click to expand...
Click to collapse
but pn clicking download invalid session
---------- Post added at 10:20 AM ---------- Previous post was at 10:18 AM ----------
JCDentonMale said:
Hi,
This is my first thread as a dev so please accept my appologies if there's an established way to make this and I'm not doing it.
I managed to create a flashable zip to add the official OnePlus Camera, OnePlus Camera Service and OnePlus Gallery packages to an existing LineageOS 15.1 rom.
Maybe this was already availble somewhere made by someone else but I couldn't find it so here I upload it and share my version of it.
Instructions:
1. Remove any phone protection (fingerprints, schemas...) prior to anything else
2. Reboot to TWRP
3. Flash op5t_camera_patch.zip (make a backup if you want before)
4. Wipe Cache/Dalvik when proposed
5. Reboot system
6. Open the OnePlus Camera, this will create the config files in /data/data/com.oneplus.camera with correct permissions. At this step, portrait mode is yet not enabled, this is normal.
7. Long press the OnePlus camera icon and open the infos of the camera app, and force close it.
8. Extract the data-data-com.oneplus.camera.zip archive.
9. Inside you will find a folder com.camera.one/shared_prefs
10. Copy the XML files of the folder com.oneplus.camera/shared_prefs/ from the zip to /data/data/com.oneplus.camera/shared_prefs/ (replace existing files)
11. Now you can use the OnePlus Camera and the OnePlus Gallery! And Portrait mode should work.
Enjoy
Notes:
- I'm not responsible for any problem that may arise, this is your device, and only you can decide what you flash inside. That said, it should not cause any issue.
- This is the APKs from the latest OxygenOS for the OP5T (5.1.1)
- I had to re-sign the OnePlusCameraService.apk with my own signature because of a shared user issue. When I removed the shared user from AndroidManifest.xml, obviously the signature was wrong. So I re-signed it.
- There are a lot of shared libraries in this flashable zip, some probably unrelated to the camera, service and gallery. I just compared the libraries and jar of OxygenOS and LineageOS, and put them in the zip.
- This also add the package com.oneplus (OnePlus System). Don't know if that's a good thing or not.
- This zip will not overwrite anything because it only contains something no present in LineageOS.
Downloads:
https://nofile.io/f/QMteWeWCT7h/op5t_camera_patch.zip
https://nofile.io/f/rurW0tJpWND/data-data-com.oneplus.camera.zip
Click to expand...
Click to collapse
can u morror download link to gdrive or afh
vk_singh said:
but pn clicking download invalid session
---------- Post added at 10:20 AM ---------- Previous post was at 10:18 AM ----------
can u morror download link to gdrive or afh
Click to expand...
Click to collapse
Please do not quote full OP my friend... And both links working fine...
hi,
could you tell me how the quality is. is it like stock or bad like on other roms with oneplus camera
strnge said:
hi,
could you tell me how the quality is. is it like stock or bad like on other roms with oneplus camera
Click to expand...
Click to collapse
I think the quality is the same as on OxygenOS. If it is not, I haven't seen a difference.
The main advantage here is that the OnePlusCameraService package is installed and working, I think it is used for face detection and other stuff.
I've registered to Android File Host but I have to wait until they review my developer application.
Thanks for this!!!
Really amazing!
You did mention LineageOS but I had to try on Omnirom!
I tried it on OmniRom Treskmod.
Unfortunatly, it did not work. com.android.phone kept crashing. I did try your full tutorial but no portrait mode.
I'm thinking about switching to Lineage just because of this!
Can you make it compatible with more roms?
Great job!
JCDentonMale said:
I think the quality is the same as on OxygenOS. If it is not, I haven't seen a difference.
The main advantage here is that the OnePlusCameraService package is installed and working, I think it is used for face detection and other stuff.
I've registered to Android File Host but I have to wait until they review my developer application.
Click to expand...
Click to collapse
Its only for LOS?
Rajeev said:
Its only for LOS?
Click to expand...
Click to collapse
Yes, at the moment. And only for 15.1, for the 5T (dumpling).
Nick502 said:
Thanks for this!!!
Really amazing!
You did mention LineageOS but I had to try on Omnirom!
I tried it on OmniRom Treskmod.
Unfortunatly, it did not work. com.android.phone kept crashing. I did try your full tutorial but no portrait mode.
I'm thinking about switching to Lineage just because of this!
Can you make it compatible with more roms?
Great job!
Click to expand...
Click to collapse
I only tested it with the latest LineageOS and with this rom it does not overwrite anything. But, there is no guarantee that it will not overwrite something important for other roms... Your problem with com.android.phone makes me think that it overwritten existing OmniRom files.
JCDentonMale said:
Yes, at the moment. And only for 15.1, for the 5T (dumpling).
Click to expand...
Click to collapse
Any plan for other rom support too?
anyone able to make a magisk module from it?
@JCDentonMale can you mirror it to androidfilehost or google drive? In Germany its not possible to reach your download link.
Rajeev said:
Any plan for other rom support too?
Click to expand...
Click to collapse
No. I only use LineageOS. Anyone is free to try, though.
CoreGaming said:
@JCDentonMale can you mirror it to androidfilehost or google drive? In Germany its not possible to reach your download link.
Click to expand...
Click to collapse
Yes, as soon as I get approved by Android File Host.
Uh-oh. I think flashing my zip may cause issues with 4G. Investigating.
Reflashing the latest LineageOS seems to correct the issue, don't know what happened. I was stuck in 3G. Maybe it was an issue on the network provider side.
It's now confirmed that it was my mobile network provider who had 4G issues and they resolved it in same time as my flashing. So nothing to worry about flashing my zip on LineageOS.
Amazing job, will try this asap i flash lineage os
unable to download. Connection has been blocked.
Can you please also port "gaming do not disturb" function on OOS? Or is there already some apps or mod can do for that?

unpack payload and images or root with rw permissions

hello to everyone​ i,m op8 os12 stock rom user and rooted as well
but i need to modify system few parts like build prop etc
i try many things to get rw access but failed
so there,s my first Q IS THIS POSSIBLE TO GET RW ACCESS IN OS12?
if possible then how? but incase its not possible then is this possible to unpack payload.bin
and modify system/vendor/product?
payload extracting is easy but is there any tool or kitchen which support these partitions unpack repack?
Why not just use a Magisk module?
Also, please make the font on your post more clear. The "black on gray" text is really cumbersome to read.
Xryphon said:
Why not just use a Magisk module?
Also, please make the font on your post more clear. The "black on gray" text is really cumbersome to read.
Click to expand...
Click to collapse
Hi thanks for time and showing your experience may i know which module you talk about and it'll be greatly appreciated if you pass the link
And sorry about font i create thread by pc in pc its looks very good
I'll edit tomorrow by pc
Mr Hassan said:
Hi thanks for time and showing your experience may i know which module you talk about and it'll be greatly appreciated if you pass the link
And sorry about font i create thread by pc in pc its looks very good
I'll edit tomorrow by pc
Click to expand...
Click to collapse
I believe an application is on the Play Store where you can edit your build. prop.
There's modules such as Pixelify that "change" your device into a Pixel.
Xryphon said:
I believe an application is on the Play Store where you can edit your build. prop.
There's modules such as Pixelify that "change" your device into a Pixel.
Click to expand...
Click to collapse
Bro build prop editing is easy once get rw
Ok I'm sure your talk about this module
[MAGISK] Pixelify
Pixelify Magisk Module A magisk module was created to make your android phone close to pixel devices. Current version - 2.2 So Features does this module provide? - Next Generation Assistant - Call Screening - Direct my call - Hold for me - Next...
forum.xda-developers.com
But still there's 2 thing's
1st this module just add few custom thing like boot animations etc not get rw
2nd in thread he already mentions oneplus os12 not support
Mr Hassan said:
Bro build prop editing is easy once get rw
Ok I'm sure your talk about this module
[MAGISK] Pixelify
Pixelify Magisk Module A magisk module was created to make your android phone close to pixel devices. Current version - 2.2 So Features does this module provide? - Next Generation Assistant - Call Screening - Direct my call - Hold for me - Next...
forum.xda-developers.com
But still there's 2 thing's
1st this module just add few custom thing like boot animations etc not get rw
2nd in thread he already mentions oneplus os12 not support
Click to expand...
Click to collapse
Oh. I had assumed you were on a custom ROM. It works best on there.
Xryphon said:
Oh. I had assumed you were on a custom ROM. It works best on there.
Click to expand...
Click to collapse
No no bro its stock rom

Categories

Resources