deepintent-ccs/DeepIntent

ic3 questions

Opened this issue · 10 comments

guyul commented
  1. The ic3 part can only buid the database "cc" and tables, but can not write data in them
  2. I found that line 673 in APKCallGraph.java "String sql = "select Permission from outputmapping where Method = '" + method + "'";" needs a table named outputmapping, but the ic3 can not output this table.
    Could you please tell me why?
    Thanks a lot.

Here is the last question you mentioned before @guyul .

I found a line "java -jar wid.jar /path/" in file runImg2widgets.sh, but I can't find wid.jar.
Could you please tell me where is it?
Or maybe I can make this file form WidImageResolver after changing some lines?
Thanks a lot.

Have you solved this question now? If you have, could you tell me where is it? Thanks a lot!

@guyul For ic3 part, can you get the output files?
The string value refers to a database, you can create one using jellybeans mapping and modify the connection.

guyul commented

@guyul For ic3 part, can you get the output files?
The string value refers to a database, you can create one using jellybeans mapping and modify the connection.

@ShaoYang1992
Thank you very much for your reply. Here I still have some questions.

  1. I can get files in folders named "testspace"(class files) and "output"(txt files) from the ic3 part. Are they contains all the correct ouputs of ic3?
  2. Is the "outputmapping" table in database only rely on the jellybeans mapping file? I can only use the mapping file "jellybean_allmappings.txt" to create the table, am I right?
  3. What is the structure of the table "outputmapping" ? Maybe I can create it with only two parts--"Method" and "Permission"?
    Thanks a lot.
guyul commented

Here is the last question you mentioned before @guyul .

I found a line "java -jar wid.jar /path/" in file runImg2widgets.sh, but I can't find wid.jar.
Could you please tell me where is it?
Or maybe I can make this file form WidImageResolver after changing some lines?
Thanks a lot.

Have you solved this question now? If you have, could you tell me where is it? Thanks a lot!

I have solved this. But I'm not sure if I'm right.
I get the wid.jar from WidImageResolver after changing

  1. line 3,14,65 in RResParser.java
  2. line 481 in APKResourceResolver,java
  3. line 85 in APKRenderer.java
    Some of them seems maybe not have to be changed but I changed them all.

@leo-frank I am sorry for that, for some reason I cannot upload the wid.jar. Please send me an email so I can share with you the file via google drive.

@guyul

  1. testspace contains intermediate results for getting ICCs. Normally they are ignored. The desired files are in the output folder.
  2. You can use different PScout mappings. They are no longer updated, jellybeans are the most complete versions of all.
  3. Yes, there are two columns named Method and Permission. You may change the format of jellybeans.txt and import them into the database.

Hi ShaoYang1992,

I have encountered below problem while running "sh /ic3/runic3.sh #argv[1]" command in the order mentioned runImg2widgets.sh.

Looking forward for your reply for a solution.

Thanks in advance.

Soot started on Mon Jul 12 22:06:13 CEST 2021
Using '/Users/user1/Library/Android/sdk/platforms/android-22/android.jar' as android.jar
java.lang.NullPointerException
at soot.JastAddJ.Program.initPaths(Program.java:350)
at soot.SootResolver.(SootResolver.java:89)
at soot.Singletons.soot_SootResolver(Singletons.java:802)
at soot.SootResolver.v(SootResolver.java:92)
at soot.Scene.tryLoadClass(Scene.java:661)
at soot.Scene.loadBasicClasses(Scene.java:1258)
at soot.Scene.loadNecessaryClasses(Scene.java:1337)
at soot.Main.run(Main.java:214)
at soot.Main.main(Main.java:152)
at RetargetedApp.main(RetargetedApp.java:24)
soot NPE.pdf

@guyul
Have u fixed these question? How to wirte in "cc"? Thanks a lot if u would like to answer.