<div style="line-height:1.7;color:#000000;font-size:14px;font-family:Arial"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">Dear all,</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">I am using soot to instrument apks.  I followed the tutorial on </span><a href="https://github.com/Sable/soot/wiki/Instrumenting-Android-Apps-with-Soot" target="_blank" style="padding: 0px; margin: 0px; color: rgb(54, 82, 93); cursor: pointer; text-decoration-line: none; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">https://github.com/Sable/soot/wiki/Instrumenting-Android-Apps-with-Soot</a><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"> and it works well for android API16. But I got one problem for apks of API 26.</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">The following is the code:</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">public static void main(String[] args) {</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_allow_phantom_refs(true);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_src_prec(Options.src_prec_apk);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_output_format(Options.output_format_dex);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_debug(true);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_verbose(true);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_whole_program(true);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_android_jars(¡°C:\\Users\\Mike58\\AppData\\Local\\Android\\Sdk\\platforms¡±);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">             //apk of API 16</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Options.v().set_process_dir(Collections.singletonList("DroidBench-develop/DroidBench-  develop/apk/InterAppCommunication/SendSMS.apk¡±));</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">             //apk of API 26</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">           //Options.v().set_process_dir(Collections.singletonList("FeatureChecking\\API26\\benchmark\\apks\\ InterAppEnd1.apk¡±));</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Scene.v().addBasicClass("java.io.PrintStream",SootClass.SIGNATURES);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            Scene.v().addBasicClass("java.lang.System",SootClass.SIGNATURES);</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            PackManager.v().getPack("wjtp").add(new Transform("jtp.myInstrumenter", new SceneTransformer() {</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">           @Override</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">           protected void internalTransform(String phaseName, Map<String, String> options) {</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">                       System.out.println(Scene.v().getApplicationClasses());</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">                 }</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">            }));</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">             soot.Main.main(new String[] { "-whole-program" });</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">}</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">This is a very simple example, when I run it on apks of API 16, the program can print all the application classes and one apk file is generated under sootOutput directory. But when I run the code for apk of API 26, there is no error but the result of Scene.v().getApplicationClasses() is empty. In addition, in sootOutput directory there is only one classes.dex file generated. The Android platform I am using is the latest one and soot does not complain about the platform, so I think the platform is not a problem. Now I am really confused, am I using soot in a wrong way?   Thanks a lot for any help!</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">Cheers,</span><br style="padding: 0px; margin: 0px; font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;"><span style="font-family: Menlo, Consolas, "Lucida Console", "DejaVu Sans Mono", monospace; font-size: 12px;">Shikun Zhang</span></div><br><br><span title="neteasefooter"><p> </p></span>