Dodatkowe opcje instalacji środowiska Unity

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 Google API na potrzeby Unity.

Witryna zapewnia:

  • Poszczególne pliki .NET 4.X .unitypackage do zaimportowania jako pakiety komponentów.
  • Poszczególne archiwa .tgz do 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, więc 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 API 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:

  1. W otwartym projekcie Unity kliknij Assets (Zasoby) > Import Package (Importuj pakiet) > Custom Package (Własny pakiet).

  2. 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 .tgz produktu są połączone w osobnych plikach .tgz. Musisz pobrać i zaimportować plik .tgz produktu oraz pliki .tgz zależności w odpowiedniej kolejności:

    1. Menedżer zależności zewnętrznych (com.google.external-dependency-manager)
    2. Firebase Core (com.google.firebase.app)
    3. usługi Firebase używane w projekcie; Jeśli używasz Realtime Database lub Cloud Storage, najpierw zaimportuj Authentication (com.google.firebase.auth).

Po pobraniu zaimportuj pliki .tgz do projektu, korzystając z jednej z tych metod:

Interfejs Menedżera pakietów

  1. Otwórz okno Menedżera pakietów Unity.
  2. W lewym górnym rogu okna Menedżera pakietów kliknij ikonę + i wybierz Add package from tarball, aby otworzyć przeglądarkę plików.
  3. 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:

  1. Rozpakuj plik .tgz.
  2. W lewym górnym rogu okna Menedżera pakietów kliknij ikonę + i wybierz Add package from disk, aby otworzyć przeglądarkę plików.
  3. Wybierz wyodrębniony folder w przeglądarce plików.

manifest.json

  1. Utwórz nowy folder obok folderu Packages projektu i nadaj mu nazwę GooglePackages.
  2. Umieść pliki .tgz w tym folderze.
  3. W edytorze tekstu otwórz plik Packages/manifest.json w folderze projektu Unity.
  4. 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 importujesz com.google.firebase.storage i jego zależności, Twój manifest.json bę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...
      }
    }
    
  5. Zapisz plik manifest.json.

  6. Gdy Unity odzyska fokus, ponownie załaduje manifest.json i zaimportuje nowo dodane pakiety.

Niektóre starsze wersje Unity nie obsługują plików .tgzmanifest.json. W takim przypadku:

  1. Rozpakuj plik .tgz.
  2. Edytuj 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 Menedżera pakietów Unity na pakiety zasobów

W niektórych przypadkach możesz chcieć przejść z używania Menedżera pakietów Unity do śledzenia usług Firebase na importowanie usług 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:

  1. Zanotuj aktualne wersje pakietów Firebase w projekcie i usuń je.

    1. W menu Window (Okno) wybierz Package Manager (Menedżer pakietów). W oknie Menedżer pakietów sprawdź, czy wybrano opcję „Pakiety: w projekcie”.
    2. Zanotuj wersje zaimportowanych pakietów Firebase.
    3. Kliknij nazwę każdego pakietu, a potem Usuń. Pamiętaj, aby usunąć pakiet External Dependency Manager (.com.google.external-dependency-manager) oraz pakiety Firebase.
  2. 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:

  1. 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

    1. 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).
    2. Wybierz wszystkie pakiety Firebase i External Dependency Manager.
    3. Kliknij Odinstaluj wybrany pakiet.

    Ręczne usuwanie

    Za pomocą narzędzi systemu plików ręcznie usuń te foldery:

    • Assets/Editor Default Resources/Firebase
    • Assets/ExternalDependencyManager
    • Assets/Firebase
    • Assets/Parse
    • Assets/Plugins/iOS/Firebase
  2. Zaimportuj pakiety za pomocą Menedżera pakietów Unity, jak opisano powyżej na tej stronie.