English
Related papers

Related papers: DroidStar: Callback Typestates for Android Classes

200 papers

Before developing a new mobile app, the development team usually endeavors painstaking efforts to review many existing apps with similar purposes. The review process is crucial in the sense that it reduces market risks and provides…

Software Engineering · Computer Science 2022-03-15 Sen Chen , Lingling Fan , Chunyang Chen , Yang Liu

Information seeking on mobile devices is often fragmented, trapping users in repetitive cycles of context switching and data re-entry, which increases cognitive load and disrupts workflow. Existing mobile agents provide limited cross-source…

Human-Computer Interaction · Computer Science 2026-04-13 Yiheng Bian , Yunpeng Song , Guiyu Ma , Rongrong Zhu , Zhongmin Cai

Managing stateful resources safely and expressively is a longstanding challenge in programming languages, especially in the presence of aliasing. While scope-based constructs such as Java's synchronized blocks offer ease of reasoning, they…

Programming Languages · Computer Science 2025-10-13 Songlin Jia , Craig Liu , Siyuan He , Haotian Deng , Yuyan Bao , Tiark Rompf

Static analysis is sound in theory, but an implementation may unsoundly fail to analyze all of a program's code. Any such omission is a serious threat to the validity of the tool's output. Our work is the first to measure the prevalence of…

Software Engineering · Computer Science 2024-07-11 Jordan Samhi , René Just , Tegawendé F. Bissyandé , Michael D. Ernst , Jacques Klein

Developing mobile applications remains difficult, time consuming, and error-prone, in spite of the number of existing platforms and tools. In this paper, we define MoDroid, a high-level modeling language to ease the development of Android…

Software Engineering · Computer Science 2015-08-11 John Abou-Jaoudeh , Kinan Dak-Al-Bab , Mostafa El-Katerji , Yliès Falcone , Mohamad Jaber

Pull-stream is a JavaScript demand-driven functional design pattern based on callback functions that enables the creation and easy composition of independent modules that are used to create streaming applications. It is used in popular open…

Programming Languages · Computer Science 2018-01-19 Erick Lavoie , Laurie Hendren

Mobile task automation is an attractive technique that aims to enable voice-based hands-free user interaction with smartphones. However, existing approaches suffer from poor scalability due to the limited language understanding ability and…

Artificial Intelligence · Computer Science 2024-03-12 Hao Wen , Yuanchun Li , Guohong Liu , Shanhui Zhao , Tao Yu , Toby Jia-Jun Li , Shiqi Jiang , Yunhao Liu , Yaqin Zhang , Yunxin Liu

GUI-based models extracted from Android app execution traces, events, or source code can be extremely useful for challenging tasks such as the generation of scenarios or test cases. However, extracting effective models can be an expensive…

Software Engineering · Computer Science 2018-01-22 Mario Linares-Vasquez , Martin White , Carlos Bernal-Cardenas , Kevin Moran , Denys Poshyvanyk

This paper determines if a callback can be called by an event-driven framework in an unexpected state.Event-driven programming frameworks are pervasive for creating user-interactive apps on just about every modern platform.Control flow…

Programming Languages · Computer Science 2023-09-13 Shawn Meier , Sergio Mover , Gowtham Kaki , Bor-Yuh Evan Chang

App quality has been shown to be the most important indicator of app adoption. To assure quality, developers mainly use testing to find bugs in app and apply structural and GUI test coverage criteria. However, mobile apps have more…

Software Engineering · Computer Science 2019-11-22 Danilo Dominguez Perez , Wei Le

Given natural language test case description for an Android application, existing testing approaches require developers to manually write scripts using tools such as Appium and Espresso to execute the corresponding test case. This process…

Automated Program Repair (APR) is an emerging research field. Many APR techniques, for different programming language and platforms, have been proposed and evaluated on several Benchmarks. However, for our best knowledge, there not exists a…

Software Engineering · Computer Science 2018-10-15 Larissa Azevedo , Altino Dantas , Celso G. Camilo-Junior

We present Turnstile+, a high-level, macros-based metaDSL for building dependently typed languages. With it, programmers may rapidly prototype and iterate on the design of new dependently typed features and extensions. Or they may create…

Programming Languages · Computer Science 2021-07-06 Stephen Chang , Michael Ballantyne , Milo Turner , William J. Bowman

The Android OS has become the most popular mobile operating system leading to a significant increase in the spread of Android malware. Consequently, several static and dynamic analysis systems have been developed to detect Android malware.…

Cryptography and Security · Computer Science 2017-05-19 Mohammed K. Alzaylaee , Suleiman Y. Yerima , Sakir Sezer

Automatic test generation can help verify and develop the behavior of mobile applications. Test reuse based on semantic similarities between applications of the same category has been utilized to reduce the manual effort of Graphical User…

Software Engineering · Computer Science 2023-01-03 Shuqi Liu , Yu Zhou , Tingting Han , Taolue Chen

Introduction of Smart phones redefined the usage of mobile phones in the communication world. Smart phones are equipped with various sophisticated features such as Wi-Fi, GPS navigation, high resolution camera, touch screen with broadband…

Other Computer Science · Computer Science 2012-08-16 Ashokkumar Ramalingam , Prabhu Dorairaj , Saranya Ramamoorthy

The Android middleware, in particular the so-called systemserver, is a crucial and central component to Android's security and robustness. To understand whether the systemserver provides the demanded security properties, it has to be…

Cryptography and Security · Computer Science 2021-10-13 Oliver Schranz , Sebastian Weisgerber , Erik Derr , Michael Backes , Sven Bugiel

Android OS is severely fragmented by API updates and device vendors' OS customization, creating a market condition where vastly different OS versions coexist. This gives rise to compatibility crash problems where Android apps crash on…

Human-Computer Interaction · Computer Science 2024-06-04 Donghwi Kim , Hyungjun Yoon , Chang Min Park , Sujin Han , Youngjin Kwon , Steven Y. Ko , Sung-Ju Lee

Distributed systems have become increasingly prevalent in the software industry. Due to their intrinsic complexity, much research has focused on the verification of their behaviour. An active research line is around behaviour models that…

Programming Languages · Computer Science 2026-04-09 Francisco Parrinha , João Mota , António Ravara

The lack of proper documentation makes program comprehension a cumbersome process for developers. Source code summarization is one of the existing solutions to this problem. Lots of approaches have been proposed to summarize source code in…

Software Engineering · Computer Science 2020-08-31 Alireza Aghamohammadi , Maliheh Izadi , Abbas Heydarnoori