Build a complete DAT app with camera streaming and photo capture.
The material appears to be an open-source iOS sample/developer guide, and the system has already classified it as prompt-only with no secrets and no remote endpoints, indicating low overall risk. It does involve camera streaming and photo capture conceptually, so real integration would touch device/media data and local development capabilities, but no concrete high-risk red flags are evident from the provided material.
Both the material and system checks indicate no API keys, tokens, or environment variables are required; there is no described credential collection, storage, or exfiltration, so credential abuse risk is low.
The system lists no remote endpoints, and the README is primarily local integration guidance; while it mentions registration, streaming, and camera features, the provided material does not declare sending user data to external servers.
This item is classified as prompt-only, and the material consists of sample code and integration instructions rather than an executable tool wrapper; there is no indication that it launches additional processes in the host environment or requests unusual execution privileges.
The stated functionality explicitly involves camera streaming and photo capture; if implemented, the app would access camera imagery, photo data, and related iOS permission settings. This is a normal data-access surface for this type of app, and the material does not show requests for permissions beyond its stated purpose.
Positive factors include being open-source on GitHub and auditable in principle; however, the repository has 0 stars, no declared license, unknown maintenance status, and requires pulling a third-party SDK via SPM. Supply-chain maturity and maintenance visibility are limited, so additional verification is advisable before adoption.
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-ios/main/plugins/mwdat-ios/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 DAT app from scratch with live camera streaming and photo capture, including project structure, dependencies, core code, and how to run it.
A step-by-step development guide covering setup, key modules, and run instructions.
I have the basic DAT app scaffold. Complete the camera preview and photo-saving code, and explain what each key function does.
Ready-to-integrate sample code plus explanations for camera access, capture, and save flow.
My DAT app cannot open the camera or capture photos properly. Help me identify common issues and provide debugging steps, permission settings, and fixes.
A developer-focused troubleshooting checklist covering permissions, device compatibility, error handling, and fixes.
Build an iOS DAT app with camera streaming and photo capture.
This walkthrough covers app setup, registration, streaming, and capture. Pair it with the CameraAccess sample.
https://github.com/facebook/meta-wearables-dat-iosMWDATCore, MWDATCamera, and MWDATMockDevice to your targetInfo.plist (see Getting Started)A typical DAT app has these components:
MyDATApp/
├── MyDATApp.swift # App entry point, SDK init
├── ViewModels/
│ ├── WearablesViewModel.swift # Registration, device management
│ └── StreamViewModel.swift # Streaming, photo capture
└── Views/
├── MainAppView.swift # Navigation
├── RegistrationView.swift # Registration UI
└── StreamView.swift # Video preview, capture button
import MWDATCore
@main
struct MyDATApp: App {
init() {
do {
try Wearables.configure()
} catch {
assertionFailure("Wearables SDK configuration failed: \(error)")
}
}
var body: some Scene {
WindowGroup {
MainAppView()
.onOpenURL { url in
Task {
_ = try? await Wearables.shared.handleUrl(url)
}
}
}
}
}
import MWDATCore
@MainActor
class WearablesViewModel: ObservableObject {
@Published var registrationState: String = "Unknown"
@Published var devices: [DeviceIdentifier] = []
private let wearables = Wearables.shared
func observeState() {
Task {
for await state in wearables.registrationStateStream() {
self.registrationState = "\(state)"
}
}
Task {
for await devices in wearables.devicesStream() {
self.devices = devices.map { $0.identifier }
}
}
}
func register() async {
try? await wearables.startRegistration()
}
func unregister() async {
try? await wearables.startUnregistration()
}
}
import MWDATCamera
import MWDATCore
@MainActor
class StreamViewModel: ObservableObject {
@Published var currentFrame: UIImage?
@Published var streamState: String = "Stopped"
@Published var capturedPhoto: Data?
private let wearables = Wearables.shared
private var deviceSession: DeviceSession?
private var stream: Stream?
func startStream() async {
let config = StreamConfiguration(
videoCodec: .raw,
resolution: .medium,
frameRate: 24
)
let selector = AutoDeviceSelector(wearables: wearables)
do {
let deviceSession = try wearables.createSession(deviceSelector: selector)
try deviceSession.start()
// Wait for the device session to reach the started state
for await state in deviceSession.stateStream() {
if state == .started { break }
}
guard let stream = try deviceSession.addStream(config: config) else { return }
self.deviceSession = deviceSession
self.stream = stream
} catch {
return
}
guard let stream else { return }
_ = stream.statePublisher.listen { [weak self] state in
Task { @MainActor in
self?.streamState = "\(state)"
}
}
_ = stream.videoFramePublisher.listen { [weak self] frame in
guard let image = frame.makeUIImage() else { return }
Task { @MainActor in
self?.currentFrame = image
}
}
…
Set up the Meta glasses SDK and make your first connection.
Manage device session states, pause and resume flows, and availability monitoring.
Learn Swift conventions, naming, and async patterns for DAT SDK iOS development.
Stream camera video, capture frames or photos, and configure resolution and frame rate.
Identify common bugs, version conflicts, and state machine failures faster.
Guide app registration with Meta AI and camera permission request flows.
Build a complete DAT app with sessions, camera streaming, and photo capture.
Set up camera sessions, stream video, capture photos, and tune resolution.
Learn Kotlin conventions, result handling, and session patterns for DAT SDK Android.
Record polished web app UI demo videos for walkthroughs, tutorials, and showcases.
Add a data source or connector to a Power Apps code app.
Add Dataverse tables to Power Apps code apps with generated TypeScript services.