はじめに
Oculus Questの公式ストアはあの狼と香辛料のVRゲーム(公式)を落とすぐらい
審査が異様に厳しいのですが、
【お知らせ】開発中の『狼と香辛料VR2』はOculusQuest1/2に対応しません。審査で落ちました。多分ゲーム基準で値段/プレイ時間比とか判断されたのかなと。
— SpicyTails@ (@spicytails) 2020年9月24日
よって対応機器は以下の通り。
PSVR、steam、Rift、Go、Switch
ValveIndexとWinMRは公式には対応しません(多分動きますが…)
発売日は又後日! pic.twitter.com/NatUKjHK9D
承認を受けなくても配信が出来るApp Labという方法を開始しました。
Today, we’re excited to introduce App Lab—a new way for you to distribute apps directly to consumers safely and securely, via direct links or platforms like SideQuest, without requiring store approval and without sideloading.
DeepL翻訳
これは、ストアの承認やサイドロードを必要とせず、ダイレクトリンクやSideQuestのようなプラットフォームを介して、安全かつ確実にアプリを消費者に直接配布するための新しい方法です。
という事で今回は、このApp Labの申請方法の解説記事です。
ちなみに昨年リリースした「縦笛なめなめVR」を申請済みだったりします。
なお、App Labで出したアプリは承認を受けていないのでストアに直接表示される事はなく
ユーザがタイトルを検索しないと見つける事が出来ませんし、
審査自体はあるようなので、申請が通らないという事もありそうです。
------------追記------------
実際に「縦笛なめなめVR」は申請が通りませんでした……。
こちら「内容がアダルトなもの」であるため、無事(?)リジェクトされました……!
— カン@ゲームクリエイター(Unity/VR/Switch/Steam) (@Kan_Kikuchi) 2021年3月9日
5週間かかりました……!! https://t.co/QWjaMYuvOJ
ちなみにコンテンツガイドライン(エロや暴力等)に引っかかると通らないようです。
なお審査は最大4~6週間(問い合わせたタイミングor返信者で変わる?)もかかるそうです。
------------追記2------------
7週間以上かかる事もありました。
App Lab(Oculus)に申請してたQuest用のSLASH OF BULLET、審査は最大6週間と言われていましたが7週間と2日(52日)かかりました……もちろん結果はリジェクト🥺 pic.twitter.com/qqdnEMf0LB
— カン@ゲームクリエイター(Unity/VR/Switch/Steam) (@Kan_Kikuchi) 2021年6月1日
------------追記おわり------------
ただ、以前紹介した非公式アプリストアのSideQuestと違い、
PCを介してインストールする必要がありませんし、
インストール後はアプリ一覧に載るようなので、ユーザ視点で多少は使いやすそうです。
APKファイルの作成
まずAndroidの実行ファイルであるAPKファイルを作成していくのですが、
その辺りの事は既に記事にしているので、以下の記事を参考にしてみてください。
ただ、いくつか手間取った箇所があったので、次項からそれだけ解説していきます。
Minimum API Level
App Labに申請するには現在Minimum API Level 23以上にする必要があります。
ビルド前に忘れずに変更しておきましょう。
AndroidManifest
App Labに申請するにはAndroidManifestが必要です。
作成方法はUnity上部のOculus/Tools/Create ~~~を実行するだけ。(Oculus Integrationのメニュー)
後は設定に合わせてAndroidManifestに追記していきます。
package="com.kan.kikuchi.ChupaChupaVR" android:versionCode="2.0" android:versionName="1"
実際に追記した物は以下のような感じに。
<?xml version="1.0" encoding="utf-8" standalone="no"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.kan.kikuchi.ChupaChupaVR" android:versionCode="2.0" android:versionName="1" android:installLocation="auto" > <application> <activity android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" android:configChanges="locale|fontScale|keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|touchscreen|uiMode" android:launchMode="singleTask" android:name="com.unity3d.player.UnityPlayerActivity" android:excludeFromRecents="true"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.INFO"/> </intent-filter> </activity> <meta-data android:name="unityplayer.SkipPermissionsDialog" android:value="false" /> </application> </manifest>
Keystore作成
AndroidManifestと同様に、作成していない場合はKeystoreを作成します。
Edit/ProjectSetting/Playerを開き、
Publishing Settings/KeystoreにあるCreate a new keystoreにチェックを入れ、
Keystore passwordに任意のパスワードを入力し、Browse Keystoreで保存先を指定します。
さらにKeyの項目にあるAliasからCreate a new keyを選択し、
各項目を入力して、右下のCreateKeyを押せば完了です。
なお、各項目の内容は以下の通りです。
- Alias : Keyの名前
- Password : Keyのパスワード
- Confirm : パスワードの確認(Passwordと同じのを入力)
- Validity (years) : Keystoreの使用する年数(50など長い年数を入れておく)
- First and Last Name : 製作者名
- Organizational Unit : 部署名(空欄でもOK)
- Organization : 企業名(空欄でもOK)
- City or Locality : 会社の所在地を入力します。
- State or Province : 会社の市町村名を入力します。
- Country Code (XX) : 国のコード(日本の場合は「jp」)
申請方法
APKファイルが出来たら本題の申請です。
まず以下の開発者センターに行きます。
ログインか登録をしてページを開いたら、
マイアプリから「新しいアプリを作成」を押します。
なお、作成時はQuest(App Lab)を選択します。
アプリのページが出来たら、右上の「申請の詳細に移動」から各項目を設定していきます。
ビルド
ビルドでは先程作成したAPKファイルをアップロードします。
ただしブラウザからアップロード出来るのは400MBまでです。
400MB以上の場合は以下のページからユーティリティファイルをダウンロードして、
書いてある通りにターミナルでコマンドを実行してアップロードします。
./ovr-platform-util upload-quest-build --app-id アプリID --app-secret シークレットトークン --apk APKファイルのパス --channel チャンネル名(ALPHAとか)
なお、シークレットトークンはAPIの項目から生成、確認する事が出来ます。
APKファイルをアップロード出来たら、「ビルドを選択」でそのファイルを選択し、
「保存して続行」から保存します。(これ以降の項目も毎回保存する必要があるので注意)
説明
説明ではアプリ名や説明を入力していきます。
なお、右上で言語を変更する事が出来ます。
言語はデフォルトでは英語だけですが、「言語を管理」から新たに言語追加出来ます。
ただし、この言語はストアのアプリ名や説明文の言語の事で、
アプリの対応言語については次項のスペックで設定します。
なお、キーワードはApp Labでは設定出来ません。
スペック
スペックではゲームモードや対応言語などを設定していきます。
UIが日本語対応しているので特に難しい事はないと思います。
なお、視界の動きのレベルはApp Labでは設定出来ません。
追加情報
追加情報では連絡先等を設定していきます。
こちらもUIが日本語対応しているので特に難しい事はないと思います。
アセット
アセットではロゴやスクショ、PVなどを設定していきます。
なお、右上で言語を変更できるのでアセットのローカライズ可能です。
ちなみに、アセットのガイドラインについては以下のページにあります。
コンテンツ評価
コンテンツ評価ではIARC証明書を用いてアプリの対象年齢を設定していきます。
ちなみにIARC証明書は質問に答えるだけですぐに、しかも無料で作成出来ます。
IARC証明書を作成する場合は「新しい証明書をリクエスト」を押します。
質問に回答した後、元の画面に戻ると以下のような感じで証明書が設定されます。
価格
価格ではそのままアプリの価格を設定していきます。(無料にも出来ます)
なお、リリース後の変更はメールでやらないといけないようです。
送信
全ての入力が完了し、チェックマークが付いたら送信の「ストアに送信」から申請に出します。
なお、送信が完了するとタイトルだけのメールが届きます。
後は申請が通るまで祈って待つのみです……!