Hello everyone.<div><br></div><div>I got an exception while trying to process apks in a loop. The exception is "timer totalTimer has already been started!"</div><div><br></div><div>The code is as following:</div><div><br></div><div><div>public void analyzeAllApk(String basePath) {</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>File folder = new File(basePath);</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>String[] filelist = folder.list();</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>for (int i = 0; i < filelist.length; i++) </div><div><span class="Apple-tab-span" style="white-space:pre">           </span>analyzeApk(folder + File.separator + filelist[i]);</div><div>}</div><div><br></div><div>public void analyzeApk(String filePath){</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>Options.v().set_src_prec(Options.src_prec_apk);</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>Options.v().set_output_format(Options.output_format_jimple);</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>String[] soot_args = new String[4];</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>soot_args[0] = "-process-dir";</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>soot_args[1] = filePath;</div><div><span class="Apple-tab-span" style="white-space:pre">     </span>soot_args[2] = "-android-jars";</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>soot_args[3] = "D:\\download\\soot-path\\android-platforms-master\\";</div><div><span class="Apple-tab-span" style="white-space:pre">      </span></div><div><span class="Apple-tab-span" style="white-space:pre">     </span>Pack p1 = PackManager.v().getPack("jtp");</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>String phaseName="jtp."+filePath;</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>Transform t1 = new Transform(phaseName,new BodyTransformer(){</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>@Override</div><div><span class="Apple-tab-span" style="white-space:pre">            </span>protected void internalTransform(Body b, String phaseName,</div><div><span class="Apple-tab-span" style="white-space:pre">                   </span>Map<String, String> options) {</div><div><span class="Apple-tab-span" style="white-space:pre">         </span>      // TODO Auto-generated method stub</div><div><span class="Apple-tab-span" style="white-space:pre">              </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>});</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>p1.add(t1);</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>soot.Main.main(soot_args);</div><div>}</div></div><div><br></div><div>I just want to process all the apks under the basePath. </div><div><br></div><div>I hope someone can help me solve the problem.</div><div><br></div><div>Thank you.</div><div><br></div><div>Linjie Pan.</div><div><br></div><div><div></div></div>