FluorescentHallucinogen / pwabuilder-oculus

PWABuilder platform for Oculus PWAs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Microsoft.PWABuilder.Oculus

This is PWABuilder's Oculus platform. It's used by PWABuilder to generate Oculus app packages that can be submitted to the Oculus store.

This platform uses the Oculus CLI to create Oculus app packages from PWAs.

Running locally

Open the Microsoft.PWABuilder.Oculus.sln in Visual Studio 2022. Hit F5 to run the web app. It will launch https://localhost:7115.

To test the package generation, load https://localhost:7115, and it will show a page where you can test the service.

You can also try the published production service at https://pwabuilder-oculus.centralus.cloudapp.azure.com

Alternately, you can POST to /api/packages/create with the following JSON body:

{
  "packageId": "com.sadchonks",
  "name": "Sad Chonks",
  "url": "https://sadchonks.com",
  "versionCode": 1,
  "versionName": "1.0.0.0",
  "signingMode": 0,
  "manifestUrl": "https://sadchonks.com/manifest.json",
  "existingSigningKey": {
    "keyStoreFile": "",
    "storePassword": "",
    "alias": "",
    "password": ""
  },
  "manifest": {
    "short_name": "Chonks",
    "name": "Sad Chonks",
    "description": "Your daily source for Sad Chonks",
    "categories": [
      "cats",
      "memes"
    ],
    "screenshots": [
      {
        "src": "/chonkscreenshot1.jpeg",
        "type": "image/jpeg",
        "sizes": "728x409",
        "label": "App on homescreen with shortcuts",
        "platform": "play"
      },
      {
        "src": "/chonkscreenshot2.jpg",
        "type": "image/jpeg",
        "sizes": "551x541",
        "label": "Really long text describing the screenshot above which is basically a picture showing the app being long pressed on Android and the WebShortcuts popping out",
        "platform": "xbox"
      }
    ],
    "icons": [
      {
        "src": "/favicon.png",
        "type": "image/png",
        "sizes": "128x128"
      },
      {
        "src": "/kitteh-192.png",
        "type": "image/png",
        "sizes": "192x192"
      },
      {
        "src": "/kitteh-512.png",
        "type": "image/png",
        "sizes": "512x512"
      }
    ],
    "start_url": "/saved",
    "background_color": "#3f51b5",
    "display": "standalone",
    "scope": "/",
    "theme_color": "#3f51b5",
    "shortcuts": [
      {
        "name": "New Chonks",
        "short_name": "New",
        "url": "/?shortcut",
        "icons": [
          {
            "src": "/favicon.png",
            "sizes": "128x128"
          }
        ]
      },
      {
        "name": "Saved Chonks",
        "short_name": "Saved",
        "url": "/saved?shortcut",
        "icons": [
          {
            "src": "/favicon.png",
            "sizes": "128x128"
          }
        ]
      }
    ]
  }
}

For signingMode, 0 = skip signing, 1 = create a new signing key, 2 = use an existing signing key (existingSigningKey must be specified). See SigningMode.cs for details.

For existingSigningKey, this should be null if you're submitting a new app and don't already have an Android .keystore file. If you're uploading a new version of an existing app in Oculus Store or Oculus App Lab, existingSigningKey should be the set to the signing key information included in your initial PWABuilder Oculus zip download.

If existingSigningKey is specified, keyStoreFile should be the base64-encoded string of your existing .keystore file.

For full set of options for generating an Oculus package, see OculusAppPackageOptions.cs.

The generated zip file will contain:

  • The Android App Package (APK) file, ready for upload to the Oculus Store. See Oculus's PWA app submission documentation.
  • A .keystore file if you set signingMode to 1 (i.e. new signing key)
  • A readme file showing the developer's next steps for uploading their APK file to the Oculus Store.

About

PWABuilder platform for Oculus PWAs


Languages

Language:C# 88.3%Language:JavaScript 6.4%Language:HTML 2.8%Language:Dockerfile 2.6%