5,594,805 Members 37,352 Now Online
XDA Developers Android and Mobile Development Forum

[FRAMEWORK ONLY!] Xposed - ROM modding without modifying APKs (2.5.1)(12.04.2014)

Tip us?
 
Ranomez
Old
#6121  
Senior Member
Thanks Meter 108
Posts: 632
Join Date: Jun 2010
Quote:
Originally Posted by rovo89 View Post
I don't want to steal your time and it's not urgent. If you have the time though, I would appreciate if you could compare the boot times between Xposed 2.3.1, 2.4 and without Xposed.
Ok, will do later today or tomorow night, but that means I will report tomorow if I install AOKP today or on monday if I install it tomorow night.
Register here on copy: https://copy.com?r=bhjtga and we will both get 5gb bonus space

List of devices:
HTC One X+ Vodafone-Main phone-CM11

Onda v975m-Main tablet device.

Sony Smartwatch 2

HTC Touch Pro 2 RHOD100_UK-Backup phone-CM7.

Archos101IT Gen8-Secondary tablet device-CM9.
The Following User Says Thank You to Ranomez For This Useful Post: [ Click to Expand ]
 
rovo89
Old
#6122  
rovo89's Avatar
Recognized Developer - OP
Thanks Meter 11023
Posts: 1,906
Join Date: Jan 2012
Default Xposed 2.4 final

This is Xposed version 2.4. The main new features and fixes in this version are:
  • Support for Android 4.4 (KitKat) in Dalvik mode (ART is not supported, see below)
  • Significant performance improvements of the framework
  • Viewer for the debug.log in the installer
  • Check in the installer whether Xposed is actually active and working


First of all, I would like to thank the 45 people who donated to get me a Nexus 5, from a little "thanks" to huge amounts of money. I was really impressed and hope you like this update.

In detail:
Xposed should now fully support KitKat. As mentioned, that wouldn't have been possible at this time without your support.
Modules should continue to work if they don't rely on AOSP internals that have changed in KitKat. One example: It seems that the battery icon is no longer an (animated) image, but a Java implementation. Obviously, any modules that try to replace the battery image will no longer work. The Xposed framework can't do anything here, the module needs to be rewritten. Therefore, if some of your modules don't work, please get in contact with the module author first. You will probably see an error in the new debug.log viewer in this case.
Xposed isn't compatible with ART, I can't say yet whether it will be in the future (will require a major rewrite if possible at all). As you would get into a bootloop if you try to combine Xposed+ART, Xposed automatically resets the choice to "Dalvik". If you want to test ART, you must uninstall the framework.

The performance improvements apply to the very core of Xposed, the method hooks, in all Android versions. In a test app developed by @exidler, the overhead per call used to be ~71 μs (= 0.071 ms) per call to a hooked method (with one empty callback handler) on my Galaxy S2. Now it's ~13 μs (= 0.013 ms). That's a relative improvement of factor ~5.5x. Thanks to @exidler for the research and several suggestions! I have sent a pre-beta to @kamso, who had reported lags with older versions. Now everything works fine for him. Anyway, I wouldn't say that Xposed had bad performance before. Keep in mind that we are talking about significantly less than a millisecond here.

The debug.log viewer should give a quick impression whether Xposed and modules could be loaded fine. It also includes options to save the log to SD card (so it's easier to transfer it to a PC etc.) and send it via mail.

The Xposed Installer now checks whether the latest version of the framework is active. If not (e.g. because it's not installed yet, you forgot to reboot or something in Xposed doesn't work), you will see a warning in the welcome screen and at the top of the module list.

Finally, there were some other minor improvements and fixes and new/updated translations.


Developers:
As a reminder, please keep the debug.log clean. It's only helpful if it's not as spammed as logcat. You should only use XposedBridge.log() for error messages and other unexpected situations. If everything runs fine, it shouldn't write anything to the log. If you really need to keep some logging in published builds, please use either logcat or make it an opt-in options (i.e. disabled by default and the user enables it if he runs into problems).

Apart from that, there was a little API change: https://github.com/rovo89/XposedBrid...9b5584d0396054
I assume that very few modules use the "extra" field to transfer information between beforeHookedMethod() and afterHookedMethod(). If you do, simply replace it by getExtra().

Layout inflation hooks now also work if the layout has been included in other layouts. That's actually a pretty tricky use-case for the "extra" parameter mentioned about (and other tricky technologies).

If for some reason you need to determine the active XposedBridge version in your module, you can use XposedBridge.XPOSED_BRIDGE_VERSION.

findMethodBestMatch() now also looks for protected and package-private methods in superclasses. That's mainly useful if you use the callMethod() or callStaticMethod() helper.

There is a new findFirstFieldByExactType() helper, which might be useful if you target an app protected with Proguard and know that there is just one field with that specific type. Don't use it because of laziness.
Tired of updating your mod for every new ROM release?
You want give users the possibility to combine different mods without creating tons of different files for all possible combinations?
Then have a look at my Xposed framework - modifications without APK changes!
The Following 184 Users Say Thank You to rovo89 For This Useful Post: [ Click to Expand ]
 
fajarep
Old
#6123  
Senior Member
Thanks Meter 454
Posts: 437
Join Date: Jan 2010
Location: Jakarta

 
DONATE TO ME
i just want a quick question...
is possible to make:

resparam.res.setReplacement("com.package", "drawable", "pngs", xxxxx);

where xxxxx point to an image in external sd card?

thanks
WAS DEVELOPER SWIFTEXTREME IN XDA
DEVELOPER : AKWAYAN(BLACKBERRY MESSENGER THEME ENGINE)
 
CoolApps
Old
#6124  
CoolApps's Avatar
Senior Member
Thanks Meter 597
Posts: 3,296
Join Date: May 2011

 
DONATE TO ME
@rovo89 Thanks for this awesome update.
Will it be still safe to update the framework to 2.4 even on Android 4.3?

Sent from my Nexus 4 using Tapatalk
 
rovo89
Old
#6125  
rovo89's Avatar
Recognized Developer - OP
Thanks Meter 11023
Posts: 1,906
Join Date: Jan 2012
Quote:
Originally Posted by fajarep View Post
i just want a quick question...
is possible to make:

resparam.res.setReplacement("com.package", "drawable", "pngs", xxxxx);

where xxxxx point to an image in external sd card?

thanks
Not exactly with that syntax, you need to implement a DrawableLoader:
https://github.com/rovo89/XposedBrid...cing-resources

Quote:
Originally Posted by CoolApps View Post
Will it be still safe to update the framework to 2.4 even on Android 4.3?
Yes, Xposed is still compatible down to Android 4.0.3.
Tired of updating your mod for every new ROM release?
You want give users the possibility to combine different mods without creating tons of different files for all possible combinations?
Then have a look at my Xposed framework - modifications without APK changes!
The Following 2 Users Say Thank You to rovo89 For This Useful Post: [ Click to Expand ]
 
ICuaI
Old
#6126  
ICuaI's Avatar
Senior Member
Thanks Meter 102
Posts: 308
Join Date: Apr 2013
After updating to 2.4 my phone didn't boot anymore. Had to restore a backup.
I'm on modded stock 4.1.2

via Razr I & Tapatalk 4
I was atheist until I realised I am God
Razr I -> infiniROM + AOSP-ThemeMod
Defy green -> CM11 by Quarx
Nexus 10 Purity + franco kernel
 
rovo89
Old
#6127  
rovo89's Avatar
Recognized Developer - OP
Thanks Meter 11023
Posts: 1,906
Join Date: Jan 2012
Quote:
Originally Posted by ICuaI View Post
After updating to 2.4 my phone didn't boot anymore. Had to restore a backup.
I'm on modded stock 4.1.2
Please send me a logcat of the bootloop with only the framework enabled (to make sure it's not caused by a module).
Tired of updating your mod for every new ROM release?
You want give users the possibility to combine different mods without creating tons of different files for all possible combinations?
Then have a look at my Xposed framework - modifications without APK changes!
The Following User Says Thank You to rovo89 For This Useful Post: [ Click to Expand ]
 
lukair1983
Old
#6128  
Senior Member
Thanks Meter 32
Posts: 157
Join Date: Jan 2012
Hey guys. Need a little help here with knoledge.

Is any of you aware of any way to make the volume rocker to control ONLY media volume at all times? I never change ringer or notification volumes, only media volume, and I hate that I need to (first) change the ringer volume if I accidently lower it, and (second) I have to play music first to start controling the media volume with a rocker.

Any solution for that? To be perfectly clear, I'm not looking for any widget, or app that will help me set those volumes. I'm interested only in this in connection with volume rocker.

It goes without a saying, that I still want a full control of other volumes (notification, ringer), but not with a rocker, only with a system app (settings), or external app.
 
rovo89
Old
#6129  
rovo89's Avatar
Recognized Developer - OP
Thanks Meter 11023
Posts: 1,906
Join Date: Jan 2012
Quote:
Originally Posted by lukair1983 View Post
Hey guys. Need a little help here with knoledge.

Is any of you aware of any way to make the volume rocker to control ONLY media volume at all times? I never change ringer or notification volumes, only media volume, and I hate that I need to (first) change the ringer volume if I accidently lower it, and (second) I have to play music first to start controling the media volume with a rocker.

Any solution for that? To be perfectly clear, I'm not looking for any widget, or app that will help me set those volumes. I'm interested only in this in connection with volume rocker.

It goes without a saying, that I still want a full control of other volumes (notification, ringer), but not with a rocker, only with a system app (settings), or external app.
As mentioned in big letters in the first post, module requests go to this thread please: http://forum.xda-developers.com/show....php?t=2327541
Tired of updating your mod for every new ROM release?
You want give users the possibility to combine different mods without creating tons of different files for all possible combinations?
Then have a look at my Xposed framework - modifications without APK changes!
The Following User Says Thank You to rovo89 For This Useful Post: [ Click to Expand ]
 
ICuaI
Old
#6130  
ICuaI's Avatar
Senior Member
Thanks Meter 102
Posts: 308
Join Date: Apr 2013
Quote:
Originally Posted by rovo89 View Post
Please send me a logcat of the bootloop with only the framework enabled (to make sure it's not caused by a module).
Will do it later. I'm out of time for now. Sorry

via Razr I & Tapatalk 4
I was atheist until I realised I am God
Razr I -> infiniROM + AOSP-ThemeMod
Defy green -> CM11 by Quarx
Nexus 10 Purity + franco kernel

Tags
don't ask questions about modules here!!!, framework, xposed
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes