Build a complete DAT app with sessions, camera streaming, and photo capture.
The material appears to be an open-source Android sample/guide with no required secrets or declared remote endpoints, so overall risk is low. It does describe camera streaming and photo saving, which implies device data access, but based on the provided facts this remains within the normal scope of a sample development guide.
The material explicitly states that no keys or environment variables are required, and the README does not show any API tokens, account secrets, or credential injection steps, so credential exposure and abuse risk appears low.
System checks indicate no remote endpoints, and the material mainly describes local Android integration, session creation, and camera stream handling; while it mentions registration and sessions, there is no clear evidence of user data being sent to third-party services.
This item is classified as prompt-only, and the material consists of development guidance and sample code snippets rather than directly executable install scripts or a local process launcher; no request for system execution privileges beyond the stated purpose is evident.
The README explicitly involves camera stream access and saving captured photos, indicating potential access to the camera and local storage/media data. This is consistent with the stated functionality, but actual permission requests and storage locations should still be reviewed.
The source is an open-source GitHub repository, with system labeling as open-source and some community adoption (289 stars), which are positive risk-reducing signals. The missing license declaration and unknown maintenance status add some uncertainty, but not enough to raise this to high risk based on the provided material.
Copy the install command and let the AI configure it · recommended for beginners
Please install the "sample-app-guide" skill from askskill: 1. Download https://raw.githubusercontent.com/facebook/meta-wearables-dat-android/main/plugins/mwdat-android/skills/sample-app-guide/SKILL.md 2. Save it as ~/.claude/skills/sample-app-guide/SKILL.md 3. Reload skills and tell me it's ready
Guide me step by step to build a complete DAT app with session creation, camera video streaming, and photo capture saving, and provide the project structure and key code examples.
A step-by-step development guide with architecture notes, code snippets, and implementation order.
I get a black screen when integrating camera streaming in my DAT app. Based on session initialization, permission requests, stream binding, and capture logic, list debugging steps and fixes.
A diagnostic checklist for the camera black screen issue, including common causes and fixes.
Generate sample code for photo capture in a DAT app that works with existing session and camera stream modules, and explain triggering capture, saving images, and error handling.
Integratable photo capture sample code with explanations of key interfaces, save flow, and error handling.
Build an Android DAT app with registration, sessions, camera streaming, and photo capture.
Pair this with the CameraAccess sample.
AndroidManifest.xml for registration callbacks and APPLICATION_ID.Wearables in your Application.app/src/main/java/com/example/myapp/
├── MyApplication.kt
├── MainActivity.kt
├── session/
│ └── SessionViewModel.kt
└── ui/
├── RegistrationScreen.kt
└── CameraScreen.kt
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
lifecycleScope.launch {
Wearables.registrationState.collect { state ->
// Update registration UI
}
}
}
fun register() {
Wearables.startRegistration(this)
}
}
class SessionViewModel : ViewModel() {
private var session: Session? = null
private var stream: Stream? = null
fun startCameraSession() {
val createdSession = Wearables.createSession(AutoDeviceSelector()).getOrElse { error ->
throw IllegalStateException(error.description)
}
createdSession.start()
session = createdSession
stream = createdSession.addStream(
StreamConfiguration(videoQuality = VideoQuality.MEDIUM, frameRate = 24),
).getOrElse { error ->
throw IllegalStateException(error.description)
}.also { addedStream ->
addedStream.start().getOrElse { error ->
throw IllegalStateException(error.description)
}
}
}
}
viewModelScope.launch {
stream?.videoStream?.collect { frame ->
// Render preview
}
}
fun capturePhoto() {
viewModelScope.launch {
stream?.capturePhoto()
?.onSuccess { photoData ->
savePhoto(photoData.data)
}
?.onFailure { error, _ ->
showCaptureError(error.description)
}
}
}
fun stopCameraSession() {
stream?.stop()
session?.stop()
stream = null
session = null
}
Use MockDeviceKit to simulate linking glasses, permission state, and camera media without physical hardware. See MockDevice Testing for setup details.
Set up camera sessions, stream video, capture photos, and tune resolution.
Manage session and stream state with pause, resume, and device monitoring.
Diagnose common issues, compatibility problems, and session or stream debugging cases.
Helps developers set up Meta AI app registration and device permission flows.
Build display-enabled interfaces with device selection, UI components, and media playback.
Learn Kotlin conventions, result handling, and session patterns for DAT SDK Android.
Build a complete DAT app with camera streaming and photo capture.
Stream camera video, capture frames or photos, and configure resolution and frame rate.
Guide app registration with Meta AI and camera permission request flows.
Learn Swift conventions, naming, and async patterns for DAT SDK iOS development.
Record polished web app UI demo videos for walkthroughs, tutorials, and showcases.
Build, prototype, and debug MCP apps locally with UI support.