[Soot-list] A problem about Multiple dex files

Christian Maeder c.maeder at uni-bremen.de
Thu Nov 9 04:53:59 EST 2017


Hi,

in order to reproduce the problem do

1. download
https://github.com/Sable/soot/wiki/code/androidinstr/AndroidInstrument.java_.txt
as AndroidInstrument.java

2. compile it (under linux)

  javac AndroidInstrument.java -cp soot-trunk.jar

Unfortunately https://soot-build.cs.uni-paderborn.de/nightly/
(referenced from https://sable.github.io/soot/) currently gives "404 Not
Found". My version of sootclasses-trunk-jar-with-dependencies.jar from
Nov. 1st (13956977 Bytes, md5sum f9659fa4a01daecb45181bc2a9f532e7) shows
the "WARNING: Multiple dex files detected" whereas an older
soot.trunk.jar from Aug 14th (13933707 Bytes, md5sum
6580e6b0ae6613da016fb6cb813a8c72) does not.

3. get an apk and a (suitable) platform android.jar. I guess any .apk
will do.

4. run it

  java -cp sootclasses-trunk-jar-with-dependencies.jar:.
AndroidInstrument -android-jars platforms -process-dir test.apk

My output:

Soot started on Thu Nov 09 10:48:12 CET 2017
Using 'platforms/android-4/android.jar' as android.jar
Found dex file 'classes.dex' with 150 classes in '/<...>/test.apk'
WARNING: Multiple dex files detected, only processing 'classes.dex'. Use
'-process-multiple-dex' option to process them all.

If I add the option -process-multiple-dex the warning is gone. Still
only a single classes.dex file is reported.

Cheers Christian

On 08.11.2017 15:46, Manuel Benz wrote:
> Hi.
> 
> As far as I understand these are separate issues. 
> 
> @Christian: Soot is looking for dex files even in all subdirectories of the apk’s root directory. There might be another dex file. If not, can you send me your apk and I’ll have a look?
> 
> @Jin: This looks strange and might be a bug. Can you send me the apk?
> 
> Best,
> Manuel
> 
> Am 08.11.17, 15:35 schrieb "Soot-list im Auftrag von Christian Maeder" <soot-list-bounces at CS.McGill.CA im Auftrag von c.maeder at uni-bremen.de>:
> 
>     Hi,
>     
>     I've noticed this warning, too. It must have been introduced recently.
>     The warning is wrong. I've got only a single classes.dex file.
>     
>     Cheers Christian
>     
>     On 08.11.2017 09:13, OxfordNiu wrote:
>     > Hi all,
>     > 
>     > Recently, I use Flowdroid on generating call graph on an apk, I followed LOKESH 
>     > JAIN 's previous work in Eclipse and some problems have arisen. When I run 
>     > the program, the console gives a WARNING: 
>     > 
>     >  Multiple dex files detected, only processing 'classes.dex'. Use 
>     > '-process-multiple-dex' option to process them all.
>     > 
>     > Then I followed that prompt and set the parameters:
>     >                  
>     > *                G.reset();*
>     > * Options.v().set_src_prec(Options.src_prec_apk);*
>     > * Options.v().set_process_dir(Collections.singletonList(apkDir));*
>     > * Options.v().set_android_jars(platformDir);*
>     > * Options.v().set_whole_program(true);*
>     > * Options.v().set_allow_phantom_refs(true);*
>     > * Options.v().set_output_format(13);*
>     > * Options.v().set_process_multiple_dex(true);*
>     > 
>     > It didn't work!  How do I solve this problem?
>     > Any help would be appreciated
>     > 
>     > Thanks & Regards
>     > 
>     > Jin Niu
>     >                 
>     > 
>     > 
>     > 
>     > 
>     > _______________________________________________
>     > Soot-list mailing list
>     > Soot-list at CS.McGill.CA
>     > https://mailman.CS.McGill.CA/mailman/listinfo/soot-list
>     > 
>     _______________________________________________
>     Soot-list mailing list
>     Soot-list at CS.McGill.CA
>     https://mailman.CS.McGill.CA/mailman/listinfo/soot-list
>     
> 


More information about the Soot-list mailing list