Skip to content

TheParasiteProject/packages_apps_ColumbusService

Repository files navigation

Quick Tap Service

This is an open-source implementation of the Pixel Quick Tap gesture, written from scratch for portability and customizability.

Quick Tap, codename Columbus, is a gesture powered by AP sensors and CHRE sensor on the Pixel 4a (5G) and later that is used to activate the Google Assistant and several other actions on stock.

This app is a reverse-engineered Android client that runs as a standalone service and talks to the AP sensor and CHRE sensor for gesture functionality. No decompiled code has been used.

Features

  • Seamless integration in Settings → System → Gestures → Quick Tap with no extra changes
  • Integration with Settings search
  • Many actions to perform on gesture trigger
    • Take screenshot
    • Open assistant
    • Silence call
    • Play or pause media
    • Open notification shelf
    • See recent apps
    • Open camera
    • Toggle power menu
    • Mute calls & notifications (replicates default power + volume-up "prevent ringing" gesture)
    • Toggle flashlight
    • Toggle screen
    • Launch app and shortcut
  • Setting to control whether gesture is enabled when the screen is off
  • Contextually-appropriate haptic feedback with modern effects
    • Configurable haptic intensity for back tap
    • Reject for unavailable action (e.g. if flashlight can't turn on because camera is in use)
    • Blocking action in certain conditions (e.g. touch gesture in progress)

Integration

This service depends on following features:

  • Mendatory:
    • When using AP Sensor:
      • Accelerometer
      • Gyroscope
    • When using CHRE Sensor (Google Pixel devices):
      • Contexthub
  • General:
    • Vibrator (For haptic feedback. Optional)

This app doesn't provide proprietary resources which generally can be found on vendor apps for legal compliance.
All files (including lottie animation) in res/raw/ directory in this project are empty dummy.
If you want to use TensorFlow Lite integration or lottie animations,
create your own overlay and put those in there (with aaptflags: [ "-0 .tflite", ], if you are using RRO).

Sync this repo to packages/apps/ColumbusService.

Add the following to your device tree:

# Quick Tap
PRODUCT_PACKAGES += \
    ColumbusService

While this service is designed to be as portable and self-contained as possible, Android does not provide the necessary APIs to implement all gesture actions out-of-the-box. This means that some commits must be added to frameworks/base to expose the APIs for full functionality:

Default settings can be changed by overlaying res/values/config.xml.

Acknowledgements

License

All code in this repository is licensed under the GPL-3.0 License.

Copyright (C) 2024-2025 TheParasiteProject

About

Open-source implementation of the Pixel Quick Tap gesture for AOSP

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published