Zamiast pobierać duży plik .zip zawierający wszystkie .unitypackage pliki dla .NET 3.X i .NET 4.X, możesz pobrać poszczególne pakiety ze strony interfejsów API Google dla Unity.
Witryna zapewnia:
- Poszczególne pliki .NET 4.X
.unitypackagedo zaimportowania jako pakiety zasobów. - Poszczególne archiwa
.tgzdo zaimportowania za pomocą menedżera pakietów Unity.
Jest to szczególnie przydatne, gdy aplikacja korzysta z jednej usługi Firebase, ponieważ pliki .unitypackage zawierają wszystkie potrzebne zależności, a pliki .tgz są wymienione obok powiązanych plików .tgz, od których zależą.
Na tej stronie znajdziesz instrukcje dotyczące Menedżera pakietów Unity, dlatego warto zapoznać się z tym narzędziem w dokumentacji Unity.
Importowanie pakietów Firebase jako komponentów
Podczas importowania usług Firebase z .unitypackage plików pobranych ze strony Google APIs for Unity pamiętaj o tych kwestiach:
Jeśli w projekcie używasz kilku usług Firebase, musisz pobrać i zaktualizować wszystkie usługi Firebase do tej samej wersji.
Nie mieszaj metod importowania w jednym projekcie. Oznacza to, że nie należy importować usług Firebase za pomocą przepływu pakietu zasobów i przepływu Menedżera pakietów Unity.
Aby zaimportować pobrany plik:
W otwartym projekcie Unity kliknij Assets (Zasoby) > Import Package (Importuj pakiet) > Custom Package (Własny pakiet).
W oknie Import Unity Package (Importowanie pakietu dla Unity) kliknij Import (Importuj).
Importowanie pakietów Firebase za pomocą menedżera pakietów Unity
Podczas importowania usług Firebase z plików .tgz pobranych z archiwum interfejsów API Google dla Unity pamiętaj o tych kwestiach:
Ta metoda jest dostępna tylko w wersji 2018.3 lub nowszej.
Jeśli w projekcie używasz kilku usług Firebase, musisz pobrać i zaktualizować wszystkie usługi Firebase do tej samej wersji.
Nie mieszaj metod importowania w jednym projekcie. Oznacza to, że nie należy importować usług Firebase za pomocą przepływu pakietu zasobów ani przepływu Menedżera pakietów Unity.
Zależności dla każdego pliku
.tgzproduktu są połączone w osobnych plikach.tgz. Musisz pobrać i zaimportować plik.tgzproduktu oraz pliki.tgzzależności w odpowiedniej kolejności:- Menedżer zależności zewnętrznych (
com.google.external-dependency-manager) - Firebase Core (
com.google.firebase.app) - usługi Firebase używane w projekcie; Jeśli używasz Realtime Database lub Cloud Storage, najpierw zaimportuj Authentication (
com.google.firebase.auth).
- Menedżer zależności zewnętrznych (
Po pobraniu zaimportuj pliki .tgz do projektu, korzystając z jednej z tych metod:
Interfejs Menedżera pakietów
- Otwórz okno Menedżera pakietów Unity.
- W lewym górnym rogu okna Menedżera pakietów kliknij ikonę
+i wybierzAdd package from tarball, aby otworzyć przeglądarkę plików. - Wybierz odpowiedni plik tar w przeglądarce plików.
Niektóre starsze wersje Unity 2019 nie obsługują bezpośredniego dodawania plików tarball. W takim przypadku musisz:
- Rozpakuj plik
.tgz. - W lewym górnym rogu okna Menedżera pakietów kliknij ikonę
+i wybierzAdd package from disk, aby otworzyć przeglądarkę plików. - Wybierz wyodrębniony folder w przeglądarce plików.
manifest.json
- Utwórz nowy folder obok folderu
Packagesprojektu i nadaj mu nazwęGooglePackages. - Umieść w tym folderze pliki
.tgz. - W edytorze tekstu otwórz plik
Packages/manifest.jsonw folderze projektu Unity. Dodaj wpis dla każdego pakietu, który chcesz zaimportować, przypisując nazwę pakietu do lokalizacji na dysku. Pamiętaj, aby dodać
file:do ścieżki pliku.tgz. Jeśli na przykład importujeszcom.google.firebase.storagei jego zależności, Twój plikmanifest.jsonbędzie wyglądać tak:{ "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... } }Zapisz plik
manifest.json.Gdy Unity odzyska fokus, ponownie załaduje
manifest.jsoni zaimportuje nowo dodane pakiety.
Niektóre starsze wersje Unity nie obsługują plików .tgz w manifest.json.
W takim przypadku:
- Rozpakuj plik
.tgz. Zmień
manifest.json, aby używać ścieżki do wyodrębnionego folderu zamiast pliku.tgz, w ten sposób:{ "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... } }
Migracja z Unity Package Manager na pakiety zasobów
W niektórych przypadkach możesz chcieć przejść z używania menedżera pakietów Unity do śledzenia produktów Firebase na importowanie produktów w folderze Assets.
Jeśli nie masz pewności, której metody importu używasz, w folderze projektu Unity otwórz plik Packages/manifest.json. Jeśli plik zawiera wpisy zaczynające się od com.google.firebase, oznacza to, że projekt używa Menedżera pakietów Unity do importowania.
Aby przejść na pakiety komponentów:
Zanotuj aktualne wersje pakietów Firebase w projekcie i usuń je.
- W menu Window (Okno) wybierz Package Manager (Menedżer pakietów). W oknie Menedżer pakietów sprawdź, czy wybrano opcję „Pakiety: w projekcie”.
- Zanotuj wersje zaimportowanych pakietów Firebase.
- Kliknij nazwę każdego pakietu, a potem Usuń. Pamiętaj, aby usunąć pakiet menedżera zależności zewnętrznych (
.com.google.external-dependency-manager) oraz pakiety Firebase.
Pobierz i zaimportuj pliki zastępcze
.unitypackage. Dostępne są dwie opcje:- Jeśli możesz przejść na najnowszą wersję każdego pakietu, pobierz plik ZIP pakietu Firebase Unity SDK i zaimportuj go zgodnie z opisem w sekcji Dodawanie Firebase do projektu Unity.
- Jeśli chcesz zachować bieżące wersje
.unitypackage, możesz pobrać i zaimportować poszczególne pakiety zgodnie z instrukcjami powyżej na tej stronie.
Migracja z pakietów zasobów do Menedżera pakietów Unity
W niektórych przypadkach możesz chcieć przejść z importowania produktów w folderze
Assets na importowanie i śledzenie produktów za pomocą Menedżera pakietów Unity.
Jeśli nie masz pewności, której metody importu używasz, w folderze projektu Unity otwórz plik Packages/manifest.json. Jeśli plik zawiera wpisy zaczynające się od com.google.firebase, projekt korzysta już z Unity Package Manager do importowania.
Aby przejść na Menedżera pakietów Unity:
Upewnij się, że wszystkie pakiety Firebase i pakiet External Dependency Manager zostały usunięte z folderu
Assets. Możesz to zrobić na jeden z tych sposobów:Interfejs EDM4U
- W otwartym projekcie Unity kliknij Assets > External Dependency Manager > Version Handler > Uninstall Managed Packages (Zasoby > Menedżer zależności zewnętrznych > Obsługa wersji > Odinstaluj zarządzane pakiety).
- Wybierz wszystkie pakiety Firebase i External Dependency Manager.
- Kliknij Odinstaluj wybrany pakiet.
Ręczne usuwanie
Za pomocą narzędzi systemu plików ręcznie usuń te foldery:
Assets/Editor Default Resources/FirebaseAssets/ExternalDependencyManagerAssets/FirebaseAssets/ParseAssets/Plugins/iOS/Firebase
Zaimportuj pakiety za pomocą Menedżera pakietów Unity, jak opisano powyżej na tej stronie.