Remove All Ads from XDA

[OFFICIAL] Xposed for Lollipop/Marshmallow [Android 5.0/5.1/6.0, v87, 2017/01/28]

2,560 posts
Thanks Meter: 69,274
 
By rovo89, Senior Recognized Developer on 13th February 2015, 08:48 PM
Thread Closed Email Thread
29th June 2015, 07:14 PM |#11  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
Those who had issues with installer version 3.0 alpha3 displaying the framework as not installed, please try 3.0 alpha4. ProGuard optimized a bit too much in one very specific case... unfortunately, this never appeared during development, just in the release build.
If modules aren't loaded after a reboot because modules.list wasn't found, try to disable/enable any module. This will write the file again.

One addition to the changes in framework v65: The ZIP files are now signed. This wasn't possible before integrating the custom BusyBox version as some recoveries failed to unzip the signed ZIP.
The Following 419 Users Say Thank You to rovo89 For This Useful Post: [ View ]
 
 
4th July 2015, 05:11 PM |#12  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
I have just uploaded ZIPs for Xposed framework version 66 and also replaced the uninstaller ZIPs. There are no changes in the framework itself, so if you installed version 65 successfully, there's no need to update. If you got messages containing "Invalid argument" or "Wrong SDK version: 19, expected 21" while flashing the ZIP files, this should fix them. Thanks to @romracer for the fix!

EDIT: Had to reupload. If you downloaded the ZIPs within the first 15 minutes after this post was published, please download them again.
The Following 402 Users Say Thank You to rovo89 For This Useful Post: [ View ]
16th July 2015, 07:22 AM |#13  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
New files for framework version 67 are now available. They fix an issue with recoveries that have SELinux disabled (even though they might claim that "Full SELinux support is present" in the log, like TWRP does). This seems to have happened mainly on LG devices and caused boot loops, but could affect others as well. Details about the fix are in this commit: https://github.com/rovo89/XposedTool...9d8db1aea69124

The uninstaller has also been updated, although it's unlikely that it would have caused real issues.
The Following 377 Users Say Thank You to rovo89 For This Useful Post: [ View ]
27th July 2015, 06:50 PM |#14  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
framework version 68 fixes two reported crashes:
  • "Fatal signal 11" reported for dex2oat or "Compiler driver" in the Xposed log. I have seen a few posts about such issues, but the one I tested the fix with was about Quickoffice. If you notice further issues like this, please report them on GitHub with the full logcat (as only that contains the command line that crashes).
  • "com.android.phone has stopped" on LG G3. Don't confuse this with support for encrypted apps (LGWeather, LGCover), this can't be fixed unless someone comes up with a decrypter, ideally one that can be executed on the device.
The Following 401 Users Say Thank You to rovo89 For This Useful Post: [ View ]
3rd August 2015, 07:41 PM |#15  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
Quote:
Originally Posted by rovo89

Don't confuse this with support for encrypted apps (LGWeather, LGCover), this can't be fixed unless someone comes up with a decrypter, ideally one that can be executed on the device.

I had another look at their encryption, or rather the library they use for it. Fortunately, all the decryption logic is in that library (liblgalmond.so), not in ART itself. So I did a lot of digging into their libraries and finally figured out how to call the relevant functions to detect and decrypt their encrypted apps on the fly. That's the requirement to recompile and run these apps.

So here it is, framework version 69 with support for LG's encrypted apps (LGCover, LGWeather, maybe more). Please make sure to clean your Dalvik cache after flashing the ZIP if you have an LG device and had issues with these apps.
The Following 435 Users Say Thank You to rovo89 For This Useful Post: [ View ]
7th August 2015, 08:17 PM |#16  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
It turned out that some LG devices (at least G2 mini and G Pad 8.3) are using encrypted precompiled (odex) apps. These need to be handled differently than apps which contain just the encrypted dex file. With framework version 70, Xposed supports both encrypted dex and odex files. Again, clearing the Dalvik cache might be necessary. If you don't have an LG device or don't get FCs, you can skip this update.
The Following 311 Users Say Thank You to rovo89 For This Useful Post: [ View ]
16th August 2015, 01:39 PM |#17  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
In framework version 71, I have fixed a boot loop on various devices/ROMs related to the "SettingsProvider". If you were getting boot loops with earlier versions, you might want to give this a try.

Apart from that, it should now work properly with Sygic (after reinstalling the app or wiping the Dalvik cache). Note that some modules might not work properly with this app, as they "hack" Android's resource processing (e.g. for images/texts) on a low level. As this conflicts with Xposed (which does a similar thing), I had to disable parts of the API for this app.
The Following 371 Users Say Thank You to rovo89 For This Useful Post: [ View ]
31st August 2015, 09:12 PM |#18  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
I finally created an official version for Android 5.1 (aka SDK22). You can download it as v72 from the first post.

This version is not directly based on @romracer's port, however there aren't many differences. He had merged AOSP 5.1 into the Xposed codebase, I did it the other way around and used this opportunity to reorder and combine the commits. So it's a little bit cleaned up now, which will hopefully make it easier to port these changes to future Android versions. I have also cherry-picked two of his changes that weren't in the offical version yet: A fix for a special case in resource handling on 64-bit and compression of the backup Xposed creates during its installation. Many thanks to @romracer for providing the unofficial version - this gave me the chance to fix and improve many things (which were in turn merged by him and others).

That said, there are also a few new changes:
- In error messages, the Android version is now display as well, e.g. "Wrong Android version: 5.1 / SDK22 ... This file is for: 5.0 / SDK21"
- The files for Android 5.1 can now handle gzip-compressed odex files (*.odex.gz). Those files only exist on certain ROMs (e.g. CM) that merged a few commits proposed by Intel. These commits weren't accepted into AOSP because the way they're handling the compressed files has some flaws. With Xposed installed, these files will be unpacked on-the-fly and recompiled.

The gzip support might also be interesting for ROMs where the /system partition is almost full. It should be possible to gzip some of the .odex files before installing Xposed in order to free up some space. This should work on any odexed 5.1 ROM, even if the Intel commits aren't included. However, this would be very experimental. Volunteers are welcome, but don't forget to create a backup.

Finally, I have updated the uninstaller zips. They include a timestamp now, as new installer zips might require new uninstaller versions. You should always be able to uninstall older versions with the latest uninstaller though. v72 requires at least the uninstaller from today (20150831).
The Following 830 Users Say Thank You to rovo89 For This Useful Post: [ View ]
2nd September 2015, 09:22 PM |#19  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
With framework version 73, a bug on 64-bit ROMs is fixed which prevented modules from reading their preferences. I believe that the root cause is a bug in AOSP, but whatever - it should be fixed now. Thanks to @romracer and @cryptyk for the fix.
I have additionally merged a few changes from CyanogenMod. Most of them control when the Dalvik cache is cleared automatically after a bootloop (new feature in 5.1 AOSP, now improved) and one is supposed to increase the compile performance on some ROMs. Don't expect too much though.
The Following 436 Users Say Thank You to rovo89 For This Useful Post: [ View ]
10th September 2015, 07:55 PM |#20  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
In framework version 74, I have fixed some more incompatibilities which could lead to bootloops or crashes. I assume that most of these crash logs contained the string "Incompatible set properties", which is actually a consequence of previous method verification errors. It's hard to say which ROMs and devices were affected - but flashing the new version shouldn't hurt even if everything looks fine with older versions. If you do notice any issues and are sure that it's not caused by yourself, you have higher chances of getting them fixed if you open a detailed GitHub issue (usually I will need at least a full logcat).

I won't be able to work on Xposed for the next 2-3 weeks - no time for development, support or questions at all. If the rumors I have read are right, I should be ready just in time to start porting Xposed to M.
The Following 624 Users Say Thank You to rovo89 For This Useful Post: [ View ]
7th October 2015, 11:05 PM |#21  
rovo89's Avatar
OP Senior Recognized Developer
Thanks Meter: 69,274
 
Donate to Me
More
Framework version 75 adds compatibility with the latest 5.1.1 ROMs (v19 and later) which include a change to app_process. This version should be compatible with both, newer and older 5.1.x ROMs. The change didn't affect 5.0.x. This version also disables the dex2oat watchdog, so especially on older devices with less performance, Xposed might now be working.

Fixing this issue prevented me from gettings started with Marshmallow so far, but I'm on it. My Nexus 9 is running on stock AOSP 6.0 already and the sources are synced to the build server (thanks to XDA for providing it). I assume that integrating the hooking mechanism should work relatively smoothless (although there were some bigger architectural changes). However, there are some new things, e.g. JIT and the optimizing compiler that need more attention to ensure that methods which could potentially be hooked are really called instead of being optimized away.

I can't give any timeline for this, it's done when it's done, and Xposed is not the only thing in my life. That said, donations are always very welcome as a little extra motivation.
The Following 1,233 Users Say Thank You to rovo89 For This Useful Post: [ View ]