Published April 2026 | Version v1
Dataset Restricted

SMELLDroid: A Dataset for Code Smells in Android Apps

  • 1. ROR icon Florida Polytechnic University
  • 2. ROR icon University of West Florida

Description

SMELLDroid is a large-scale dataset designed to support empirical research on software quality and maintainability within the Android ecosystem. The dataset comprises 38,704 Android applications, including 29,201 malware samples and 9,503 benign apps, analyzed using a static analysis pipeline to identify and quantify code smells.

SMELLDroid captures seven distinct code smell types, encompassing four object-oriented smells (Blob Class, Complex Class, Long Method, Swiss Army Knife) and three Android-specific smells (Heavy AsyncTask, Heavy Broadcast Receiver, Heavy Service). For each application, quantitative indicators describe the presence and frequency of these smells, enabling systematic measurement and comparison across large app populations.

The dataset supports research on code smell prevalence, relationships among smell categories, software quality analysis, and comparative studies of maintainability characteristics between benign and malicious Android applications.

If you use this dataset, please cite the associated paper describing the SMELLDroid dataset.

@inproceedings{SMELLDroid,
      author={Joyce Champie, Karim Elish, and Mahmoud Elish},
      booktitle={23rd IEEE/ACM International Conference on Mining Software Repositories (MSR)},
      title={SMELLDroid: A Dataset for Code Smells in Android Apps}, 
      year={2026}
}

 

App and Malware Access Information:

The apps and malware samples referenced in this dataset are real-world Android applications. To adhere to research ethics guidelines and comply with data sharing and redistribution policies, we do not directly distribute APK files. Instead, researchers are required to obtain the applications through the official AndroZoo repository and/or Drebin. 

AndroZoo: https://androzoo.uni.lu/

Drebin: https://drebin.mlsec.org/

Usage Instructions:

  1. Request access to the repository by following the instructions provided on the official website.
  2. Use the cryptographic hash values (e.g., SHA-256) included in our dataset to retrieve the corresponding application samples from the repository.

Files

Restricted

The record is publicly accessible, but files are restricted. Log in to check if you have access.

Request access

If you would like to request access to these files, please fill out the form below.

You need to satisfy these conditions in order for this request to be accepted:

We are happy to share our dataset. Please state your identity (your name and affiliation) and research scope. We will then grant you the access.

Note: Please do not share the data with any others (except your co-authors for the project). We are happy to share with other researchers based upon their requests.

If your papers or articles used our dataset, please include a citation to our paper:

@inproceedings{SMELLDroid,
      author={Joyce Champie, Karim Elish, and Mahmoud Elish},
      booktitle={23rd IEEE/ACM International Conference on Mining Software Repositories (MSR)},
      title={SMELLDroid: A Dataset for Code Smells in Android Apps}, 
      year={2026}
}

You are currently not logged in. Do you have an account? Log in here