Expo プロジェクトの公開状態を設定する privacy プロパティの挙動
バージョン: Expo SDK 39
Expo は publish したプロジェクトの公開状態を app.json
/ app.config.js
の privacy
プロパティで設定できる。
{
"expo": {
"privacy": "hidden",
...
ドキュメントの説明だけでは、具体的に他のユーザーにどう見えるのか分かりづらかったので、 ログインしていない状態で以下のページにアクセスした時の挙動を調査した。
- プロジェクト一覧: ユーザーのプロジェクト一覧ページ (例:
https://expo.io/@chocoby
) - プロジェクト詳細: ユーザーのプロジェクト詳細ページ (例:
https://expo.io/@chocoby/awesome-project
)
結果
unlisted (デフォルト) |
hidden |
public |
|
---|---|---|---|
プロジェクト一覧 | 表示されない | 表示されない | 表示される |
プロジェクト詳細 | 表示される | 表示されない | 表示される |
unlisted
について
expo init
した直後など、privacy
プロパティを指定しない場合はunlisted
がデフォルトとなる。- オーナーのプロジェクト一覧にはプロジェクト名の横に「非公開」のような趣旨のアイコンが表示される。なぜか
hidden
では表示されない。
hidden
について
- プロジェクト詳細に表示されている QR コードを共有するか「Request a link」でメールアドレスや電話番号 ((日本国内に送れるかは試していない)) にリンクを送ることで Expo Client からプロジェクトを開ける。
- 送られてくる URL は
https://expo.io/--/to-exp/exp%3A%2F%2Fexp.host%2F%40[username]%2F[project-url-slug]
という構成なので推測可能なのは注意。 - ドキュメントには「
hidden
restricts access to the project page to only the owner and other users that have been granted access. 」と書いているが、どこから他のユーザーを招待するのか分かっていない。