Google Bennet Manuel and Rob Clifford Dec 11, 2025

Enhancing Android Security: Stop Malware

Article Summary

Bennet Manuel and Rob Clifford from Google just dropped a security feature so simple it's almost embarrassing we didn't have it sooner: one line of code that blocks malware from reading your app's sensitive data through accessibility APIs.

Android 16 introduces accessibilityDataSensitive, a new flag that prevents malicious apps from exploiting accessibility services to steal passwords, financial data, and inject fake touches. Google partnered with developers like Revolut during early testing to ensure the feature works seamlessly in production environments.

Key Takeaways

Critical Insight

Android 16 gives developers a trivial implementation (one flag) that stops accessibility-based malware attacks without breaking legitimate accessibility tools.

Revolut's engineering team is already migrating away from their custom protection layer in favor of this new API.

About This Article

Problem

Malicious apps can exploit accessibility API features to read sensitive information like passwords and financial details directly from the screen. They can also inject unauthorized touches into user devices.

Solution

Google added the accessibilityDataSensitive flag to Android 16 and integrated it with the existing setFilterTouchesWhenObscured method. Views marked with setFilterTouchesWhenObscured(true) are now automatically treated as sensitive data, so developers don't need to do extra work.

Impact

Apps that declare isAccessibilityTool=true without a real accessibility purpose get rejected by Google Play and blocked by Google Play Protect on user devices. This stops malware from using this method to spread.