hosijyun / smali

Automatically exported from code.google.com/p/smali
0 stars 0 forks source link

V1.3.3 not able to deodex Email/Exchange on I9100XWLPI (V1.3.2 does) #124

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
Fist of all, a big thanks for this awesome tool.

I'm using dsixda 1.9.6 with smali 1.3.3.

While deodexing I9100XWLPI, it can't deodex 2 files : Email and Exchange.

But it works with v1.3.2.

See attached file for deodex log.

Original issue reported on code.google.com by karami...@gmail.com on 28 Jun 2012 at 8:40

Attachments:

GoogleCodeExporter commented 9 years ago
Of course it doesn't work, you're giving it a garbage classpath :) (or rather, 
the script you are using is).

As strange as it may sound, the fact that this worked in previous versions 
(using the garbage classpath that you are giving it) was actually a bug. 
(https://code.google.com/p/smali/source/detail?r=0044afa4c33b07f508b12d88160be93
58361fec8).

The problem is fairly complex, but it boils down to the fact that you need to 
use the same classpath when deodexing as what dalvik used when it originally 
created the odex. And I guarantee that all those jar files were *not* in the 
classpath when it was being odexed :)

For applications, usually the correct way to go is to let baksmali use the 
"default" classpath (which it reads from the odex file), and then use the -c 
option with an initial colon to add any additional dependencies that are 
introduced via a <uses-library> entry in the manifest.

Original comment by jesusfreke@jesusfreke.com on 29 Jun 2012 at 7:24

GoogleCodeExporter commented 9 years ago
Understood :) , thank you.

Original comment by karami...@gmail.com on 9 Jul 2012 at 8:13