November 6, 2019 update:
  • There's a new open source Cardboard SDK for iOS and Android NDK that offers a streamlined API, improved device compatibility, and built-in viewer profile QR code scanning. A corresponding Unity package (SDK) is planned for a future release. We recommend that all developers actively building for Google Cardboard migrate (iOS, Android NDK) to the new Cardboard SDK.
October 15, 2019 update:
  • The Daydream View VR headset is no longer available for purchase. However, you can continue to use the existing Google VR SDK to update and distribute your apps to the Google Play Store, and make them available to users in the Daydream app.

Daydream App Quality Requirements - Publishing

PB-P1: App adheres to all existing Google Play Content Policies

Your app must adhere to Google Play’s Global Content Policy, and you must select a rating for your application.

PB-P2: App has a VR Icon

Users will be able to launch your app from the standard Android 2D home screen. Users will also be able to launch your app from an in-VR home screen. To have your app appear in VR Home, you need to provide a VR icon. This icon consists of two 512x512 PNG files. The files provide a foreground and background layer, with the background applied to a mesh.

Photoshop stencil files for you to use are available here. An example of a complete icon is included below:

Guidelines for foreground assets:

  • Do provide a simple outline or shape as your primary logo or mark.
  • Do leverage unique aspects of your brand.
  • Don’t use watermarks like VR or headset icons.
  • Don’t use text in the foreground image unless it is a part of a logo.

Requirements for background assets:

  • Do fill out the edges of the background; don’t leave them blank, or the sides may flicker in VR (note how the sides of the background layer are red in the YouTube icon above).
  • Do reduce visual information along the edges.
  • Don’t use watermarks like VR or Cardboard
  • Don’t use text in the background texture.

Neither your VR or 2D icon should contain a VR headset image, as they clutter the launcher when every icon uses them.

Setting foreground and background assets

To support a VR-specific app tile, specify a new meta-data entry within your application’s manifest:

  <meta-data android:name="com.google.android.vr.icon"
             android:resource="icon resource" />
  <meta-data android:name="com.google.android.vr.icon_background"
             android:resource="background resource" />

For example:

  <meta-data android:name="com.google.android.vr.icon"
             android:resource="@drawable/youtube_vr_icon" />
  <meta-data android:name="com.google.android.vr.icon_background"
             android:resource="@drawable/youtube_vr_icon_background" />

A more complete example:

  <activity
      android:name=".YouTubeVrActivity"
      ...>
      <meta-data android:name="com.google.android.vr.icon"
                 android:resource="@drawable/youtube_vr_icon" />
      <meta-data android:name="com.google.android.vr.icon_background"
                 android:resource="@drawable/youtube_vr_icon_background" />
      <intent-filter>
          <action android:name="android.intent.action.MAIN" />
          <category android:name="com.google.intent.category.DAYDREAM"/>
      </intent-filter>
  </activity>

PB-P3: App has a 360° stereo photosphere

In Play VR, when users are viewing the details of your app, you need to display a photosphere as the surrounding environment. This file is included as part of your app submission.

The Photosphere file requirements are:

  • Image is stereo 360°.
    • If your app contains only mono content (for example, captured in real life), it's okay to use a mono image (that is, the same image in each eye) as long as the image is still in the correct stereo format.
  • 4096 x 4096px size.
  • No larger than 15MB.
  • PNG or JPEG (PNG recommended — our system will compress your image, so this avoids double compression).
  • Equirectangular stacked stereo format.
  • No alpha.
  • For stereoscopic images, objects in the scene should be more than 2.5m away to avoid depth conflicts with the rendered App Details UI.

The photosphere itself must satisfy the following additional requirements:

  • No objectionable content. For instance, even if you are creating a horror app, the photosphere cannot contain graphic violence. It should convey that the app is scary, while still being appropriate for all audiences.
  • The photosphere should be taken from roughly 1.6 meters off of the ground or above some type of support structure that the user is presumably standing on. The absence of a floor or support structure may cause discomfort for users when they look down.

PB-P4: App content matches description

Your app must match the way it is described in the Play Store. This can include the app title, description, images within the app, and the way the app loads. If an app is meant to be scary or shocking, users should have their expectations set ahead of time when they are installing and loading the app. This doesn’t mean that apps can’t be surprising or scary, or that all of the thrills an app provides need to be spoiled ahead of time.

PB-P5: App is for users 13 years and older

Daydream should not be used by children under the age of 13. We will reject apps that appear to be designed primarily for children under the age of 13. Daydream apps are not eligible to participate in the Designed for Families program.

PB-P6: App has the correct Motion Intensity level

Virtual motion is a major contributor to user discomfort in VR applications. Virtual motion is defined as changing the position or rotation of the user's virtual head position (and hence camera) without the user performing those movements using their own head at 1:1 scale.

Examples of virtual motion include:

  • Pressing a button to turn the user's head.
  • Flying at a constant speed.
  • Accelerating in a virtual vehicle.

No Motion (0 degrees of freedom)

Examples of motion permitted in the No Motion profile:

  • User-controlled head movement that does not cause a disconnect between the virtual camera and the user's head pose.
  • Instantaneous teleportation to a new location in the environment. Developers may optionally fade out to black and back to aid with the transition.

The following types of motion are not permitted in the No Motion profile:

  • Teleportation to another part of the environment where the user experiences camera movement such as a zooming motion.
  • Any other form of virtual motion not explicitly permitted.

Moderate Motion (2 degrees of translated virtual motion)

The moderate motion profile permits 2 degrees of freedom of translated virtual motion at a time. The 2 degrees of translated motion are for any given moment in time, and do not need to remain the same throughout the application. An application may incorporate more than one type of motion.

Examples of motion permitted in the Moderate Motion profile:

  • Virtual walking on a flat plane (e.g., pressing and holding a controller button to walk forward).
  • Riding an elevator up and down.
  • Any other movements which have only two degrees of translated motion at a time.

The following types of motion are not permitted in the Moderate Motion profile:

  • Extreme acceleration or deceleration.
  • Rotation of the user viewpoint that does not correspond to the user's head motion.

Intense Motion (2+ degrees of virtual motion)

The Intense Motion profile permits any virtual movement with 2+ degrees of motion. For example, rotating while moving in another direction, or going up or down a hill while moving. Applications that have drastic changes in acceleration and deceleration may also be grouped into Intense Motion, as will applications that move the horizon line, or suddenly take control of movement away from the user.

Examples of motion permitted in the Intense Motion profile:

  • Roller coasters
  • Virtual flying
  • Skiing
  • Driving cars over jumps and hills

PB-P7: App names must adhere to naming policy

In addition to the existing Android policy for app names, Daydream apps must avoid using certain additional strings in their name, to reduce redundancy, inaccuracies, clutter, and confusion within the store.

  • Daydream
  • Daydream VR
  • Misspellings like Daysdream or Daydreem
  • Cardboard
  • Android VR
  • Google VR

PB-P8: App uses correct platform terminology

Apps must use correct terminology for various Daydream controls and components if they directly refer to them:

  • Daydream button
  • App button
  • Touchpad
    • Swipe the touchpad to scroll, move, or rotate an object.
    • Click the touchpad to select.
  • Cursor (visual indicator of where you are pointing).

PB-P9: App does not use the Daydream logo

Your app must not contain the Daydream logo in its icon, or inside of the application.

PB-P10: App must be able to be reviewed in full

If the application requires a user account or sign-in to function, test user accounts must be provided for review purposes. If the application requires a license to function, test licenses must be provided for review purposes.