Skip to content
This repository has been archived by the owner on Jun 1, 2023. It is now read-only.

Corrupted Sony odex files (No pending exception expected: java.lang.ArrayIndexOutOfBoundsException) #64

Closed
iMahmoudSaad opened this issue Sep 8, 2015 · 27 comments
Labels

Comments

@iMahmoudSaad
Copy link

hi ,
I have a bootloop after flashing xposed-v73-sdk22-arm
log : http://pastebin.com/b0bkqAaK
please help

@iMahmoudSaad iMahmoudSaad changed the title Bootloop in Xperia T2 Ultra D5322 Bootloop in Xperia T2 Ultra D5322 ( 5.1.1 ) Sep 8, 2015
@rovo89
Copy link
Owner

rovo89 commented Sep 9, 2015

I/art     ( 2957): DexFile_isDexOptNeeded file /system/framework/arm/ethernet-service.odex needs to be recompiled with Xposed for /system/framework/ethernet-service.jar
I/dex2oat ( 2997): /system/bin/dex2oat --zip-fd=6 --zip-location=/system/framework/ethernet-service.jar --oat-fd=7 --oat-location=/data/dalvik-cache/arm/system@framework@ethernet-service.jar@classes.dex --instruction-set=arm --instruction-set-features=div --runtime-arg -Xms64m --runtime-arg -Xmx512m --swap-fd=11
I/dex2oat ( 2997): Using '/system/framework/arm/ethernet-service.odex' instead of file descriptor
I/dex2oat ( 2997): Decided to run without swap.
F/dex2oat ( 2997): art/runtime/thread.cc:1143] No pending exception expected: java.lang.ArrayIndexOutOfBoundsException: length=75; index=30976

That's very likely the known issue that Sony's odex files are corrupted. I'm not sure whether this happened by mistake or is intended to prevent decompilation... You get similar messages with tools like baksmali as well. So unless someone manages to extract a working .dex file (which can be decompiled) from the .odex file, I'm afraid there's nothing I can do for you.

@rovo89 rovo89 closed this as completed Sep 9, 2015
@rovo89 rovo89 added the invalid label Sep 9, 2015
@pylerSM
Copy link
Contributor

pylerSM commented Sep 9, 2015

Can't we just skip these odex files to prevent bootloop?

@rovo89
Copy link
Owner

rovo89 commented Sep 9, 2015

I don't think so. Xposed has to recompile everything, otherwise the hooks won't work (reliably) because of a few of the optimizations done by standard ART. As the system services would be affected, many modules wouldn't work correctly and the authors would get strange bug reports that are extremely hard to debug and cannot be solved. And even if this was accepted, we would need to identify such broken odex files quite early - even before the ROM tries to recompile them.

@iMahmoudSaad
Copy link
Author

so no hope getting xposed work on my device ?

@rovo89
Copy link
Owner

rovo89 commented Sep 10, 2015

I might have missed something, but from what I've seen, Xposed can't work properly for this ROM. It will probably work on custom ROMs though, and who knows - maybe someone finds out that the original dex file can be reconstructed somehow (which I doubt because a part of it has been overwritten with other data).

@iMahmoudSaad
Copy link
Author

Thanks for your help 👍

@rovo89
Copy link
Owner

rovo89 commented Nov 20, 2015

In case someone uses the search function: Crashes on Sony stock-based ROMs with messages like No pending exception expected: java.lang.ArrayIndexOutOfBoundsException: length=123; index=456 are caused by corrupted files in the ROM and as far as I can see can't be fixed. If anyone is able to properly deodex such a ROM, we can talk again.

@iMahmoudSaad
Copy link
Author

Would you suggest a way to deodex lollipop rom properly ?

@rovo89
Copy link
Owner

rovo89 commented Nov 20, 2015

I honestly don't know which way is the best, I never cared about that. My point here is: Deodexing the files is quite close to the first step of recompiling them, which is what Xposed must do. I have seen several files and they seemed to be corrupted. I couldn't deodex them, but if somebody found any way to do so (e.g. by somehow fixing those files), it would probably be possible to recompile them as well. Unless that happens, I don't see a chance for Xposed to support such ROMs.

@iMahmoudSaad
Copy link
Author

@rovo89
Copy link
Owner

rovo89 commented Nov 22, 2015

It's not clear to me what the author has done there. Has he deodexed a stock ROM with broken files (like services.odex) or did he take files from another ROM? And if he succeeded to actually deodex the broken files, how was that done?

@iMahmoudSaad
Copy link
Author

He didn't deodex T2 Ultra stock rom , He ported Z1 compact rom to T2 Ultra

@iMahmoudSaad
Copy link
Author

The rom works fine , xposed framework successfully installed and active

@rovo89
Copy link
Owner

rovo89 commented Nov 23, 2015

OK, good for you. So the Z1 Compact ROM doesn't seem to be broken then?

@iMahmoudSaad
Copy link
Author

I don't think so , I think this is the solution for t2 ultra users problem with xposed
The rom isn't fully stable but he said he will release the stable version soon
and thanks alot for your assistance
should I add [ solved ] to the title ?

@Ziad7
Copy link

Ziad7 commented Dec 18, 2015

I have bootloop on my Xperia T2 Ultra Dual D5322
If i delete boot.oat form "System/framework/arm/boot.oat
And put another one (boot.oat) from rhe original rom 5.1.1
It will works or not ?

@iMahmoudSaad
Copy link
Author

No, just flash xposed uninstaller.zip then wipe cache and dalvik cache

Sent from Outlook Mobile

On Thu, Dec 17, 2015 at 4:39 PM -0800, "Ziad7" notifications@github.com wrote:

I have bootloop on my Xperia T2 Ultra Dual D5322
If i delete boot.oat form "System/framework/arm/boot.oat
And put another one (boot.oat) from rhe original rom 5.1.1
It will works or not ?


Reply to this email directly or view it on GitHub:
#64 (comment)

@Ziad7
Copy link

Ziad7 commented Dec 18, 2015

It's didn't work
I got try that before ans same thing bootloop
When i flash rom from flashtool without wipe data and apps log to because and don't wanna lose my data
The phone got work to optimizing app and he optimize the apps in so fast, after that all the apps get force stop all the time, nothing get work
If i take backup from twrp to data and wipe my data, it's gonna work when i restored or not?
And thank for your answer
I will try another time with deodexed

@Ziad7
Copy link

Ziad7 commented Dec 18, 2015

Sorry for the mistake
I got try that before and its same (bootloop)

@rovo89
Copy link
Owner

rovo89 commented Dec 18, 2015

Is this still related to Xposed? If you want to talk about how you can flash a ROM, please do this on XDA. Every comment here will send an email to the 200+ watchers of the repository. To my knowledge, the stock Sony ROMs are broken and I can't do anything about this.

@Ziad7
Copy link

Ziad7 commented Dec 18, 2015

Its not like that
I got infinity bootloop
Now its need to delete my system and data and everything after that flash official rom to get rid of bootloop
What i want my data i need it and my apps data, i don't wanna to delete them

@rovo89 rovo89 changed the title Bootloop in Xperia T2 Ultra D5322 ( 5.1.1 ) Corrupted Sony odex files (No pending exception expected: java.lang.ArrayIndexOutOfBoundsException) Dec 19, 2015
@Muhammad7k
Copy link

it's worked on xperia z2 5.1.1 with custom rom (existenZ v6) with xposed-v79-sdk22-arm.zip

@nassy42
Copy link

nassy42 commented Jan 31, 2016

Work on every Sony Xperia Z2 5.1.1 ROM for me, except the last sony update .234 .. :\

@Agentdude420
Copy link

Hey, I installed Xsposed Framework on my Xperia C3 and without reading the 'Known issues' and, my phone is stuck on a bootloop. Can someone help me to remove the framework? Thanks!
Sony Xperia C3 D2533
Arm 7i

@ChRriiZz
Copy link

ChRriiZz commented May 8, 2022

I/art     ( 2957): DexFile_isDexOptNeeded file /system/framework/arm/ethernet-service.odex needs to be recompiled with Xposed for /system/framework/ethernet-service.jar
I/dex2oat ( 2997): /system/bin/dex2oat --zip-fd=6 --zip-location=/system/framework/ethernet-service.jar --oat-fd=7 --oat-location=/data/dalvik-cache/arm/system@framework@ethernet-service.jar@classes.dex --instruction-set=arm --instruction-set-features=div --runtime-arg -Xms64m --runtime-arg -Xmx512m --swap-fd=11
I/dex2oat ( 2997): Using '/system/framework/arm/ethernet-service.odex' instead of file descriptor
I/dex2oat ( 2997): Decided to run without swap.
F/dex2oat ( 2997): art/runtime/thread.cc:1143] No pending exception expected: java.lang.ArrayIndexOutOfBoundsException: length=75; index=30976

That's very likely the known issue that Sony's odex files are corrupted. I'm not sure whether this happened by mistake or is intended to prevent decompilation... You get similar messages with tools like baksmali as well. So unless someone manages to extract a working .dex file (which can be decompiled) from the .odex file, I'm afraid there's nothing I can do for you.

@Rwadxvv
Copy link

Rwadxvv commented Jul 31, 2022

1 mast

@Rwadxvv
Copy link

Rwadxvv commented Jul 31, 2022

![Screenshot_٢٠٢٢٠٨٠١-٠١٥٤٥١_One UI Home](https://user-imag@rovo89 s.githubusercontent.com/109966453/182050004-1e4f037a-155f-4ee6-842a-baea30e2f836.jpg)
@

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

9 participants