<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p><br>
</p>
<br>
<div class="moz-cite-prefix">On 04/03/2017 02:47 AM, Arzt, Steven
wrote:<br>
</div>
<blockquote
cite="mid:72554BC2B275D5419CAE35494C16CEF5139B78CF@EXCH2010A.sit.fraunhofer.de"
type="cite">
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Hi
Behnam,<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">To
get an instrumented APK file, you also need the –output-format
apk parameter, otherwise Soot will cross-compile your code to
Java bytecode.</span></p>
</blockquote>
The apk parameter is not recognized. Any alternative?<br>
<br>
$behnam: /usr/lib/jvm/java-8-oracle/bin/java -jar soot-trunk.jar
AndroidInstrument -cp . -src-prec apk -allow-phantom-refs
-android-jars /home/behnam/Android/Sdk/platforms/ -output-format
apk -process-dir respdroid.apk<br>
Invalid value apk given for option -output-format<br>
<br>
<br>
<blockquote
cite="mid:72554BC2B275D5419CAE35494C16CEF5139B78CF@EXCH2010A.sit.fraunhofer.de"
type="cite">
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><br>
Concerning the exception: Where did you get the platform JARs
from? Do not use the ones in the Sable group on Github.
Instead, use the ones provided with the official Android SDK
that you can download from Google.</span></p>
</blockquote>
Same issue as before persists regardless of platform Jars path. I
would highly appreciate it if someone would actually follow the <a
href="https://github.com/Sable/soot/wiki/Instrumenting-Android-Apps-with-Soot">Official
Soot Android Instrumentation Example</a> with a recent Android app
(Java 8 basically), and share their command line.<br>
<br>
Here's the state I'm stuck at:<br>
<br>
behnam@behnam-Precision-T1600:~/tcal/responsiveness/soot/stable$
/usr/lib/jvm/java-8-oracle/bin/java -jar soot-trunk.jar
AndroidInstrument -cp . -src-prec apk -allow-phantom-refs
-android-jars /home/behnam/Android/Sdk/platforms -process-dir
respdroid.apk<br>
Soot started on Mon Apr 03 12:28:03 EDT 2017<br>
Warning: java.lang.Throwable is a phantom class!<br>
Warning: java.lang.Void is a phantom class!<br>
Warning: java.lang.Float is a phantom class!<br>
Warning: java.lang.Double is a phantom class!<br>
Warning: java.lang.AssertionError is a phantom class!<br>
Warning: java.lang.Integer is a phantom class!<br>
Warning: java.lang.NullPointerException is a phantom class!<br>
Warning: java.lang.Character is a phantom class!<br>
Warning: java.lang.Long is a phantom class!<br>
Warning: java.lang.Short is a phantom class!<br>
Warning: java.lang.StringBuffer is a phantom class!<br>
Warning: java.lang.Boolean is a phantom class!<br>
Warning: java.lang.Class is a phantom class!<br>
Warning: java.lang.Byte is a phantom class!<br>
Warning: java.lang.NoClassDefFoundError is a phantom class!<br>
Warning: java.lang.IndexOutOfBoundsException is a phantom class!<br>
Warning: java.lang.StackOverflowError is a phantom class!<br>
Warning: java.lang.invoke.LambdaMetafactory is a phantom class!<br>
Warning: java.lang.Error is a phantom class!<br>
Warning: java.lang.AbstractMethodError is a phantom class!<br>
Warning: java.lang.ClassCastException is a phantom class!<br>
Warning: java.lang.Runnable is a phantom class!<br>
Warning: java.lang.VerifyError is a phantom class!<br>
Warning: java.lang.NoSuchFieldError is a phantom class!<br>
Warning: java.lang.IllegalMonitorStateException is a phantom class!<br>
Warning: java.lang.Thread is a phantom class!<br>
Warning: java.lang.UnknownError is a phantom class!<br>
Warning: java.lang.InternalError is a phantom class!<br>
Warning: java.lang.ArithmeticException is a phantom class!<br>
Warning: java.lang.String is a phantom class!<br>
Warning: java.lang.NegativeArraySizeException is a phantom class!<br>
Warning: java.lang.ClassCircularityError is a phantom class!<br>
Warning: java.lang.Cloneable is a phantom class!<br>
Warning: java.lang.ref.Finalizer is a phantom class!<br>
Warning: java.lang.LinkageError is a phantom class!<br>
Warning: java.lang.IncompatibleClassChangeError is a phantom class!<br>
Warning: java.lang.NoSuchMethodError is a phantom class!<br>
Warning: java.lang.RuntimeException is a phantom class!<br>
Warning: java.lang.ArrayIndexOutOfBoundsException is a phantom
class!<br>
Warning: java.lang.ThreadDeath is a phantom class!<br>
Warning: java.io.Serializable is a phantom class!<br>
Warning: java.lang.InstantiationError is a phantom class!<br>
Warning: java.lang.IllegalAccessError is a phantom class!<br>
Warning: java.lang.Object is a phantom class!<br>
Warning: java.lang.ClassNotFoundException is a phantom class!<br>
Warning: java.lang.ClassFormatError is a phantom class!<br>
Warning: java.lang.UnsatisfiedLinkError is a phantom class!<br>
Warning: java.lang.ArrayStoreException is a phantom class!<br>
Warning: java.lang.ExceptionInInitializerError is a phantom class!<br>
Warning: java.lang.OutOfMemoryError is a phantom class!<br>
Exception in thread "main" java.lang.Error: Error: Failed to load
java.util.Map$Entry.<br>
at soot.JastAddJ.PathPart.getCompilationUnit(PathPart.java:109)<br>
at soot.JastAddJ.Program.getCompilationUnit(Program.java:873)<br>
at
soot.JastAddJ.Program.getLibCompilationUnit_compute(Program.java:1517)<br>
at
soot.JastAddJ.Program.getLibCompilationUnit(Program.java:1500)<br>
at
soot.JastAddJ.Program.lookupLibType_compute(Program.java:1465)<br>
at soot.JastAddJ.Program.lookupLibType(Program.java:1433)<br>
at soot.JastAddJ.Program.lookupType_compute(Program.java:1412)<br>
at soot.JastAddJ.Program.lookupType(Program.java:1393)<br>
at
soot.JastAddJ.Program.Define_TypeDecl_lookupType(Program.java:1981)<br>
at
soot.JastAddJ.ASTNode.Define_TypeDecl_lookupType(ASTNode.java:1657)<br>
at
soot.JastAddJ.ASTNode.Define_TypeDecl_lookupType(ASTNode.java:1657)<br>
at
soot.JastAddJ.ASTNode.Define_TypeDecl_lookupType(ASTNode.java:1657)<br>
at
soot.JastAddJ.ASTNode.Define_TypeDecl_lookupType(ASTNode.java:1657)<br>
at soot.JastAddJ.Expr.lookupType(Expr.java:1186)<br>
at soot.JastAddJ.TypeAccess.decls_compute(TypeAccess.java:425)<br>
at soot.JastAddJ.TypeAccess.decls(TypeAccess.java:414)<br>
at
soot.JastAddJ.TypeAccess.refined_TypeScopePropagation_TypeAccess_decl(TypeAccess.java:387)<br>
at soot.JastAddJ.TypeAccess.decl_compute(TypeAccess.java:460)<br>
at soot.JastAddJ.TypeAccess.decl(TypeAccess.java:452)<br>
at soot.JastAddJ.TypeAccess.type_compute(TypeAccess.java:590)<br>
at soot.JastAddJ.TypeAccess.type(TypeAccess.java:583)<br>
at
soot.JastAddJ.CompilationUnit.refined_NameCheck_CompilationUnit_nameCheck(CompilationUnit.java:200)<br>
at
soot.JastAddJ.CompilationUnit.nameCheck(CompilationUnit.java:611)<br>
at soot.JastAddJ.ASTNode.collectErrors(ASTNode.java:1283)<br>
at
soot.JastAddJ.CompilationUnit.errorCheck(CompilationUnit.java:178)<br>
at
soot.JastAddInitialResolver.formAst(JastAddInitialResolver.java:58)<br>
at soot.JavaClassSource.resolve(JavaClassSource.java:54)<br>
at soot.SootResolver.bringToHierarchy(SootResolver.java:243)<br>
at soot.SootResolver.bringToSignatures(SootResolver.java:275)<br>
at
soot.SootResolver.processResolveWorklist(SootResolver.java:173)<br>
at soot.SootResolver.resolveClass(SootResolver.java:134)<br>
at soot.Scene.loadClass(Scene.java:873)<br>
at soot.Scene.loadClassAndSupport(Scene.java:858)<br>
at soot.Scene.loadNecessaryClass(Scene.java:1575)<br>
at soot.Scene.loadNecessaryClasses(Scene.java:1586)<br>
at soot.Main.run(Main.java:250)<br>
at soot.Main.main(Main.java:147)<br>
Caused by: java.lang.RuntimeException: java.lang.ClassCastException:
soot.JastAddJ.CONSTANT_Utf8_Info cannot be cast to
soot.JastAddJ.CONSTANT_Class_Info<br>
at
soot.JastAddJ.Attributes$TypeAttributes.innerClasses(Attributes.java:424)<br>
at
soot.JastAddJ.Attributes$TypeAttributes.processAttribute(Attributes.java:316)<br>
at soot.JastAddJ.Attributes.attributes(Attributes.java:61)<br>
at
soot.JastAddJ.Attributes$TypeAttributes.<init>(Attributes.java:307)<br>
at soot.JastAddJ.BytecodeParser.parse(BytecodeParser.java:337)<br>
at soot.JastAddJ.BytecodeParser.read(BytecodeParser.java:27)<br>
at soot.JastAddJ.PathPart.getCompilationUnit(PathPart.java:87)<br>
... 36 more<br>
Caused by: java.lang.ClassCastException:
soot.JastAddJ.CONSTANT_Utf8_Info cannot be cast to
soot.JastAddJ.CONSTANT_Class_Info<br>
at
soot.JastAddJ.BytecodeParser.parseThisClass(BytecodeParser.java:437)<br>
at
soot.JastAddJ.BytecodeParser.parseTypeDecl(BytecodeParser.java:404)<br>
at soot.JastAddJ.BytecodeParser.parse(BytecodeParser.java:331)<br>
at soot.JastAddJ.BytecodeParser.parse(BytecodeParser.java:301)<br>
at
soot.JastAddJ.Attributes$TypeAttributes.innerClasses(Attributes.java:405)<br>
... 42 more<br>
<br>
Thank you all for the help.<br>
<br>
<br>
<br>
Bests,<br>
<br>
Behnam<br>
<br>
<blockquote
cite="mid:72554BC2B275D5419CAE35494C16CEF5139B78CF@EXCH2010A.sit.fraunhofer.de"
type="cite">
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">Best
regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D">
Steven<o:p></o:p></span></p>
<p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1F497D"><o:p> </o:p></span></p>
</blockquote>
<br>
</body>
</html>