.NET 3.X と .NET 4.X では、すべての .unitypackage
ファイルを含む大きな .zip
ファイルをダウンロードする代わりに、Unity 用 Google API サイトから個々のパッケージをダウンロードできます。
このサイトでは以下を提供しています。
- アセット パッケージとしてインポートする個々の .NET 4.X
.unitypackage
ファイル。 - Unity Package Manager を使用してインポートする個々の
.tgz
アーカイブ。
これは、アプリで Firebase プロダクトを 1 つだけ使用する場合に特に便利です。個々の .unitypackage
ファイルには必要な依存関係がすべて含まれています。そして .tgz
ファイルは、依存関係のある他の .tgz
ファイルとともにリストされています。
このページでは、Unity Package Manager に関する手順について説明します。Unity のドキュメントを参照してこのツールについて学習することをおすすめします。
Firebase パッケージをアセットとしてインポートする
Unity 用 Google API サイトからダウンロードした .unitypackage
ファイルから Firebase プロダクトをインポートする場合は、次の点に注意してください。
プロジェクト内で複数の Firebase プロダクトを使用している場合は、すべての Firebase プロダクトが同じバージョンになるようにダウンロードとアップグレードを行う必要があります。
1 つのプロジェクト内で複数のインポート方法を混在させないでください。つまり、アセット パッケージのフローと Unity Package Manager のフローの両方を使用して Firebase プロダクトをインポートしないでください。
ダウンロード後にインポートするには:
開いている Unity プロジェクトで、[Assets] > [Import Package] > [Custom Package] を選択します。
[Import Unity Package] ウィンドウで [Import] をクリックします。
Unity Package Manager を使用して Firebase パッケージをインポートする
Unity 用 Google API アーカイブからダウンロードした .tgz
ファイルから Firebase プロダクトをインポートする場合は、次の点に注意してください。
この方法は 2018.3 以降でのみ使用できます。
プロジェクト内で複数の Firebase プロダクトを使用している場合は、すべての Firebase プロダクトが同じバージョンになるようにダウンロードとアップグレードを行う必要があります。
1 つのプロジェクト内で複数のインポート方法を混在させないでください。つまり、アセット パッケージのフローと Unity Package Manager のフローの両方を使用して Firebase プロダクトをインポートしないでください。
各プロダクトの
.tgz
ファイルの横に、その.tgz
ファイルの依存関係のリンクが表示されています。プロダクトの.tgz
ファイルとその依存関係の.tgz
ファイルをダウンロードし、正しい順序でインポートする必要があります。- External Dependency Manager(
com.google.external-dependency-manager
) - Firebase Core(
com.google.firebase.app
) - プロジェクトで使用する Firebase プロダクト。Realtime Database または Cloud Storage を使用する場合は、まず Authentication(
com.google.firebase.auth
)をインポートします。
- External Dependency Manager(
ダウンロード後、次のいずれかの方法で .tgz
ファイルをプロジェクトにインポートします。
Package Manager UI
- Unity の Package Manager ウィンドウを開きます。
- Package Manager ウィンドウの左上にある
+
アイコンをクリックし、[Add package from tarball
] を選択してファイル ブラウザを開きます。 - ファイル ブラウザで目的の tarball を選択します。
Unity 2019 の一部の古いバージョンでは、tarball を直接追加できません。この場合は、次の操作を行う必要があります。
.tgz
ファイルを解凍します。- Package Manager ウィンドウの左上にある
+
アイコンをクリックし、[Add package from disk
] を選択してファイル ブラウザを開きます。 - 抽出したフォルダをファイル ブラウザで選択します。
manifest.json
- プロジェクトの
Packages
フォルダの隣に新しいフォルダを作成し、GooglePackages
という名前を付けます。 - そのフォルダに
.tgz
ファイルを配置します。 - テキスト エディタを使用して、Unity プロジェクト フォルダにある
Packages/manifest.json
を開きます。 インポートする各パッケージのエントリを追加し、パッケージ名とディスク上の場所をマッピングします。
.tgz
ファイルのパスの前にfile:
を付加してください。たとえば、com.google.firebase.storage
とその依存関係をインポートする場合、manifest.json
は次のようになります。{ "dependencies": { "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164.tgz", "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0.tgz", "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0.tgz", "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0.tgz", // com.unity package entries... } }
manifest.json
ファイルを保存します。Unity が再度アクティブになると、
manifest.json
が再読み込みされ、新しく追加されたパッケージがインポートされます。
Unity の一部の古いバージョンでは、manifest.json
内に .tgz
ファイルを記述できません。その場合は、次のことを行う必要があります。
.tgz
ファイルを解凍します。manifest.json
を編集し、次のように.tgz
ファイルではなく抽出されたフォルダのパスを使用するようにします。{ "dependencies": { "com.google.external-dependency-manager": "file:../GooglePackages/com.google.external-dependency-manager-1.2.164", "com.google.firebase.app": "file:../GooglePackages/com.google.firebase.app-7.1.0", "com.google.firebase.auth": "file:../GooglePackages/com.google.firebase.auth-7.1.0", "com.google.firebase.storage": "file:../GooglePackages/com.google.firebase.storage-7.1.0", // com.unity package entries... } }
Unity Package Manager からアセット パッケージに移行する
Unity Package Manager を使用して Firebase プロダクトをトラッキングする方法から、Assets
フォルダの下にあるプロダクトをインポートする方法に切り替えたい場合があります。
使用しているインポート方法がわからない場合は、Unity プロジェクト フォルダで Packages/manifest.json
ファイルを開きます。ファイルに com.google.firebase
で始まるエントリが含まれている場合は、Unity Package Manager を使用してインポートしています。
アセット パッケージに移行するには:
プロジェクト内の現在の Firebase パッケージのバージョンをメモし、それらを削除します。
- [Window] メニューから [Package Manager] を選択します。[Package Manager] ウィンドウで、[Packages: In Project] が選択されていることを確認します。
- インポートされている Firebase パッケージのバージョンをメモします。
- 各パッケージ名をクリックし、[Remove] をクリックします。Firebase パッケージだけでなく、External Dependency Manager パッケージ(
.com.google.external-dependency-manager
)も削除する必要があります。
置換用の
.unitypackage
ファイルをダウンロードしてインポートします。次の 2 つのオプションがあります。- 各パッケージの最新バージョンにアップグレードできる場合は、Firebase Unity SDK の zip ファイルをダウンロードし、Unity プロジェクトに Firebase を追加するの説明に沿ってインポートします。
- 現在の
.unitypackage
のバージョンを保持する必要がある場合は、このページの上述の説明に沿って、個々のパッケージをダウンロードしてインポートします。
アセット パッケージから Unity Package Manager に移行する
Assets
フォルダの下にあるプロダクトをインポートする方法から、Unity Package Manager を使用してプロダクトのインポートとトラッキングを行う方法に切り替えたい場合があります。
使用しているインポート方法がわからない場合は、Unity プロジェクト フォルダで Packages/manifest.json
ファイルを開きます。ファイルに com.google.firebase
で始まるエントリが含まれている場合は、Unity Package Manager を使用してインポートしています。
Unity Package Manager に移行するには:
次のいずれかの方法で、すべての Firebase パッケージと External Dependency Manager パッケージを
Assets
フォルダから削除します。EDM4U UI
- 開いている Unity プロジェクトで、[Assets] > [External Dependency Manager] > [Version Handler] > [Uninstall Managed Packages] に移動します。
- すべての Firebase パッケージと External Dependency Manager を選択します。
- [Uninstall Selected Package] をクリックします。
手動による削除
ファイル システム ツールを使用して、次のフォルダを手動で削除します。
Assets/Editor Default Resources/Firebase
Assets/ExternalDependencyManager
Assets/Firebase
Assets/Parse
Assets/Plugins/iOS/Firebase
このページの上述の説明に沿って、Unity Package Manager を使用してパッケージをインポートします。