View on GitHub

CraftDroid.github.io

CraftDroid and ReCBench

CraftDroid

CraftDroid is an approach for minging crash-inducing bug fixes in Android apps. As depicted in the Figuire below. CraftDroid

ReCBench

ReCBench is a collection of 200 Android crashed apps (where you must download from AndroZoo with the sha256 provided for each apk) with crash reproducing script and crash message filtered out from LogCat. The dataset is accessible here.

Experimental Data

Fix Templates

We have mined 17 fix templates that are accessible here.

Evaluated Patches

We have applied these fix templates on 20 apks selected from ReCBench, out of which 17 fixes are successful. 3 failed for various reasons. Click on the app names for a git diff view of the patches applied on the corresponding JIMPLE files.

App Name Bucket Applied Template Fix Remark
AutoHome 8 LifeCycle Verifier yes  
PI 8 LifeCycle Verifier yes  
JadwalKA 12 Thread Finisher yes  
Fruit Mahjong 12 Thread Finisher yes  
Flashlight 1 Provider Checker yes  
areain! 1 Provider Checker yes  
WordPress 18 Range Checker no crash with succeeding API
Android Optimizer 18 Range Checker yes  
Mine_mine 20 Emptiness Checker yes  
SetCPU 20 Emptiness Checker no String null throw NPE
FingerWQ 23 Canvas Preconcator no app method non existing
BTCfx 15 Package Settler yes  
MapCam 15 Package Settler yes  
Baby Piano 2 Activity Resolver yes  
GK in Gujarati 2 Activity Resolver yes  
Reflection 2 Activity Resolver yes  
UK Lotto 2 Activity Resolver yes  
Agile Buddy 2 Activity Resolver yes  
HiYou Park 33 Try-catcher yes  
Sohu Weibo 33 Try-catcher yes