explaingit

meta-quest/portal-samples

15KotlinAudience · developerComplexity · 3/5Setup · hard

TLDR

A starter Android app from Meta showing developers how to build for Meta Portal smart displays, with working examples of camera preview, audio recording, permission handling, and Material 3 UI using Kotlin and Jetpack Compose.

Mindmap

mindmap
  root((portal-samples))
    What it shows
      Camera preview
      Audio recording
      Permission handling
      Material 3 UI
    Tech used
      Kotlin
      Jetpack Compose
      Android SDK
    AI dev path
      hzdb tool
      Portal documentation
      AI coding assistant
    Setup
      USB cable required
      Enable developer mode
      Push via Android tools
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Use the camera and audio foundation from this sample to quickly start building a video calling or monitoring app for Meta Portal hardware.

USE CASE 2

Copy the permission-handling code as a boilerplate for any Portal app that needs camera or microphone access.

USE CASE 3

Connect an AI coding assistant via the hzdb tool to get Portal-specific design guidance without reading through all the Portal documentation manually.

Tech stack

KotlinJetpack ComposeAndroid SDK

Getting it running

Difficulty · hard Time to first run · 1h+

Requires a physical Meta Portal device connected via USB cable with developer mode enabled, no emulator support for Portal-specific hardware.

In plain English

Portal Samples is a starter Android application provided by Meta that shows developers how to build apps for Meta Portal devices. Meta Portal is a line of smart display products, available in tabletop and TV form factors, that run Android but have specific hardware constraints and design rules different from phones or tablets. This sample is meant to give developers a working foundation to build on rather than starting from scratch. The sample app covers the most common things a developer would need to do on Portal hardware. It demonstrates how to handle permissions for the camera, microphone, and other device features, how to show a live camera preview, how to record and play back audio, and how to build a basic interface using Android's Material 3 design components. All of this is built with Kotlin and Jetpack Compose, which are the standard modern tools for Android development. The project also promotes an AI-assisted development path. It references a tool called hzdb that connects your AI coding assistant to documentation about Portal's specific constraints and design requirements. The idea is that instead of reading through all the Portal documentation manually, you can describe what you want to build to your AI coding tool and it will have the relevant Portal knowledge already loaded. To use the sample, you connect a Portal device to your computer with a USB cable, enable developer mode on the device, build the project, and push the app to the device using standard Android tools. The repository includes build commands and links to Meta's official Portal development documentation for anyone who needs the full setup walkthrough.

Copy-paste prompts

Prompt 1
I have the portal-samples project open. Add a Jetpack Compose screen that overlays the current time and date on top of the live camera preview.
Prompt 2
Based on portal-samples, write the Kotlin code to record a 30-second audio clip and save it to local storage on a Meta Portal device.
Prompt 3
How do I enable developer mode on a Meta Portal device and deploy the sample app to it from the command line using adb?
Prompt 4
I want to add a background service to portal-samples that listens for a wake word using the microphone. Show me how to structure the service in Kotlin.
Open on GitHub → Explain another repo

← meta-quest on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.