بنقرة واحدة
dat-conventions
Kotlin patterns, DatResult, session and capability conventions for DAT SDK Android development
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Kotlin patterns, DatResult, session and capability conventions for DAT SDK Android development
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Session and Stream capability setup, video frames, photo capture, resolution and frame rate configuration
Common issues, Developer Mode, version compatibility, and session and stream diagnosis
Display capability setup, display-capable device selection, UI DSL, icons, buttons, images, and video playback
SDK setup, Gradle integration, AndroidManifest configuration, and first connection to Meta glasses
MockDeviceKit for testing without physical glasses hardware
App registration with Meta AI and device permission flows
| name | dat-conventions |
| description | Kotlin patterns, DatResult, session and capability conventions for DAT SDK Android development |
| Task | Command |
|---|---|
| Build app | ./gradlew assembleDebug |
| Run tests | ./gradlew test |
| Install app | ./gradlew installDebug |
| Lint app | ./gradlew lint |
The SDK is organized into four public modules:
Wearables.initialize(context)
val session = Wearables.createSession(AutoDeviceSelector()).getOrElse { error ->
throw IllegalStateException(error.description)
}
session.start()
val stream = session.addStream(StreamConfiguration()).getOrElse { error ->
throw IllegalStateException(error.description)
}
stream.start().getOrElse { error ->
throw IllegalStateException(error.description)
}
DatResult<T, E> for typed success and failure handlingStateFlow and FlowSession first, then attach capabilities such as Stream or DisplayWearables.checkPermissionStatus(Permission.CAMERA)
.onSuccess { status -> /* handle status */ }
.onFailure { error, _ -> /* handle error */ }
Avoid getOrThrow() in user-facing samples. Surface typed errors from DatResult instead.
| Type | Purpose | Example |
|---|---|---|
Session | Device connection lifecycle | Wearables.createSession(...) |
Stream | Camera capability on a session | session.addStream(...) |
Display | Display capability on a session | session.addDisplay(...) |
*Selector | Device targeting | AutoDeviceSelector |
*Error | Typed failure surface | SessionError, StreamError |
Wearables — SDK entry pointSession — lifecycle for an interaction with a linked deviceStream — camera capability attached to a sessionDisplay — display capability attached to a sessionStreamConfiguration — video quality and frame rate configurationMockDeviceKit — simulated device environment for testingIf your editor supports remote MCP servers, connect https://mcp.developer.meta.com/wearables and use search_dat_docs for current DAT setup, session lifecycle, camera streaming, MockDeviceKit, permissions, and exact API symbols. This public docs server does not require authentication; do not configure tokens, OAuth, or custom authorization headers for it.
Use llms.txt when your tool only supports static reference context.
val mockDeviceKit = MockDeviceKit.getInstance(context)
mockDeviceKit.enable()
val device = mockDeviceKit.pairGlasses(GlassesModel.RAYBAN_META).getOrThrow()
Use MockDeviceKit to drive registration, device availability, streaming media, and permission scenarios without physical hardware.
Wearables.initialize(context)DatResult failures from createSession, start, addStream, addDisplay, or capturePhoto