Dodatkowe opcje instalacji Unity

Zamiast pobierać duży plik .zip zawierający wszystkie pliki .unitypackage zarówno dla .NET 3.X, jak i .NET 4.X, możesz pobrać pojedyncze pakiety z witryny Google APIs for Unity .

Witryna zapewnia:

  • Pojedyncze pliki .NET 4.X .unitypackage do zaimportowania jako pakiety zasobów.
  • Indywidualne archiwa .tgz do zaimportowania za pomocą Unity Package Manager.

Jest to szczególnie przydatne, gdy aplikacja korzysta z jednego produktu Firebase, ponieważ poszczególne pliki .unitypackage zawierają wszystkie potrzebne zależności, a pliki .tgz są wymienione obok powiązanych plików .tgz , od których są zależne.

Ta strona zawiera instrukcje dotyczące Unity Package Manager, więc warto zapoznać się z narzędziem z dokumentacji Unity .

Importuj pakiety Firebase jako zasoby

Podczas importowania produktów Firebase z plików .unitypackage pobranych z witryny Google API for Unity pamiętaj o następujących kwestiach:

  • Jeśli używasz w swoim projekcie wielu produktów Firebase, musisz pobrać i zaktualizować wszystkie produkty Firebase do tej samej wersji.

  • Nie mieszaj metod importu w jednym projekcie. Oznacza to, że nie importuj produktów Firebase za pomocą przepływu pakietu zasobów i przepływu Menedżera pakietów Unity.

Po pobraniu, aby zaimportować:

  1. W otwartym projekcie Unity przejdź do pozycji Assets > Import Package > Custom Package .

  2. W oknie Importuj pakiet Unity kliknij przycisk Importuj .

Importuj pakiety Firebase za pomocą Menedżera pakietów Unity

Podczas importowania produktów Firebase z plików .tgz pobranych z archiwum Google APIs for Unity pamiętaj o następujących kwestiach:

  • Ta metoda jest dostępna tylko w wersji 2018.3+.

  • Jeśli używasz w swoim projekcie wielu produktów Firebase, musisz pobrać i zaktualizować wszystkie produkty Firebase do tej samej wersji.

  • Nie mieszaj metod importu w jednym projekcie. Oznacza to, że nie importuj produktów Firebase za pomocą przepływu pakietu zasobów i przepływu Unity Package Manager.

  • Zależności dla każdego pliku .tgz produktu są połączone ze sobą w ich własnych plikach .tgz . Musisz pobrać i zaimportować plik .tgz produktu i pliki zależności .tgz we właściwej kolejności:

    1. Zewnętrzny menedżer zależności ( com.google.external-dependency-manager )
    2. Rdzeń Firebase ( com.google.firebase.app )
    3. Produkty Firebase użyte w Twoim projekcie. Jeśli korzystasz z bazy danych czasu rzeczywistego lub Cloud Storage, najpierw zaimportuj uwierzytelnianie ( com.google.firebase.auth ).

Po pobraniu zaimportuj pliki .tgz do swojego projektu, korzystając z jednej z następujących metod:

Interfejs menedżera pakietów

  1. Otwórz okno Menedżera pakietów Unity.
  2. Kliknij ikonę + w lewym górnym rogu okna Menedżera pakietów i wybierz Add package from tarball , aby otworzyć przeglądarkę plików.
  3. Wybierz żądany plik tar w przeglądarce plików.

Niektóre starsze wersje Unity 2019 nie obsługują bezpośredniego dodawania plików tar. W takim przypadku będziesz potrzebować:

  1. Rozpakuj plik .tgz .
  2. Kliknij ikonę + w lewym górnym rogu okna Menedżera pakietów 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 swojego projektu i nazwij go GooglePackages .
  2. Umieść pliki .tgz w tym folderze.
  3. Użyj edytora tekstu, aby otworzyć Packages/manifest.json w folderze projektu aparatu Unity.
  4. Dodaj wpis dla każdego pakietu, który chcesz zaimportować, mapując nazwę pakietu na lokalizację na dysku. Pamiętaj, aby dołączyć file: do ścieżki pliku .tgz . Na przykład, jeśli importowałeś com.google.firebase.storage i jego zależności, plik manifest.json wyglądałby 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. Kiedy Unity odzyska fokus, ponownie załaduje manifest.json i zaimportuje nowo dodane pakiety.

Niektóre starsze wersje aparatu Unity nie obsługują plików .tgz w pliku manifest.json . W takim przypadku należy:

  1. Rozpakuj plik .tgz .
  2. Edytuj plik manifest.json , aby użyć ścieżki do wyodrębnionego folderu zamiast pliku .tgz , na przykład:

    {
      "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...
      }
    }
    

Migruj z Unity Package Manager do pakietów zasobów

W niektórych przypadkach możesz chcieć przełączyć się z Unity Package Manager do śledzenia produktów Firebase na importowanie produktów w folderze Assets .

Jeśli nie masz pewności, której metody importowania używasz, w folderze projektu aparatu Unity otwórz plik Packages/manifest.json . Jeśli plik zawiera wpisy zaczynające się od com.google.firebase , Twój projekt użył do zaimportowania Menedżera pakietów Unity.

Aby przeprowadzić migrację do pakietów zasobów:

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

    1. Z menu Okno wybierz Menedżera pakietów . W oknie Menedżera pakietów upewnij się, że wybrana jest opcja „Pakiety: w projekcie”.
    2. Zanotuj wersje zaimportowanych pakietów Firebase.
    3. Kliknij nazwę każdego pakietu, a następnie kliknij Usuń . Pamiętaj, aby usunąć pakiet External Dependency Manager ( .com.google.external-dependency-manager ) oraz pakiety Firebase.
  2. Pobierz i zaimportuj zastępcze pliki .unitypackage . Masz dwie opcje:

    • Jeśli możesz uaktualnić do najnowszej wersji każdego pakietu, pobierz plik ZIP Firebase Unity SDK i zaimportuj go zgodnie z opisem w artykule Dodawanie Firebase do projektu Unity .
    • Jeśli chcesz zachować aktualne wersje .unitypackage , możesz pobrać i zaimportować poszczególne pakiety, jak opisano powyżej na tej stronie.

Migruj z pakietów zasobów do Unity Package Manager

W niektórych przypadkach możesz chcieć przełączyć się z importowania produktów w folderze Assets na importowanie i śledzenie produktów za pomocą Unity Package Manager.

Jeśli nie masz pewności, której metody importowania używasz, w folderze projektu aparatu Unity otwórz plik Packages/manifest.json . Jeśli plik zawiera wpisy zaczynające się od com.google.firebase , Twój projekt używa już Unity Package Manager do importowania.

Aby przeprowadzić migrację do Unity Package Manager:

  1. Upewnij się, że wszystkie pakiety Firebase i pakiet External Dependency Manager zostały usunięte z folderu Assets , używając jednej z poniższych metod.

    Interfejs EDM4U

    1. W otwartym projekcie aparatu Unity przejdź do pozycji Zasoby > Menedżer zależności zewnętrznych > Program obsługi wersji > Odinstaluj pakiety zarządzane .
    2. Wybierz wszystkie pakiety Firebase i Menedżera zależności zewnętrznych.
    3. Kliknij Odinstaluj wybrany pakiet .

    Usuwanie ręczne

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

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