android

Build, deploy, and debug Pulp on Android devices and emulators.

13|1|Updated Apr 6, 2026
One-click install
npx skills add https://github.com/danielraffel/pulp --skill android-danielraffel
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: android
Source: https://github.com/danielraffel/pulp/tree/main/.agents/skills/android
Command: npx skills add https://github.com/danielraffel/pulp --skill android-danielraffel

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Pulp's Android skill codifies the platform-specific knowledge needed to compile, deploy, and debug the Pulp application on Android devices and emulators. It removes guesswork around NDK cross-compilation, JNI bridging, GPU rendering with Dawn/Skia, and Oboe audio integration by collecting verified commands, environment checks, and hard-won runtime workarounds.

Core Features & Use Cases

  • Environment verification and guidance for SDK/NDK, adb, and emulator setup, including host-specific install hints and Android CLI guidance.
  • Cross-compilation and APK build workflows using CMake/NDK and Gradle, plus emulator deployment and adb-driven testing patterns.
  • Runtime bringup advice: JNI symbol export, Vulkan/Skia gotchas, render-thread/Looper rules, touch coordinate and density handling, audio lifecycle and Oboe integration, and emulator-specific pitfalls.
  • Use cases: iterate on the Kotlin shell and native libpulp changes, validate UI touch routing and audio on emulators, reproduce and fix platform-specific rendering or audio bugs, and prepare Android-targeting CI checks.

Quick Start

Use the android skill to verify SDK/NDK and emulator readiness, build the debug APK with Gradle, and deploy it to an attached emulator for immediate testing.

Frequently Asked Questions about android

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I cross-compile C++ code for Android using the NDK and Gradle?▼

Cross-compile C++ for Android by configuring CMake with the NDK toolchain and Gradle to assemble a debug APK. Verify SDK/NDK environment readiness and use adb to deploy and iterate on native library changes.

How does JNI integration work for bridging Kotlin and native Android libraries?▼

JNI integration bridges Kotlin and native libraries by exporting C++ symbols correctly. Handle touch coordinate routing, density, and Looper-based render threads to ensure smooth runtime interaction between the UI and native code.

What's the best way to debug Vulkan and Skia rendering issues on Android emulators?▼

Debug Vulkan and Skia rendering on Android emulators by applying specific runtime workarounds for Vulkan swapchain formats. Use adb-driven testing patterns and runtime logging to identify and resolve GPU bringup pitfalls.

Can I use Oboe for low-latency audio bringup during Android cross-compilation?▼

Yes, Oboe handles low-latency audio bringup during Android cross-compilation. Manage the audio lifecycle carefully alongside JNI integration to prevent playback issues and ensure stable sound delivery on devices and emulators.

Why does my Android emulator fail when deploying a native APK with Dawn?▼

Android emulator deployment fails with Dawn often due to unverified SDK/NDK environments or emulator-specific Vulkan pitfalls. Verify environment readiness, apply platform-specific swapchain workarounds, and use adb for deployment.