Directories
¶
| Path | Synopsis |
|---|---|
|
Package activity provides Go bindings for Android NativeActivity.
|
Package activity provides Go bindings for Android NativeActivity. |
|
Package asset provides Go bindings for Android Asset Manager.
|
Package asset provides Go bindings for Android Asset Manager. |
|
Package audio provides Go bindings for Android AAudio.
|
Package audio provides Go bindings for Android AAudio. |
|
Package binder provides Go bindings for Android Binder IPC.
|
Package binder provides Go bindings for Android Binder IPC. |
|
Package binderprocess provides access to ABinderProcess_* functions that are not part of the public NDK headers but available at runtime via dlsym in libbinder_ndk.so.
|
Package binderprocess provides access to ABinderProcess_* functions that are not part of the public NDK headers but available at runtime via dlsym in libbinder_ndk.so. |
|
Package bitmap provides Go bindings for Android Bitmap (jnigraphics).
|
Package bitmap provides Go bindings for Android Bitmap (jnigraphics). |
|
Package camera provides Go bindings for Android Camera2 NDK.
|
Package camera provides Go bindings for Android Camera2 NDK. |
|
capi
|
|
|
aaudio
Raw CGo bindings for Android AAudio
|
Raw CGo bindings for Android AAudio |
|
asset
Raw CGo bindings for Android asset manager
|
Raw CGo bindings for Android asset manager |
|
binder
Raw CGo bindings for Android Binder NDK
|
Raw CGo bindings for Android Binder NDK |
|
bitmap
Raw CGo bindings for Android Bitmap
|
Raw CGo bindings for Android Bitmap |
|
camera
Raw CGo bindings for Android Camera2 NDK
|
Raw CGo bindings for Android Camera2 NDK |
|
choreographer
Raw CGo bindings for Android choreographer
|
Raw CGo bindings for Android choreographer |
|
configuration
Raw CGo bindings for Android configuration
|
Raw CGo bindings for Android configuration |
|
egl
Raw CGo bindings for EGL
|
Raw CGo bindings for EGL |
|
font
Raw CGo bindings for Android Font
|
Raw CGo bindings for Android Font |
|
gles2
Raw CGo bindings for OpenGL ES 2.0
|
Raw CGo bindings for OpenGL ES 2.0 |
|
gles3
Raw CGo bindings for OpenGL ES 3.0
|
Raw CGo bindings for OpenGL ES 3.0 |
|
hardwarebuffer
Raw CGo bindings for Android hardware buffer
|
Raw CGo bindings for Android hardware buffer |
|
imagedecoder
Raw CGo bindings for Android Image Decoder
|
Raw CGo bindings for Android Image Decoder |
|
input
Raw CGo bindings for Android input
|
Raw CGo bindings for Android input |
|
logging
Raw CGo bindings for Android logging
|
Raw CGo bindings for Android logging |
|
looper
Raw CGo bindings for Android looper
|
Raw CGo bindings for Android looper |
|
media
Raw CGo bindings for Android Media NDK
|
Raw CGo bindings for Android Media NDK |
|
midi
Raw CGo bindings for Android MIDI
|
Raw CGo bindings for Android MIDI |
|
multinetwork
Raw CGo bindings for Android Multi-Network
|
Raw CGo bindings for Android Multi-Network |
|
nativeactivity
Raw CGo bindings for Android NativeActivity
|
Raw CGo bindings for Android NativeActivity |
|
nativewindow
Raw CGo bindings for Android native window
|
Raw CGo bindings for Android native window |
|
neuralnetworks
Raw CGo bindings for Android Neural Networks
|
Raw CGo bindings for Android Neural Networks |
|
performancehint
Raw CGo bindings for Android Performance Hint
|
Raw CGo bindings for Android Performance Hint |
|
permission
Raw CGo bindings for Android Permission Manager
|
Raw CGo bindings for Android Permission Manager |
|
persistablebundle
Raw CGo bindings for Android PersistableBundle NDK
|
Raw CGo bindings for Android PersistableBundle NDK |
|
sensor
Raw CGo bindings for Android sensor
|
Raw CGo bindings for Android sensor |
|
sharedmem
Raw CGo bindings for Android Shared Memory
|
Raw CGo bindings for Android Shared Memory |
|
storage
Raw CGo bindings for Android Storage Manager
|
Raw CGo bindings for Android Storage Manager |
|
surfacecontrol
Raw CGo bindings for Android SurfaceControl
|
Raw CGo bindings for Android SurfaceControl |
|
surfacetexture
Raw CGo bindings for Android SurfaceTexture
|
Raw CGo bindings for Android SurfaceTexture |
|
sync
Raw CGo bindings for Android Sync
|
Raw CGo bindings for Android Sync |
|
thermal
Raw CGo bindings for Android thermal
|
Raw CGo bindings for Android thermal |
|
trace
Raw CGo bindings for Android trace
|
Raw CGo bindings for Android trace |
|
vulkan
Raw CGo bindings for Vulkan
|
Raw CGo bindings for Vulkan |
|
Package choreographer provides Go bindings for Android AChoreographer.
|
Package choreographer provides Go bindings for Android AChoreographer. |
|
cmd
|
|
|
ndkcli
command
|
|
|
Package config provides Go bindings for Android AConfiguration.
|
Package config provides Go bindings for Android AConfiguration. |
|
Package egl provides Go bindings for EGL.
|
Package egl provides Go bindings for EGL. |
|
examples
|
|
|
activity/overview
command
NativeActivity lifecycle overview.
|
NativeActivity lifecycle overview. |
|
asset/overview
command
Example: AAssetManager API overview and directory iteration.
|
Example: AAssetManager API overview and directory iteration. |
|
audio/basic-playback
command
Basic AAudio playback example.
|
Basic AAudio playback example. |
|
audio/recording
command
Audio recording (capture) example.
|
Audio recording (capture) example. |
|
audio/state-machine
command
AAudio stream state machine example.
|
AAudio stream state machine example. |
|
audio/stream-info
command
Stream information query example.
|
Stream information query example. |
|
binder/overview
command
Binder IPC API overview.
|
Binder IPC API overview. |
|
bitmap/formats
command
Example: Android bitmap format constants and error codes.
|
Example: Android bitmap format constants and error codes. |
|
camera/capture-session
command
Camera capture session lifecycle example.
|
Camera capture session lifecycle example. |
|
camera/display
command
Camera preview display using NativeActivity with OpenGL ES rendering.
|
Camera preview display using NativeActivity with OpenGL ES rendering. |
|
camera/manager
command
Camera manager lifecycle example.
|
Camera manager lifecycle example. |
|
camera/overview
command
Camera2 pipeline overview.
|
Camera2 pipeline overview. |
|
choreographer/vsync
command
Example: obtain the Android Choreographer singleton.
|
Example: obtain the Android Choreographer singleton. |
|
config/device-config
command
Example: query device configuration properties.
|
Example: query device configuration properties. |
|
egl/config-query
command
Example: EGL configuration attribute query.
|
Example: EGL configuration attribute query. |
|
egl/initialize
command
Example: EGL initialization and display query.
|
Example: EGL initialization and display query. |
|
egl/offscreen-render
command
EGL offscreen rendering with pbuffer and OpenGL ES 2.
|
EGL offscreen rendering with pbuffer and OpenGL ES 2. |
|
egl/pbuffer-context
command
Example: offscreen pbuffer surface with an OpenGL ES 2 context.
|
Example: offscreen pbuffer surface with an OpenGL ES 2 context. |
|
gles2/clear-screen
command
Simplest GLES2 example: clear the framebuffer to a known color and verify.
|
Simplest GLES2 example: clear the framebuffer to a known color and verify. |
|
gles2/framebuffer
command
Render-to-texture via an offscreen framebuffer object (FBO).
|
Render-to-texture via an offscreen framebuffer object (FBO). |
|
gles2/texture
command
Textured quad: upload pixel data to a texture and render it on a quad.
|
Textured quad: upload pixel data to a texture and render it on a quad. |
|
gles2/triangle
command
Hello Triangle: the classic first OpenGL ES 2.0 program.
|
Hello Triangle: the classic first OpenGL ES 2.0 program. |
|
gles3/instanced-drawing
command
Instanced drawing example using OpenGL ES 3.0.
|
Instanced drawing example using OpenGL ES 3.0. |
|
gles3/sync-fences
command
Sync fence example using OpenGL ES 3.0.
|
Sync fence example using OpenGL ES 3.0. |
|
gles3/transform-feedback
command
Transform feedback example using OpenGL ES 3.0.
|
Transform feedback example using OpenGL ES 3.0. |
|
gles3/vertex-array-objects
command
Vertex Array Object (VAO) example using OpenGL ES 3.0.
|
Vertex Array Object (VAO) example using OpenGL ES 3.0. |
|
hint/overview
command
Performance Hint API overview.
|
Performance Hint API overview. |
|
hwbuf/allocate-lock
command
Hardware buffer allocation and CPU-lock lifecycle.
|
Hardware buffer allocation and CPU-lock lifecycle. |
|
hwbuf/formats-usage
command
Hardware buffer formats and usage flags overview.
|
Hardware buffer formats and usage flags overview. |
|
image/overview
command
AImageDecoder API overview.
|
AImageDecoder API overview. |
|
input/event-types
command
Example: input event type system and processing pattern.
|
Example: input event type system and processing pattern. |
|
input/touch-handling
command
Touch and key input event handling example.
|
Touch and key input event handling example. |
|
log/priorities
command
Example: Android log priority levels and their string representations.
|
Example: Android log priority levels and their string representations. |
|
looper/basic-loop
command
Basic ALooper event loop example.
|
Basic ALooper event loop example. |
|
looper/timeout-poll
command
Timeout-based ALooper polling example.
|
Timeout-based ALooper polling example. |
|
media/codec-lifecycle
command
MediaCodec full lifecycle example.
|
MediaCodec full lifecycle example. |
|
media/decoder-setup
command
Video decoder setup example.
|
Video decoder setup example. |
|
media/format-create
command
Media format creation and property access example.
|
Media format creation and property access example. |
|
media/muxer-tracks
command
Muxer track format preparation example.
|
Muxer track format preparation example. |
|
midi/overview
command
MIDI API overview and reference example.
|
MIDI API overview and reference example. |
|
permission/check-permissions
command
Check common Android permissions for the current process.
|
Check common Android permissions for the current process. |
|
persistablebundle/overview
command
PersistableBundle API overview.
|
PersistableBundle API overview. |
|
sensor/accelerometer
command
Example: accelerometer sensor detail and event-queue setup.
|
Example: accelerometer sensor detail and event-queue setup. |
|
sensor/event-loop
command
Sensor event loop pattern combining sensor and looper packages.
|
Sensor event loop pattern combining sensor and looper packages. |
|
sensor/list-sensors
command
Example: list default sensors and their properties.
|
Example: list default sensors and their properties. |
|
sharedmem/overview
command
Example: sharedmem package overview
|
Example: sharedmem package overview |
|
storage/obb-manager
command
OBB storage manager lifecycle example.
|
OBB storage manager lifecycle example. |
|
surfacecontrol/transaction
command
Transaction lifecycle and chaining pattern example.
|
Transaction lifecycle and chaining pattern example. |
|
surfacetexture/gl-rendering
command
SurfaceTexture GL rendering pipeline example.
|
SurfaceTexture GL rendering pipeline example. |
|
surfacetexture/overview
command
ASurfaceTexture API overview.
|
ASurfaceTexture API overview. |
|
sync/overview
command
Example: sync package overview
|
Example: sync package overview |
|
thermal/monitor
command
Example: thermal status monitoring.
|
Example: thermal status monitoring. |
|
thermal/status-polling
command
Thermal status polling example.
|
Thermal status polling example. |
|
trace/basic-tracing
command
Basic systrace example: synchronous sections, asynchronous sections, and counters.
|
Basic systrace example: synchronous sections, asynchronous sections, and counters. |
|
trace/function-tracing
command
Function-level tracing with defer.
|
Function-level tracing with defer. |
|
trace/nested-sections
command
Nested trace sections and counters example.
|
Nested trace sections and counters example. |
|
window/formats
command
Example: ANativeWindow pixel format constants and API overview.
|
Example: ANativeWindow pixel format constants and API overview. |
|
window/software-render
command
Software rendering to an ANativeWindow.
|
Software rendering to an ANativeWindow. |
|
Package font provides Go bindings for Android Font.
|
Package font provides Go bindings for Android Font. |
|
Package gameactivity provides Go bindings for the AGDK GameActivity C library.
|
Package gameactivity provides Go bindings for the AGDK GameActivity C library. |
|
Package gles2 provides Go bindings for OpenGL ES 2.0.
|
Package gles2 provides Go bindings for OpenGL ES 2.0. |
|
Package gles3 provides Go bindings for OpenGL ES 3.0.
|
Package gles3 provides Go bindings for OpenGL ES 3.0. |
|
Package hint provides Go bindings for Android performance hint management.
|
Package hint provides Go bindings for Android performance hint management. |
|
Package hwbuf provides Go bindings for Android HardwareBuffer.
|
Package hwbuf provides Go bindings for Android HardwareBuffer. |
|
Package image provides Go bindings for Android ImageDecoder.
|
Package image provides Go bindings for Android ImageDecoder. |
|
Package input provides Go bindings for Android Input events.
|
Package input provides Go bindings for Android Input events. |
|
internal
|
|
|
Package jni provides JNI helper functions for Android NativeActivity operations that have no NDK C API equivalent (permission dialogs, Toast messages, SurfaceTexture creation from Java).
|
Package jni provides JNI helper functions for Android NativeActivity operations that have no NDK C API equivalent (permission dialogs, Toast messages, SurfaceTexture creation from Java). |
|
Package log provides Go bindings for Android logging.
|
Package log provides Go bindings for Android logging. |
|
Package looper provides Go bindings for Android ALooper.
|
Package looper provides Go bindings for Android ALooper. |
|
Package media provides Go bindings for Android Media NDK.
|
Package media provides Go bindings for Android Media NDK. |
|
Package midi provides Go bindings for Android MIDI.
|
Package midi provides Go bindings for Android MIDI. |
|
Package net provides Go bindings for Android multinetwork APIs.
|
Package net provides Go bindings for Android multinetwork APIs. |
|
Package nnapi provides Go bindings for Android Neural Networks API (NNAPI).
|
Package nnapi provides Go bindings for Android Neural Networks API (NNAPI). |
|
Package permission provides Go bindings for Android Permission Manager.
|
Package permission provides Go bindings for Android Permission Manager. |
|
Package persistablebundle provides Go bindings for Android PersistableBundle.
|
Package persistablebundle provides Go bindings for Android PersistableBundle. |
|
Package sensor provides Go bindings for Android Sensor NDK.
|
Package sensor provides Go bindings for Android Sensor NDK. |
|
Package sharedmem provides Go bindings for Android shared memory.
|
Package sharedmem provides Go bindings for Android shared memory. |
|
Package storage provides Go bindings for Android Storage Manager.
|
Package storage provides Go bindings for Android Storage Manager. |
|
Package surfacecontrol provides Go bindings for Android SurfaceControl.
|
Package surfacecontrol provides Go bindings for Android SurfaceControl. |
|
Package surfacetexture provides Go bindings for Android SurfaceTexture.
|
Package surfacetexture provides Go bindings for Android SurfaceTexture. |
|
Package sync provides Go bindings for Android sync primitives.
|
Package sync provides Go bindings for Android sync primitives. |
|
tests
|
|
|
e2e
command
E2E test for ndk idiomatic Go packages on Android.
|
E2E test for ndk idiomatic Go packages on Android. |
|
e2e/audio-inject
command
Audio injector: streams a sine wave to the Android emulator's virtual microphone via the gRPC injectAudio API.
|
Audio injector: streams a sine wave to the Android emulator's virtual microphone via the gRPC injectAudio API. |
|
e2e/audio-recording-e2e
command
E2E test: exercises the full AAudio input stream lifecycle at 48 kHz.
|
E2E test: exercises the full AAudio input stream lifecycle at 48 kHz. |
|
Package thermal provides Go bindings for Android thermal management.
|
Package thermal provides Go bindings for Android thermal management. |
|
tools
|
|
|
cmd/capigen
command
Command capigen generates raw CGo binding packages from spec YAML and manifest configuration.
|
Command capigen generates raw CGo binding packages from spec YAML and manifest configuration. |
|
cmd/cligen
command
Command cligen generates cobra CLI subcommands for all exported functions and methods in the NDK idiomatic packages.
|
Command cligen generates cobra CLI subcommands for all exported functions and methods in the NDK idiomatic packages. |
|
cmd/headerspec
command
Command headerspec generates spec YAML and capi/ Go packages from NDK C headers using clang AST.
|
Command headerspec generates spec YAML and capi/ Go packages from NDK C headers using clang AST. |
|
cmd/idiomgen
command
Command idiomgen generates idiomatic Go packages from specs and overlays.
|
Command idiomgen generates idiomatic Go packages from specs and overlays. |
|
cmd/ndk-build
command
Command ndk-build produces a signed Android APK from a Go package using the Android SDK/NDK toolchain.
|
Command ndk-build produces a signed Android APK from a Go package using the Android SDK/NDK toolchain. |
|
cmd/ndkcli-commands
command
Command ndkcli-commands parses cmd/ndkcli/ source files and prints the full cobra command tree without compiling the binary (which requires Android NDK libraries).
|
Command ndkcli-commands parses cmd/ndkcli/ source files and prints the full cobra command tree without compiling the binary (which requires Android NDK libraries). |
|
cmd/specgen
command
Command specgen extracts structured YAML specs from c2ffi JSON output (or legacy Go AST parsing for test fixtures).
|
Command specgen extracts structured YAML specs from c2ffi JSON output (or legacy Go AST parsing for test fixtures). |
|
pkg/apkbuild
Package apkbuild provides functionality for building signed Android APKs from Go packages using the Android SDK/NDK toolchain.
|
Package apkbuild provides functionality for building signed Android APKs from Go packages using the Android SDK/NDK toolchain. |
|
pkg/c2ffi
Package c2ffi parses c2ffi JSON output and converts it to specmodel.Spec.
|
Package c2ffi parses c2ffi JSON output and converts it to specmodel.Spec. |
|
pkg/capigen
Package capigen generates raw CGo binding packages from spec YAML and manifest configuration.
|
Package capigen generates raw CGo binding packages from spec YAML and manifest configuration. |
|
pkg/headerspec
Package headerspec parses clang JSON AST output and generates spec YAML.
|
Package headerspec parses clang JSON AST output and generates spec YAML. |
|
pkg/overlaymodel
Package overlaymodel defines the YAML overlay schema for hand-written semantic annotations.
|
Package overlaymodel defines the YAML overlay schema for hand-written semantic annotations. |
|
pkg/specgen
Package specgen extracts structured API specs from Go source files produced by c-for-go.
|
Package specgen extracts structured API specs from Go source files produced by c-for-go. |
|
pkg/specmodel
Package specmodel defines the YAML spec schema produced by specgen and consumed by idiomgen.
|
Package specmodel defines the YAML spec schema produced by specgen and consumed by idiomgen. |
|
Package trace provides Go bindings for Android native tracing.
|
Package trace provides Go bindings for Android native tracing. |
|
Package vulkan provides Go bindings for Vulkan on Android.
|
Package vulkan provides Go bindings for Vulkan on Android. |
|
Package window provides Go bindings for Android NativeWindow.
|
Package window provides Go bindings for Android NativeWindow. |
Click to show internal directories.
Click to hide internal directories.