[Q] CM7 + openvpn errors, what's wrong? - Nexus One Q&A, Help & Troubleshooting

Greetings, I'm running a fresh flash of CM7 (final) and I'm using the built-in VPN menus (not the openvpn build off of the market or it's settings apk).
Using either tap or tun (I've flipped the server to either), I get the following error from logcat:
Code:
read UDPv4 [ECONNREFUSED]: Connection refused (code=111)
I had this working in 6.1 and copied my same settings over, recreated the p12 file from the existing crts and keys (which I saved) and no dice. I even reverted to my nandroid backup of 6.1 to try it and make sure it wasn't blocked on the network or the server was bad and it would work so it's something in my 7.0 setup.
I saw that there was a bug for 7.0 submitted and it looks like support does exist in the stock CM kernel (I don't recall pushing tun.ko for 6.1, but it's very possible, I could revert one more time and check), so I don't think i need to recompile it (as noted here) specifically to acquire the module. Last, looking at the openvpn/CM wiki entry, I see an entry pertaining to this very error that seems to allude to a problem with the tun module (and I see an entry in the CM bug tracker about it as well), but when confronted with evidence that it's working in the file version, I'm again at a loss.
Any ideas (or any other information I should provide)?

Related

OpenVPN?

Has anyone figured out how to get OpenVPN working on a Motorola Milestone?
I tried to using the OpenVPN Installer and OpenVPN Settings apps from the Android Market but was not able to get it working.
Made some progress but still not working...
I've managed to install the OpenVPN binary to /system/bin.
Got a Motorola Milestone Tun.ko driver from, http://code.google.com/p/sbdtools/downloads/list. It's been copied to /system/lib/modules. I've been able to enable it using the insmod command in adb shell. Verified it was running with the lsmod command.
I've moved my openvpn .ovpn config files to my SD, /sdcard/openvpn folder. Started the OpenVPN Settings app, configured the tun and path settings.
Then I started my connection and was able to obtain an IP address.
BUT... still not able to surf to Youtube or other China blocked sites.
The upload & download stats appear to be not moving, even when I try to surf to one of these websites (up: 0.02kBps - down: 0.02 kBps).
Will continue at it for some more, but if anyone is able to help, that would be much appreciated.
dysa said:
I've managed to install the OpenVPN binary to /system/bin.
Got a Motorola Milestone Tun.ko driver from, http://code.google.com/p/sbdtools/downloads/list. It's been copied to /system/lib/modules. I've been able to enable it using the insmod command in adb shell. Verified it was running with the lsmod command.
I've moved my openvpn .ovpn config files to my SD, /sdcard/openvpn folder. Started the OpenVPN Settings app, configured the tun and path settings.
Then I started my connection and was able to obtain an IP address.
BUT... still not able to surf to Youtube or other China blocked sites.
The upload & download stats appear to be not moving, even when I try to surf to one of these websites (up: 0.02kBps - down: 0.02 kBps).
Will continue at it for some more, but if anyone is able to help, that would be much appreciated.
Click to expand...
Click to collapse
Hi, same here.. I am based in China and have done the steps you mentioned... I can connect to OpenVPN but there is no traffic.. I subscribe to 12vpn and called the helpdesk, they told me it could be due to DNS poisoning.. but really doubt that.. I got it working like once the first time but never did again...
@ pointdexler & dysa
I've also installed open VPN to system/bin on the droid 2 running 2.2.19. My config and certs have been transfered to /mnt/sdcard/openvpn and I've also setup my config in the open VPN GUI (available on the droid market) to point to this directory for my config.
After launching the app and attempting to connect, I get an error message that the command was not successful (the error is a bit more verbose than that).
I did find another app on Droid market that got me a bit closer to connecting called openVPN settings. The error output on this app is much more verbose and aids troubleshooting better. I was able to workout all of the application problems, but my issue now is with the tun.ko module. It appears that the downloadable modules online are for 2.1 and prior as none seem to work with 2.2. I have the module copied to /system/lib/modules and the app (openvpn settings) has a feature that loads the module (either by modprobe or insmod, you can choose). My problem now is that the tun.ko module seems to be wrong as I keep getting the error "Fatal: cannot allocate tun/tap dev dynamically."
Have either of you come accross this same issue?
Hi, I have running OpenVPN without problems. I use OpenVPN Settings from market, tun.ko on /sdcard and openvpn binary in /system/xbin. Make symlink ln -s /system/xbin /system/xbin/bb. Both files are in this archive http://www.android-hilfe.de/attachm...openvpn-auf-dem-milestone-tun_und_openvpn.zip. Working openvpn.ovpn + CA files in /sdcard/openvpn. In OpenVPN Settings set up Load module using - insmod and Path to module /sdcard/tun.ko. And OpenVPN is working. If not, try run from konsole : insmod /sdcard/tun.ko
Motorola Light 2.1 ROM + JIT
On CyanogenMod 6 for Milestone you need only tun.ko. No openvpn binary, no create symlink. In OpenVPN Settings only set up insmod and path to tun.ko.
(and sorry for my english )
OpenVPN
No worries ZS-Man, your English is much better than some people who are born speaking the language.
I unfortunately already tried loading the kernel module by command line with root (#) access and it gives me this error message:
insmod: init_module '/data/tun2.ko' failed (Exec format error)
I've tried many different versions of the tun.ko file available online. None seem to work with 2.2.20 OS (2.6.32 kernel)
Android version (2.1 or 2.2) is not important, only tun.ko must be compiled from same sources as kernel. You must search module for milestone2, or compile it by yourself from milestone2 kernel sources. Another nice app is Tunneldroid , it has log viewer - good for debugging openvpn connection.
help help help vpn issue
iam from a country that google does not support the market within
i installed the vpn and all works great market apps every thing but 3days later
the market wont open looks like the ip address from us has been blocked(internet sharing device located in us) and i was unable to open market again any way that i can chage the ip or howoften the company changes the ip address (cause its the same every time i connect vpn) or is there a way to use the vpn settings with another server provider than the freeopenvpn.com
where i can download another zip file with configuration to another server
help me please i ll die

Steps to make OpenVPN Work

Here are the steps I took to make OpenVPN work. You HAVE to be rooted to make this work.
1) I am going to assume you already know how to configure the firewall side and export a legitmate config.
2) I am running TnT 4.2.2 (great ROM IMHO)
http://forum.xda-developers.com/showthread.php?t=842004
3) I had to run Clemsyn's kernel to get the tunnel to nail up. I don't beleive the stock kernel or any of the TnT mods will fix that.
http://forum.xda-developers.com/showthread.php?t=895825
4) Download from market OpenVPN Installer AND OpenVPN Settings.
5) Run OpenVPN Installer first. I selected /system/xbin option on all screens.
6) Make a folder /sdcard/openvpn. Copy your vpnconfigname.ovpn and vpnconfig.p12 files into it.
7) Run OpenVPN Settings. I unselected "Load tun kernel module" option, the "Fix HTC Routes" and (optional) "Show Ads". I did not alter the "TUN module settings in any manner.
No guarantees, but this worked for me without any fiddling.
-D
I'm not being so lucky - I installed Clemsyn's kernel and the same OpenVPN settings / key that I've installed on my Galaxy S so I know they're functional.
It connects and auth's, creates the TUN device, but shows "Connect to (myserver) as" and netcfg always shows:
tun0 DOWN 0.0.0.0 0.0.0.0 0x00001090
It never brings up the tunnel IP on it.
Well I got it working.
I had to install BusyBox from the market - the "FileBox" versions apparently installed in my rom wouldn't do it.
Then I created /system/xbin/bb/route and /system/xbin/bb/ifconfig linked to the /system/xbin/... versions installed by BusyBox.
I even downloaded and installed the statically linked executable from https://github.com/fries/android-external-openvpn/downloads and thought that fixed it, but turned out the MD5 of that and the market one were identical.
*** EDIT ***
Actually the OpenVPN I installed WAS different from the Market and appears to be the actual fix for me. I must have checked the wrong file the first time with md5sum because I double checked the backup I copied to the desktop and it was definitely different.

[BUILD] **Complete FroYo Bundle** FRX07.1 - Maintenance Release

Figured you TOPA folk needed your own thread... At least to track TOPA-specific issues!
FRX07.1 is here!!
This is a maintenance release - basically taking the newest components to make a completely up-to-date (as of Sept. 1).
Quite a lot has changed since FRX06 - the install process hasn't really, but be sure to read the changelog in the next post and the caveats in post #3!
<<<This is a link to the... FAQ Click it!!>>>​
I have created a complete bundle of FroYo with a stable kernel from GIT (August 19 / 1348), and rootfs from GIT (Sept. 2).
Please, feel free to DONATE to the XDAndroid project!
Every little bit helps!
Directions:
1. Download the full bundle (zip). (Updated September 1 2011)
If instead you just want the system.ext2 (zip) (Updated July 15 2011) file by itself... Don't download this if you're not sure! Grab the full bundle!
2. Extract it. You’ll see a folder, FRX07.1, copy its contents to the root of your SD card. If you want to run Android from a folder instead of all the files on the root of the card, follow the steps below.
3. Go into the STARTUPS folder. Grab the appropriate startup.txt for your device (if you don't know what device you have, you should read the FAQ), and move it to the root of the card (or where you run haret.exe from. If you want to change the location of the build, put a rel_path= statement in the cmdline section of the startup.txt. Mine is located two folders deep on the SD, so my rel_path=Androids/TP2Ref)
4. Screen calibration - you have three choices:
Re-use an old ts-calibration file if you have it and you know it's good.
Download the ts-calibration.zip file and extract it to where you put the rest of the files (root of SD or in a folder - make sure it all stays together!)
Manually calibrate - boot with no ts-calibration file and watch the boot process - you'll be asked to hit 5 points to calibrate the screen. If you have issues calibrating, try an older kernel (1225 works well) Once you have the calibration file hold on to it (make 15 copies if it's a good one ), reboot & go back to the newest kernel!
6. Run haret.exe.. Profit!
Let it settle out on the first boot. Many have reported they had to reboot basically because it was so slow - if you let it sit for about 10 mins so the media scanner can go thru everything, etc. it will be much more pleasurable experience. If you want adb in and watch the processes via top, you'll see why the phone seems so slow - there's lots of background processes cranking because this is the first boot .
Troubleshooting:
Please read the... FAQ
If you have any issues with the kernel, feel free to change it:
There are some devices that are having issues with the newest kernels. Please see the kernel autobuild service to get archived kernels. Once you download a replacement kernel, go to where you run haret.exe from - remove your old zImage/modules-xxxxx.tar.gz. Take the new zImage/modules-xxxxx.tar.gz and replace the old ones, same folder - where you run haret.exe from. Make sure the ‘zImage’ is named just that. Do not rename the modules file, do not extract it - should be in .tar.gz format.
See Incremental Updates for more information on updating the kernel and other components.
Random issues can often be solved by forcing the system to create a new data.img. If you're worried about losing data (all user data is stored in the data.img!!), Titanium Backup works quite well. If you wish, you can rename the data.img to something else, and let the system create a new one - just to see if it resolves your problem.
Similarly, if you wish try formatting your SD card - I prefer to use the HP Tool - do a full format, FAT32.
Even though this build is considered fairly stable, you are more than likely going to run into issues. The next post will address issues particular to this build - PLEASE READ THESE before asking questions! Feel free to post questions in this thread, I will do my best to address them. Big thanks to stinebd for releasing the system image, and of course the other developers for their hard work on making these kernels available.
stinebd's Changelog:​
stinebd said:
Here’s a new release for you, folks. This is a major release with a ton of changes, new features, and fixes. Our friend hyc/highlandsun did most of the heavy lifting for this release. Highlights include a rewritten RIL with support for world phones and greatly improved CDMA support; fixes for the media codecs; fixes for MMS on Sprint; increased security with the Superuser app.
A list of changes is included below. The FRX07 system image is available for download now, and will require the use of a new rootfs image, also available now. Additionally, we have a new bundle containing everything needed to enjoy a full FRX07 system.
Note: Due to the incredibly long list of changes, this is a somewhat condensed, terse changelog describing only the overall scope of the changes.
FRX07:
frameworks/base:
Major frameworks changes for CDMA/GSM dual-mode worldphone support. (hyc)
Fixes for data connection handling to improve startup time. (hyc)
Fixes for wifi handling to avoid issues on hanged drivers. (hyc)
Stagefreight (media codecs) fixes. (hyc/viruscrazy)
Fixes for Sprint’s wonky MMS markup structure. (hyc)
Fix MediaScanner not finding audio files (including ringtones) in system.ext2
hardware/libhardware_legacy:
Minor GPS driver fixes. (Alex[sp3dev])
Rename wifi interfaces to wlan0 on all devices (hyc)
hardware/xdandroid-ril: Major RIL refactoring for improved performance on all devices, and added CDMA/GSM dual-mode worldphone support. (hyc)
packages/apps/Gallery3D: Switched back to Gallery3D as the gallery app (closes bug #111)
packages/apps/Mms: Fixes for Sprint’s wonky MMS markup structure. (hyc)
packages/apps/Phone: Fixes for CDMA/GSM dual-mode worldphone support. (hyc)
packages/apps/Superuser: Added the Superuser package for authorizing su privileges. This, along with our signed builds, provides greatly increased security for the end user (mostly against malicious apps from the Market).
system/extras/su: Added as a dependency for the Superuser package
vendor/qcom/android-open: Include missing stagefright codec symbols. (hyc/viruscrazy)
To coincide with the FRX07 system image, the following rootfs changes have been made:
init.froyo.rc modifications...
Adjust wpa_supplicant service for the new abstraction provided by libhardware_legacy, as well as interface rename
Abstract the hciattach service to provide bluetooth support on both chipsets
Rename wifi interface to wlan0 on all devices
apns-conf.xml updated
keymaps completely reorganized, and RHOD end-call key has been remapped to be the Home key in Android.
default.prop: set ro.secure=1 to lock down the adb shell - su can be used with the Superuser app to authorize root access in adb if needed.
Click to expand...
Click to collapse
Layman's Changelog​
(As in, the changelog I wrote )​
FRX07.1 Changelog:
RHOD - all buttons on the front no longer wake the device. Only the power button wakes the device now.
Updated to the newest RIL
hyc's modified libs for video now baked in - *most* HQ YouTube videos (and other HQ videos) should finally work!
RHOD & TOPA - Userland (Android) now controls the LED by default now. If you need to debug sleep, you will have to change the behavior manually. See Detule's post on this topic.
Facebook sync should now work, out-of-box.
FRX07 Changelog:
Updated RIL (thanks hyc!) - this covers many different bugs that were in the old RIL - I'm only going to cover the major ones...
CDMA now works correctly (for the most part). force_cdma (and north_am_dialing) is now deprecated (not needed/ignored!)
You can boot with a SIM in on a CDMA device and choose your GSM or CDMA on the fly under Settings.
Location based on towers now works on CDMA.
1xRTT now displays correctly, but I never seem to get EVDO Rev.a... I always get 0. This is represented by a 3g icon, as this is what the Android framework provides.
Full MMS support! Please see this page for configuration instructions. Will need help fleshing out the list of carriers folks!
Spotty service, switching towers, etc should no longer cause the dreaded SoD (Sleep of Death) condition!
(Basic audio) 3.5mm support for RHOD400/500
Droidwall works out of the box now
Keyboard backlight now fades in/out
Gallery3D back in! Picasa Web Sync comes with it
A couple new apps added to AndroidApps folder:
rpierce99's app GetLogs
Titanium Backup
Caveats:​
BT - works! But audio doesn't route. See this thread if you're feeling adventurous and want to play with/don't mind using some unstable/incomplete code...
After booting, TOPA seems to have a crippling issue where if the first call is inbound, the phone reboots. So I guess after booting make an outbound call and everything is fine? Someone please confirm...
That audio routing thread is in the RHOD section, and I've only tested it on a RHOD - but AFAIK it should work on other devices. Let me know.
Whew, here you go TOPA folk!
I figured you guys needed a thread for this, if only to track issues that are TOPA-specific. Let me know what I need to add in the caveat section for TOPA! Also let me know if ts-calibration file is good or not .
Also, if you guys already have FRX07 running/working... there's nothing new here. Mainly using this thread as a place for newbie's to go and you experienced folk to help me track issues again for new users!
I have a small problem,when I run haret it comes to animated logo and then my phone go to rebote?
Every time when is starting FRX07 the mobile reboot and start's windows?. Where is the problem?...
kujrv1 said:
Every time when is starting FRX07 the mobile reboot and start's windows?. Where is the problem?...
Click to expand...
Click to collapse
Yes,that's right...
And solution...?
Use the latest kernel and rootfs, not the ones bundled with frx07.
kujrv1 said:
And solution...?
Click to expand...
Click to collapse
kujrv1 said:
Every time when is starting FRX07 the mobile reboot and start's windows?. Where is the problem?...
Click to expand...
Click to collapse
hb5 said:
I have a small problem,when I run haret it comes to animated logo and then my phone go to rebote?
Click to expand...
Click to collapse
Sorry guys grab the latest kernel. I just put that in the caveat list, thanks.
I put the last kernel and i have the same issue. Reboot on Animated logo
I too have the reboot issue on animated start screen. Latest kernel used.
Any suggestions??
last three kernels didn't work on my topa100
it runs haret and then reboot the device
Will you guy's please make an effort and read other posts on this topic instead of clogging up the forum.
Everything you need to know has been posted already, multiple times.
Zaknahhas said:
last three kernels didn't work on my topa100
it runs haret and then reboot the device
Click to expand...
Click to collapse
gtti148 said:
I too have the reboot issue on animated start screen. Latest kernel used.
Any suggestions??
Click to expand...
Click to collapse
kujrv1 said:
I put the last kernel and i have the same issue. Reboot on Animated logo
Click to expand...
Click to collapse
Wait...
zooster said:
Use the latest kernel and rootfs, not the ones bundled with frx07.
Click to expand...
Click to collapse
Seems to make me think it's working on the newest rootfs and kernel - is this not true?
arrrghhh said:
Seems to make me think it's working on the newest rootfs and kernel - is this not true?
Click to expand...
Click to collapse
I've been switching my TOPA to FRX07 + .27 + rootfs (all selfbuilt) yesterday, and it boots up fine since the latest kernel fix.
So anything reported not working with latest autobuild kernel implies user error for me if it resets during bootanimation.
arrrghhh, thanks for taking care of the topa threads! So I can concentrate on not getting anything done for .35
Michael
arrrghhh said:
Wait...
Seems to make me think it's working on the newest rootfs and kernel - is this not true?
Click to expand...
Click to collapse
Topaz can boot with last kernel, with htc-msm-linux @ 20110718_223029 it doesn't.
zooster said:
Topaz can boot with last kernel, with htc-msm-linux @ 20110718_223029 it doesn't.
Click to expand...
Click to collapse
20110718_223029 is the latest kernel tho... are you saying emwe is lying? .
emwe - perhaps you should be like us heathens and try to run the pre-compiled binaries? I know, blasphemy...
Hi to all, is 2 day frx7 work in my topaz all work bt, wifi, 3g, lokscreen, rotate screen (no good) photo, opera, sms, gps an battery when is 10% work 6 hour, is speed. i like use android. thanks

[HELP_NEEDED]Kitkat 4.4 for Galaxy Tab

Hi Fellow devs,
As you may know, I have been compiling Android 4.0-4.3-based ROMs for Galaxy Tab 10.1. Currently, I am trying to get kitkat 4.4 to work on our devices.
Although I can compile a ROM with only minor difficulties, it already fails when flashing a ROM. It errors with the following message: "set_metadata_recursive: some changes failed". I think this is related to the new way of setting permissions in KK4.4.
If I look in the recovery.log after flashing, I see this:
minzip: Extracted 1197 file(s)
ApplyParsedPerms: removexattr of /system/addon.d/50-hosts.sh to 0 failed: Operation not supported on transport endpoint
script aborted: set_metadata_recursive: some changes failed
set_metadata_recursive: some changes failed
E:Error executing updater binary in zip
I have no idea whether the problem is that the recovery needs an update, or the updater binary is not yet finished, or that the updater script needs to be adjusted.
Anyone also working on this?
Hello, although I'm not a rom dev, I think I found the problem and a possible solution.
http://forum.xda-developers.com/showthread.php?p=47212560#post47212560
Here, I hope it's of some use to you. Keep up the good, quality work!
miztahbeezy said:
Hello, although I'm not a rom dev, I think I found the problem and a possible solution.
http://forum.xda-developers.com/showthread.php?p=47212560#post47212560
Here, I hope it's of some use to you. Keep up the good, quality work!
Click to expand...
Click to collapse
Thanks. I guess it is related to recovery then, with a need for an updated recovery. I guess that the lack of proper selinux support may also contribute to the problem....
OK, I tried to build both cwm & twrp based on latest kk source code. Recovery image is always over 5.5MB, which is way too large for our device, as our recovery partition is only 5MB. Even when trying to strip recovery & recompile kernel with maximum compression, I can't get to 5MB.
So then I tried a different route, I put the old permission code from an updater-script from jb4.3 in a kk4.4 ROM. Flashing such a ROM works, but it hangs on the bootanimation. Logcat won't connect, so I couldn't find the source of the problem.
Verstuurd van mijn Nexus 5
Go Kasper! ben trots op je! (proud of you!)
kasper_h said:
OK, I tried to build both cwm & twrp based on latest kk source code. Recovery image is always over 5.5MB, which is way too large for our device, as our recovery partition is only 5MB. Even when trying to strip recovery & recompile kernel with maximum compression, I can't get to 5MB.
So then I tried a different route, I put the old permission code from an updater-script from jb4.3 in a kk4.4 ROM. Flashing such a ROM works, but it hangs on the bootanimation. Logcat won't connect, so I couldn't find the source of the problem.
Verstuurd van mijn Nexus 5
Click to expand...
Click to collapse
kasper_h said:
Hi Fellow devs,
As you may know, I have been compiling Android 4.0-4.3-based ROMs for Galaxy Tab 10.1. Currently, I am trying to get kitkat 4.4 to work on our devices.
Although I can compile a ROM with only minor difficulties, it already fails when flashing a ROM. It errors with the following message: "set_metadata_recursive: some changes failed". I think this is related to the new way of setting permissions in KK4.4.
If I look in the recovery.log after flashing, I see this:
minzip: Extracted 1197 file(s)
ApplyParsedPerms: removexattr of /system/addon.d/50-hosts.sh to 0 failed: Operation not supported on transport endpoint
script aborted: set_metadata_recursive: some changes failed
set_metadata_recursive: some changes failed
E:Error executing updater binary in zip
I have no idea whether the problem is that the recovery needs an update, or the updater binary is not yet finished, or that the updater script needs to be adjusted.
Anyone also working on this?
Click to expand...
Click to collapse
Just sent a message to pershoot on gtalk or whatever its supposed to be called, I'll let you know if he says he'll take a look at it
update: he's hasn't been working on the sgt 10.1 in a long time, but if he get's some free time, he might look at it.
good luck either way, you seem to have no trouble pumping out good stuff, I'm sure you'll get it figured out
I'm no developer, but I did some Google search about the error. Most people said that latest recovery is needed, but there's another guy with a different point of view: http://stackoverflow.com/questions/19860479/set-metadata-recursive-failing-on-android-install
Good luck getting KitKat to boot on our tabs!
Sent from my GT-P7500 using Tapatalk HD
eushaun99 said:
I'm no developer, but I did some Google search about the error. Most people said that latest recovery is needed, but there's another guy with a different point of view: http://stackoverflow.com/questions/19860479/set-metadata-recursive-failing-on-android-install
Good luck getting KitKat to boot on our tabs!
Sent from my GT-P7500 using Tapatalk HD
Click to expand...
Click to collapse
Thanks, any help is appreciated!
I actually got recovery to shrink enough to fit in the recovery partition. It just won't boot
The struggle continues
Well then let's just hope that pershoot finds some time to help us out.
Sent from my GT-P7500 using Tapatalk HD
kasper_h said:
Thanks, any help is appreciated!
I actually got recovery to shrink enough to fit in the recovery partition. It just won't boot
The struggle continues
Click to expand...
Click to collapse
Could you please share the recovery?
I found this thing ro.build.selinux=1 in the build.prop. Is there someway to change this to 0 and removing all the set_metadata_recursive lines from the updater-script? Doesn't work
Here's what I've tried so far: I followed my android 4.3 guide but it needs some extras. There's 1 header line from libnbaio/audiostreamoutsink that needs to be removed. The error message tells you exactly which one. I also had to comment out 2 lines in surfaceflinger to prevent a very annoying crash I got when I first did android 4.3. There are a few other random lines from audioflinger that have to be removed but the error messages are pretty specific on which ones those are. I also cheated the recovery's gr_text that it said was missing and added in a dummy function according to the header since I never planned to use the recovery and just put that in to get it to compile. I can't get past a metadata error in cwm recovery from pershoot. My TWRP refuses to install the zip at all.
AAccount said:
Could you please share the recovery?
I found this thing ro.build.selinux=1 in the build.prop. Is there someway to change this to 0 and removing all the set_metadata_recursive lines from the updater-script? Doesn't work
Here's what I've tried so far: I followed my android 4.3 guide but it needs some extras. There's 1 header line from libnbaio/audiostreamoutsink that needs to be removed. The error message tells you exactly which one. I also had to comment out 2 lines in surfaceflinger to prevent a very annoying crash I got when I first did android 4.3. There are a few other random lines from audioflinger that have to be removed but the error messages are pretty specific on which ones those are. I also cheated the recovery's gr_text that it said was missing and added in a dummy function according to the header since I never planned to use the recovery and just put that in to get it to compile. I can't get past a metadata error in cwm recovery from pershoot. My TWRP refuses to install the zip at all.
Click to expand...
Click to collapse
Hi AAccount, thanks for joining in! I also talked to matt604 through gtalk last night. Glad to see I am not alone
I am trying to compile OMNI in stead of CM. Advantage is that it does not require any changes to the source code to compile for p4wifi. Works fine for 4.3 as well.
Anyway. I think we have two options: give proper SELinux support, which means making a SE policy for our device. Or we have to completely get rid of it. Because I think the second is simpler, I chose that route. What I did:
-Add the ro.boot.selinux=disabled prop (maybe we should try ro.build.selinux=0 as well!)
-I removed all the SELinux patches from the kernel (so essentially go back to the 4.2 kernel). This kernel boot fine on 4.3
-Manually swap the set_metadata lines in the updater script by set_perm lines from a 4.3 script (I compared the two and besides the change from set_prop to set_metadata, the permissions set are the same).
This time the ROM booted. But when I saw the launcher for 0.1 sec, I got a "Launcher3 has unexpectedly stopped" error. And with the current security feature for adb, you can't get a logcat on a fresh ROM boot, as you need to approve the connection first, which is impossible due to the continuous FC.
I then also tried adding Apex Launcher (confirmed working on KK on my Nexus 5) - first added to system/app and then moved to /data/app. Both times didn't boot at all.
Removed Launcher3 with Apex in /system/app. Didn't boot.
But at least I saw kitkat running for 0.1sec on my tab, so I feel it should be possible!
My next step:
-Add the HAVE_SELINUX := false flags to BoardConfigCommon
-Add ro.build.selinux=0 to p4-common.mk
Samsung have updated their several devices which latest firmware of Android which are old but popular as new. Now the devices are on an end of its update life cycle on Jelly Bean. But the upcoming Google's Android 4.4 KitKat rise an hope for the older Galaxy phone as the KitKat is rumored to feature an improved Linux kernel supporting lower memory devices.
Here is the list of nominated Galaxy Devices for Android 4.4 KitKat
Galaxy Grand and Grand DUOS
Galaxy Ace II
Galaxy S III mini
Galaxy Beam
Galaxy Express
Galaxy S Advance
Galaxy S II and S II Plus
Galaxy Premier
Galaxy Note I
Galaxy Young and Young DUOS
Galaxy Fame
Galaxy X Cover 2
Galaxy Tabs
Click to expand...
Click to collapse
I think it's a little obious that our revoceries are not compatible anymore with android 4.4 since there changed alot in recoveries... So.. Older versions of CWM won’t work, nor will TWRP. I think we will need at least cwm 6.0.4.3 to be compatible with kitkat 4.4, our latest recovery is and older build (cwm 6.0.3.6) which is ment to be for android 4.2.2
Edit:
Looks like it's also because of selinux, and you need a newer version of TWRP or cwm as i said. Right now in the Omni 4.4 manifest it actually has the AOSP recovery so you'll wanna change that to Omni 's TWRP on a local manifest. Or at least you need a recovery with proper fstab because the new fstab format in Android 4.3+ is not used by TWRP yet. Beyond that it depends on your BoardConfig.mk whether the recovery is flash able, if you configured it ok then yes!
kasper_h said:
Hi AAccount, thanks for joining in! I also talked to matt604 through gtalk last night. Glad to see I am not alone
I am trying to compile OMNI in stead of CM. Advantage is that it does not require any changes to the source code to compile for p4wifi. Works fine for 4.3 as well.
Anyway. I think we have two options: give proper SELinux support, which means making a SE policy for our device. Or we have to completely get rid of it. Because I think the second is simpler, I chose that route. What I did:
-Add the ro.boot.selinux=disabled prop (maybe we should try ro.build.selinux=0 as well!)
-I removed all the SELinux patches from the kernel (so essentially go back to the 4.2 kernel). This kernel boot fine on 4.3
-Manually swap the set_metadata lines in the updater script by set_perm lines from a 4.3 script (I compared the two and besides the change from set_prop to set_metadata, the permissions set are the same).
This time the ROM booted. But when I saw the launcher for 0.1 sec, I got a "Launcher3 has unexpectedly stopped" error. And with the current security feature for adb, you can't get a logcat on a fresh ROM boot, as you need to approve the connection first, which is impossible due to the continuous FC.
I then also tried adding Apex Launcher (confirmed working on KK on my Nexus 5) - first added to system/app and then moved to /data/app. Both times didn't boot at all.
Removed Launcher3 with Apex in /system/app. Didn't boot.
But at least I saw kitkat running for 0.1sec on my tab, so I feel it should be possible!
My next step:
-Add the HAVE_SELINUX := false flags to BoardConfigCommon
-Add ro.build.selinux=0 to p4-common.mk
Click to expand...
Click to collapse
Perhaps this might be useful to you:
http://forum.xda-developers.com/showthread.php?t=2457427
Its a sort of work around to pre authorise the ADB connection to your computer using the ADB authentication keys from a working (i.e. 4.3 ROM) build.
It sounds like a very long work around though. Also don't want to sound insulting but did you remembered to put the appropriate mount and install lines for Apex while in /data/app into the updater script!
scaryshark said:
Perhaps this might be useful to you:
http://forum.xda-developers.com/showthread.php?t=2457427
Its a sort of work around to pre authorise the ADB connection to your computer using the ADB authentication keys from a working (i.e. 4.3 ROM) build.
It sounds like a very long work around though. Also don't want to sound insulting but did you remembered to put the appropriate mount and install lines for Apex while in /data/app into the updater script!
Click to expand...
Click to collapse
Thanks.
Don't worry, I am not easily insulted I even checked through a file manager whether apex ended up in the right spot. I didn't check permission though, so that may have been wrong, but I am almost sure I checked that one well...
Thanks kasper_h for your hard work. I thought HAVE_SELINUX boardconfig flag was only for android 4.2. I read that here http://selinuxproject.org/page/SEAndroid#Merge_Status. Another thing i t tried was changing the ro.selinux flag in 4.3.1 to see if it made any difference in the about device selinux status page. Setting that flag to disabled or 0 didn't effect that. Ill try omni rom next but i have limited time this weekend though. I agree a removal would be ideal. I disable it on my desktop and laptop right away after installing fedora.
Sent from my GT-P7510 using xda app-developers app
I now managed to get it to boot. But I get fatal errors in AUDIO_SERVICE, crashing the system. I had something similar when trying to compile AOSP in the past. Maybe CM11 is a better choice than OMNI...
I'll keep on trying.
But at least, getting rid of SELinux seems to be thé way to go.
So the xda app messed up my post big time. What I wanted to say was that by using a non selinux kernel, setting the selinux build.prop flag and changing the install script it boots? Yesterday I tried doing the build.prop edit on my cm11 rom and it didn't boot. Very interesting suggestion about the kernel though.
--------------------------------------------Added-----------------------------------------------------------------------
I tried the 3 things you did on my cm11 rom from yesterday:
-Add the ro.boot.selinux=disabled prop (maybe we should try ro.build.selinux=0 as well!)
-I removed all the SELinux patches from the kernel (so essentially go back to the 4.2 kernel). This kernel boot fine on 4.3
-Manually swap the set_metadata lines in the updater script by set_perm lines from a 4.3 script (I compared the two and besides the change from set_prop to set_metadata, the permissions set are the same).
and I can't get past the "samsung galaxy tab 10.1" screen. Note I did these things after the rom was compiled since build.prop can be edited from the update zip and I just flashed an older A1 kernel with no selinux.
kasper_h said:
I now managed to get it to boot. But I get fatal errors in AUDIO_SERVICE, crashing the system. I had something similar when trying to compile AOSP in the past. Maybe CM11 is a better choice than OMNI...
I'll keep on trying.
But at least, getting rid of SELinux seems to be thé way to go.
Click to expand...
Click to collapse
Finally downloaded the omnirom source. A possible cause of this is becasue omni rom has no ICS_AUDIO_BLOB flag in its source at all. You'll probably need to take a working android 4.3 source, do a "grep ICS_AUDIO_BLOB -r ." on the source and find every place in the working source this flag is defined and then transfer it over to omni rom. Yes it sounds like a pain in the butt.
AAccount said:
Finally downloaded the omnirom source. A possible cause of this is becasue omni rom has no ICS_AUDIO_BLOB flag in its source at all. You'll probably need to take a working android 4.3 source, do a "grep ICS_AUDIO_BLOB -r ." on the source and find every place in the working source this flag is defined and then transfer it over to omni rom. Yes it sounds like a pain in the butt.
Click to expand...
Click to collapse
Maybe it is easier to swap all OMNI project that contain ICS_AUDIO_BLOB in CM for the CM-code
With regard to the kernel, you can't flash a 4.2 kernel on 4.4, as there are ramdisk changes causing it to not boot. I can send you a kernel that will boot on 4.4 that you could try to flash on top of CM11....
I will try a kernel on CM11 and then compare the ramdisk to OMNI to see if that gives a hint why it won't boot...
kasper_h said:
Maybe it is easier to swap all OMNI project that contain ICS_AUDIO_BLOB in CM for the CM-code
With regard to the kernel, you can't flash a 4.2 kernel on 4.4, as there are ramdisk changes causing it to not boot. I can send you a kernel that will boot on 4.4 that you could try to flash on top of CM11....
I will try a kernel on CM11 and then compare the ramdisk to OMNI to see if that gives a hint why it won't boot...
Click to expand...
Click to collapse
What are those ramdisk changes? That would probably help for the rom not booting.

[OFFICIAL] Xposed for Lollipop/Marshmallow/Nougat/Oreo [v90-beta3, 2018/01/29]

Note: This thread is here mostly for historical purposes. While Xposed is supported in various forms [EdXposed and LSPosed], developent on the Xposed primary app has completed. Xposed framework compatible modules are still in active development and supported by their respective developers.
Click to expand...
Click to collapse
This is the announcement thread for Xposed for Lollipop, Marshmallow, Nougat and Oreo. I'll post all relevant news here, so subscribe to it if you'd like to stay informed.
You can find a list with Q&A about Lollipop support on the XDA Portal. Please read it, you will find many answers there. Also see this article with much background information on new stuff for Nougat.
Please install it only if you're willing to take the risk of boot loops. Just because it's working fine and stable for me doesn't mean it will work for everyone the same way.
Downloads:
XposedInstaller_*.apk from this thread: Must be installed to manage installed modules, the framework won't work without it.
xposed*.zip from https://dl-xda.xposed.info/framework/: Must be flashed with a custom recovery (e.g. TWRP) to install the framework.
SDK21 is Android 5.0 (Lollipop), SDK22 is Android 5.1 (also Lollipop) and SDK23 is Android 6.0 (Marshmallow).
For Nougat, SDK24 is Android 7.0 and SDK25 is Android 7.1.
For Oreo, SDK26 is Android 8.0 and SDK27 is Android 8.1.
I only support the latest Xposed version per Android release!
xposed-uninstaller*.zip from https://dl-xda.xposed.info/framework/: Can be flashed with a custom recovery (e.g. TWRP) to uninstall the framework.
The small .asc files are GPG signatures of the .zip files. You can verify them against this key (fingerprint: 0DC8 2B3E B1C4 6D48 33B4 C434 E82F 0871 7235 F333). That's actually the master key, the files are signed with subkey 852109AA.
Known issues:
- Before Nougat: Bootloops on Samsung stock ROMs. That's due to Samsung's changes to ART. There are unofficial builds that work around this by deodexing and adjusting the ROM.
- Sony seems to have shipped some ROMs with corrupted services.odex (the embedded .dex is invalid). Those ROMs will bootloop with a "Fatal signal 6" or "No pending exception expected: java.lang.ArrayIndexOutOfBoundsException" error, which I unfortunately cannot fix (see https://github.com/rovo89/Xposed/issues/64)
- Dell ships (at least) their Venue 8 7840 with a non-standard version of ART that is somewhere between 5.1 and 6.0 which obviously isn't supported by Xposed (see https://github.com/rovo89/Xposed/issues/77)
For discussions, please use the discussion threads (Lollipop / Marshmallow / Nougat / Oreo) or another matching one in this subforum.
As you have probably noticed, more than 2,000 posts have been made in the original thread about Xposed on Lollipop. I'm really overhelmed by all your feedback! Also many thanks to those people who have donated already, it's great to see how much Xposed means to you.
Although so much discussion and helping each other is great, it's hard for anyone (including me) to follow. Hence, I have decided to create this thread were only I (and possibly the XDA moderators) will give some updates. This will make it easier for me to inform you about the current status, bugs I know about and so on. Feel free to subscribe to it or simply check from time to time. I'm not sure yet about the best way for me to get a consolidated overview of existing issues that have been confirmed by several people and ideally already have a sufficient information (like logcats, clear description of the error, ...) attached, but I hope we can work something out.
Current status (Feb 19):
The most important issue seems to be the incompatibility with Samsung stock ROMs, especially because it's leading to boot loops. I have been working hard on fixing this in the days since the release, however it's not just a single spot that needs fixing. Thanks to GermainZ for testing and providing good log files! So far, I have detected the following issues:
- Enhanced .oat file format: Samsung has added a "TypeLookupTable", probably for performance reasons. The table itself will be ignored by Xposed, but it also means that the file format is slightly different. I have finally understood what they have done and added some logic to skip the referenes to this table.
- Different size of the String class: They have added a clear() method, which is unusual as strings are usually immutable. As this class is one of few that have special support in native code, I had to add one entry to the virtual table of the class.
- Additional fields in DexCache class: Offsets to some fields are different due to this and need to be handled in native code (as this another central class with native parts directly implemented in ART).
- Verifier rejects ViewDebug class: Doesn't seem to be overly critical to me, yet to be tested whether it's working fine with original libraries.
- Implementation missing for some native methods: Some methods in the reflection classes have been implemented in native code instead of Java. This means I will have to implement them as well.
The changes done by Samsung are bigger than I expected, especially given that ART is very complex and mostly undocumented. Anyway, I still think that once these issues have been overcome, it's better to replace the libaries than trying to manipulate data structures and behavior from "outside" (app_process). Think about it: If they have done such big changes, it's very likely that offsets in these data structures are different from AOSP and would need special handling as well.
It would of course be helpful to have an uninstaller ZIP in case you run into a bootloop. I didn't have time for that yet, but maybe someone can build an initial version that basically reverses the steps of the installer ZIP. For the ART libraries, that should be rather easy. You might want to stay away from moving app_process32 back in case you have SuperSU installed. It will need a special procedure to ensure you don't break either part or even your ROM.
There are other issues for sure, for example it seems that some methods cannot be hooked. That's something that needs more investigation, but I would like to fix the more critical issue like the ones for Samsung first.
That said, I won't be able to work on Xposed for the next days, definitely not before Monday. Keep in mind that this isn't my fulltime job and that an alpha phase might take some time. It would be illusionary to assume that we reach a stable state after a few days, with all the changes that have been done.
I have just uploaded alpha2. It fixes several issues:
java.io.IOException: Invalid argument while reading /data/data/de.robv.android.xposed.installer/conf/modules.list (sometimes it worked fine after a soft reboot), see https://github.com/rovo89/Xposed/issues/25
ClassNotFoundException for system services (e.g. ActivityManagerService) shown in the log, see https://github.com/rovo89/XposedBridge/commit/6b49688c929a7768f3113b4c65b429c7a7032afa
Resources-related incompatiblity on newer CM12-based ROMs
Hooks for very simple methods not working, see https://github.com/rovo89/android_art/issues/4
app_process version not displayed in XposedInstaller
When you flash the new files, the next boot might take a bit longer, as it effectively clears the Dalvik cache (which is necessary because of a change in the ART compiler).
Note that this version is still not compatible with Samsung ROMs (custom ROMs might work if they're not based on stock ROMs). Don't install it, otherwise you'll get into a bootloop and need to restore your backup!
I have already done a lot of investigations and adjustments, as also mentioned in the previous post. However, there are still differences that need to be addressed and it will take more time to resolve them. I can't give any ETA on that.
Ok, quick status update.
Sure, I have heard that Android 5.1 is out. However, it currently makes more sense for me to stablize Xposed for Android 5.0, as I have two productive devices plus the Genymotion emulator running on it. Hopefully, it can then be ported to Android 5.1, but that's hard to tell without having had a look at it.
It's generally hard to estimate any timelines for Xposed-related stuff, for mainly two reasons:
a) Working on Xposed is mainly analysis of AOSP code, traces, closed-source files, followed by some development and testing (often trial and error). I never now which other obstacles are still undiscovered, so the effort is unclear beforehand.
b) Even if I know the effort (= net time), I can't say when I will have the time to actually work on it. For example, this week I probably won't spend a single hour on development. Sorry, but I'm not going to sacrifice my private life for Xposed and I can't spend several hours per evening for this project (anymore).
One of the next steps will be the creation of some scripts that help me to compile and package Xposed. Apart from simplification for me, I hope that this might help other experienced developers to try and contribute themselves (e.g by analysing the issues they noticed themselves).
So much for now, keep enjoying the stuff that is already working and please refrain from asking me when Xposed for 5.1 will be stable... I simply don't know that myself.
rovo89 said:
One of the next steps will be the creation of some scripts that help me to compile and package Xposed. Apart from simplification for me, I hope that this might help other experienced developers to try and contribute themselves (e.g by analysing the issues they noticed themselves).
Click to expand...
Click to collapse
It took longer than expected, but I also think it's better than what I had planned originally:
https://github.com/rovo89/XposedTools
I hope this makes it easier for others to compile the native parts of Xposed and the modified ART runtime themselves and get involved, just like @romracer did. It also makes it easier for me to build and package the Xposed framework, as it was quite a hassle to make sure that all files are compiled correctly, pushed to my PC etc.
I have just uploaded a new flashable ZIP for Xposed 3.0 alpha3 (xposed-sdk21-arm-20150426.zip).
You only need to flash the ZIP again, the Xposed Installer app remains the same (and therefore still shows version alpha2). If XposedBridge.jar has version 64 after a reboot, the new version is active.
Changes:
- Fixed issues with replacing drawables
- Fixed NoSuchMethodError in handleInitPackageResources
- Possibly fixed some errors on ROMs that start in permissive SELinux mode and switch to enforcing mode later
As the question probably comes up:
- No, this version doesn't support Android 5.1 yet.
- No, this ZIP doesn't support arm64/x86 processors yet.
I will eventually support them as well, but as there are unofficial versions for these, I try to work on a few known issues for Android 5.0 before (when I find time for it).
Regarding Samsung ROMs: No progress. No ETA. No promise that it will be supported, although I don't exclude it either. It's simply unclear what further differences between their and AOSP's ART variant come up.
alpha4 (20150430) is now available. It fixes bootloops and crashes on some ROMs, especially on Sony devices. In the logs, there used to be "Too many open files" errors.
References for this bug:
https://github.com/rovo89/Xposed/issues/31
http://forum.xda-developers.com/crossdevice-dev/sony/workaround-bootloops-xposed-lollipop-t3089203
http://forum.xda-developers.com/z3/general/xposed-bootloops-lollipop-t3085627
I have just upload files for a big update. It includes many general improvements/changes and some smaller fixes.
One of the changes is that I decided to avoid confusion about all the different (yet similar) version numbers for installer, framework zip, app_process and XposedBridge by reducing it to two version numbers:
The framework (i.e. all the files in the flashable) zip is versioned with integers (65 for this release). This is at the same time the Xposed API version. Unofficial builds should use suffixes to label their releases.
The Xposed Installer app will continue to use the well-known, human-readable version numbers, e.g. 3.0 alpha3 for this release.
The next bigger change is the installation script in the flashable ZIP. I use a modified fork of BusyBox now to keep the scripts clean and work with a well-known environment. This should make it pretty reliable, even in case some weird recoveries forget to include the "unzip" command. Those who are interested in the technical details should check out the GitHub project.
While I was working at it, I finally built flashable uninstallation ZIPs as well. They revert all actions done by the installation script, provided you didn't delete the backups (<filename.orig>). These ZIPs are only tested with Android 5.0.
The other changes are:
- Installer: Display the installed framework version in green, instead of a static hint about flashing the framework via recovery.
- Fix for incomplete logs on some devices, see https://github.com/rovo89/Xposed/issues/34
- Fix for updated modules crashing until the next reboot, see https://github.com/rovo89/Xposed/issues/22
- Ignore unknown parameters to avoid bootloops on some devices, see https://github.com/rovo89/android_art/issues/7
- Some other internal improvements
- Some cherry-picked ART commits from AOSP
- Devs: Allow hooking native methods, see https://github.com/rovo89/Xposed/issues/28
- Devs: Several debugger fixes, see https://github.com/rovo89/android_art/issues/1
I'm also uploading builds for arm64 and x86 devices. I have tested them on my Nexus 9 and on the Genymotion emulator and didn't notice any issues. The unofficial builds don't seem to be modified from my source code either and I didn't get pull requests on GitHub for these platforms, so I assume that they work fine.
By the way, in case you're a dev (or just interested) and want to try out your modules on Genymotion, you can use this collection of scripts to faciliate the Xposed framework installation on Genymotion. Just follow the instructions, then you can simply drop the x86 framework installation ZIP on the emulator window to install the framework. Don't forget to reboot afterwards.
So much for now. Be assured that official Android 5.1 support will come sooner or later, but the changes above required quite some debugging, development and strategic thinking. It's nice to see that some unofficial ports fill the gap for those who don't want to wait.
About M: The AOSP tag for the preview seems to be just a placeholder, just like it was for the L preview. I haven't tried, but I doubt that compiling ART from this tag will fit to the M preview image. Hence, I won't be investing any of the time (that I don't have anyway) to try and get Xposed running on the preview image.
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.
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.
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/XposedTools/commit/c55ac907e16947d66012950d119d8db1aea69124
The uninstaller has also been updated, although it's unlikely that it would have caused real issues.
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.
rovo89 said:
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.
Click to expand...
Click to collapse
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.
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.
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.
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).
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.
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.

Categories

Resources