usage by about 135.01 MB, while Sonarlint increased
it by about 203.36 MB. ArmorDroid used less mem-
ory than Sonarlint initially, but this may be due to
its smaller rule set and fewer features and languages.
Sonarlint has more features than ArmorDroid, which
could explain its higher memory consumption.
6 CONCLUSION AND FUTURE
WORK
This article presents ArmorDroid, a plugin for An-
droid Studio that helps developers avoid common se-
curity problems in Android programming. Armor-
Droid detects insecure code patterns in real-time and
suggests fixes. It also allows users to customize and
share inspection rules with co-workers. We evalu-
ated ArmorDroid with junior Android developers and
found that they appreciated its ability to identify and
correct vulnerable code quickly and easily. They also
found the rule editing feature very useful.
The survey reveals some areas for improvement in
current ArmorDroid. First, the rule editor’s UI. They
complained that it needed to be clarified or that the
regex pattern fields were not validated. Another is-
sue is the code inspector’s inability to inspect variable
function arguments due to ArmorDroid’s limited un-
derstanding of the expression context.
In future work, we plan to redesign the UI of the
rule editor. We will also create a website where all
the rule detail explanations and examples will be pre-
sented. In addition, the link to each issue will be at-
tached to the brief description, and users can follow
the link to see the vulnerability in more detail. Fi-
nally, we are going the improve ArmorDroid’s con-
text awareness, i.e., allowing it to inspect the value of
a variable.
ACKNOWLEDGEMENTS
This research is funded by the University of Science,
VNU-HCM, Vietnam under grant number CNTT
2023-05
REFERENCES
(2023). groupvalues in kotlin. https://kotlinlang.
org/api/latest/jvm/stdlib/kotlin.text/-match-result/
group-values.html.
(2023). Mobsf. https://mobsf.github.io/docs/#/.
(2023). Plugin configuration file. https://plugins.
jetbrains.com/docs/intellij/code-inspections.html#
plugin-configuration-file.
(2023a). Sonar rules. https://rules.sonarsource.com/.
(2023b). Sonarlint. https://www.sonarsource.com/products/
sonarlint/.
App-Ray (2023). App-Ray. App-Ray website.
De Cremer, P., Desmet, N., Madou, M., and De Sutter, B.
(2020). Sensei: Enforcing secure coding guidelines
in the integrated development environment. Software:
Practice and Experience, 50(9):1682–1718.
Fan, W., Zhang, D., g Chen, Y., Wu, F., and Liu, Y.
(2020). Estidroid: Estimate api calls of android appli-
cations using static analysis technology. IEEE Access,
8:105384–105398.
Faruki, P., Bharmal, A., Laxmi, V., Ganmoor, V., Gaur,
M. S., Conti, M., and Rajarajan, M. (2014). Android
security: a survey of issues, malware penetration, and
defenses. IEEE communications surveys & tutorials,
17(2):998–1022.
Gitlab (2022). The GitLab 2022 Global DevSecOps Survey.
Google (2023). Android studio. https://developer.android.
com/studio. Accessed: February 19, 2023.
GuardSquare (2023). AppSweep: Mobile Application Se-
curity Testing. GuardSquare website.
Nguyen, D. C., Wermke, D., Acar, Y., Backes, M., Weir,
C., and Fahl, S. (2017). A stitch in time: Support-
ing android developers in writing secure code. In
Proceedings of the 2017 ACM SIGSAC Conference
on Computer and Communications Security, pages
1065–1077.
OWASP (2016). M5: Insufficient cryptography.
https://owasp.org/www-project-mobile-top-10/
2016-risks/m5-insufficient-cryptography.
Statista (2023). Quarterly number of mobile app downloads
worldwide from 1st quarter 2016 to 4th quarter 2022.
Statista website. Accessed: February 19, 2023.
Talukder, M. A. I., Shahriar, H., Qian, K., Rahman, M.,
Ahamed, S., Wu, F., and Agu, E. (2019). Droidpatrol:
a static analysis plugin for secure mobile software de-
velopment. In 2019 IEEE 43rd annual computer soft-
ware and applications conference (COMPSAC), vol-
ume 1, pages 565–569. IEEE.
Tran, A.-D., Nguyen, M.-Q., Phan, G.-H., and Tran, M.-T.
(2021). Security issues in android application devel-
opment and plug-in for android studio to support se-
cure programming. In Future Data and Security En-
gineering. Big Data, Security and Privacy, Smart City
and Industry 4.0 Applications: 8th International Con-
ference, FDSE 2021, Virtual Event, November 24–26,
2021, Proceedings 8, pages 105–122. Springer.
ArmorDroid: A Rule-Set Customizable Plugin for Secure Android Application Development
641