Platform-specific API
Platform headers are not included by <huxerui/huxerui.h> unless needed by the selected entry. Include them explicitly.
Android
Section titled “Android”<huxerui/android/platform_module.h>:android::PlatformModuleFactory::create(JNIEnv*, jobject, options, events)returns the shared module instance callbacks.<huxerui/android/platform_view.h>:android::PlatformViewFactorycreates, updates, and disposes one Java View through JNI; the adapter promotes a valid returned local reference for its mounted lifetime.<huxerui/android/external_texture.h>: move-onlyandroid::ExternalTextureSource(Size)publishes aBitmap, exposesTexture(), and ends publication withFinish().<huxerui/android/jni.h>: UTF-8/string and byte-array conversion plus move-onlyandroid::LocalRef<Reference>ownership. The reference helper deletes only its owned local reference.
All JNI arguments and returned local references belong to the current callback’s JNIEnv* and UI thread unless the platform implementation explicitly promotes them.
iOS and macOS
Section titled “iOS and macOS”<huxerui/ios/platform_view.h>and<huxerui/macos/platform_view.h>: factory callbacks create, update, and dispose oneUIView*orNSView*on the main thread.<huxerui/ios/external_texture.h>and<huxerui/macos/external_texture.h>: move-only sources publishCVPixelBufferRefframes and expose a sharedExternalTexturehandle.
The adapter strongly retains the native view returned from create for its compatible mounted lifetime and invokes the factory’s optional dispose callback before releasing that hosted instance.
Windows
Section titled “Windows”<huxerui/windows/platform_view.h>:windows::PlatformViewFactorycreates anHWNDchild of the supplied parent, updates its payload, and disposes it on the window UI thread.<huxerui/windows/external_texture.h>:ExternalTexturePixelFormatselectsRgba8888orBgra8888.ExternalTextureFramesupplies pixel size, row stride, format, logical size, and byte span with straight alpha.Publishcopies required rows before returning, so the caller may reuse the span.
<huxerui/linux/external_texture.h> declares ExternalTexturePixelFormat, ExternalTextureFrame, and the same copied RGBA/BGRA frame contract as Windows through linux::ExternalTextureSource.
The pinned revision does not publish a Linux PlatformView factory header.
<huxerui/web/platform_view.h>: callbacks own anemscripten::valDOM object and receive immutable replacement payloads.<huxerui/web/external_texture.h>:web::ExternalTextureSourcepublishes anemscripten::valvideo frame.<huxerui/web/navigation.h>:BrowserNavigationStack(root, path, resolver, codec)synchronizes typed navigation with same-document browser history. The codec must provideDecode(location)andEncode(path); exactly one stack may own URL synchronization in a document.
Boundary classification
Section titled “Boundary classification”These headers are platform-integration API, not portable component API.
Names in huxerui::detail, including browser coordinator and binding machinery, are implementation contracts and are intentionally omitted from application guidance.
Use the matching platform guide for backend limitations and the shared PlatformModule, PlatformView, or ExternalTexture page for consumer ownership.

