Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Najważniejsze funkcje
Oprócz udostępniania unikalnych identyfikatorów do uwierzytelniania identyfikator instancji może generować tokeny zabezpieczające do użycia w innych usługach. Inne funkcje to:
Generowanie tokenów zabezpieczających
Identyfikator instancji udostępnia prosty interfejs API do generowania tokenów zabezpieczających, które autoryzują dostęp innych firm do zasobów zarządzanych po stronie serwera aplikacji.
Weryfikowanie autentyczności aplikacji
Przekaż tokeny identyfikatora instancji na serwer i użyj usługi identyfikatora instancji, aby zweryfikować nazwę pakietu aplikacji i sprawdzić, czy ma ona prawidłowy podpis.
Weryfikowanie tokenów za pomocą usługi Instance ID Cloud pomaga identyfikować znane aplikacje. Aby zmniejszyć koszty i wyeliminować zbędne komunikaty w obie strony, skonfiguruj serwer tak, aby przechowywał te tokeny. Dzięki temu weryfikacja będzie potrzebna tylko raz.
W przypadku problemów z bezpieczeństwem aplikacja może usuwać tokeny lub sam identyfikator instancji i generować nowe. Dodatkowo serwer identyfikatora instancji inicjuje odświeżanie tokena lub identyfikatora instancji, jeśli wykryje błędy lub problemy z bezpieczeństwem.
Sprawdzanie, czy urządzenie z aplikacją jest aktywne
Serwer identyfikatorów instancji może podać datę ostatniego użycia urządzenia, na którym zainstalowana jest Twoja aplikacja. Na podstawie tych informacji możesz zdecydować, czy zachować dane z aplikacji, czy wysłać wiadomość push, aby ponownie zaangażować użytkowników.
Identyfikowanie i śledzenie aplikacji
Identyfikator instancji jest niepowtarzalny we wszystkich instancjach aplikacji na całym świecie, więc Twoja baza danych może go używać do jednoznacznego identyfikowania i śledzenia instancji aplikacji. Kod po stronie serwera może sprawdzić za pomocą usługi w chmurze Instance ID, czy identyfikator instancji jest autentyczny i czy jest taki sam jak identyfikator oryginalnej aplikacji, która zarejestrowała się na serwerze. Ze względu na prywatność aplikacja może usunąć identyfikator instancji, aby nie był już powiązany z żadną historią w bazie danych. Gdy następnym razem aplikacja wywoła identyfikator instancji, otrzyma zupełnie nowy identyfikator instancji, który nie będzie powiązany z poprzednim.
Cykl życia identyfikatora instancji
Usługa Instance ID wydaje InstanceID, gdy Twoja aplikacja jest online.
InstanceID jest zabezpieczony parą kluczy publicznego i prywatnego. Klucz prywatny jest przechowywany na urządzeniu lokalnym, a klucz publiczny jest zarejestrowany w usłudze identyfikatora instancji.
Aplikacja może w razie potrzeby poprosić o nowy InstanceID za pomocą metody getID(). Jeśli masz serwer, który obsługuje Twoją aplikację, może ona przechowywać na nim dane.
Aplikacja może w razie potrzeby żądać tokenów z usługi identyfikatora instancji za pomocą metody getToken(). Podobnie jak w przypadku InstanceID aplikacja może też przechowywać tokeny na własnym serwerze. Wszystkie tokeny wydane Twojej aplikacji należą do InstanceID aplikacji.
Tokeny są unikalne i bezpieczne, ale w przypadku problemu z bezpieczeństwem lub gdy użytkownik odinstaluje i ponownie zainstaluje aplikację podczas przywracania urządzenia, aplikacja lub usługa identyfikatora instancji może wymagać odświeżenia tokenów. Aplikacja musi zaimplementować odbiornik, który będzie odpowiadać na żądania odświeżenia tokena z usługi identyfikatora instancji.
Wdrożenie po stronie klienta
Identyfikator instancji działa zarówno na Androidzie, jak i na iOS. W każdym przypadku musisz uwzględnić odpowiednią bibliotekę w aplikacji klienta. W przypadku Androida wymagane są Usługi Google Play. Jeśli chcesz generować tokeny, musisz mieć identyfikator projektu wygenerowany przez Google Developers Console.
Szczegółowe instrukcje znajdziesz w przewodnikach po wdrażaniu na Android i iOS.
[null,null,["Ostatnia aktualizacja: 2025-09-05 UTC."],[[["\u003cp\u003e\u003cstrong\u003eWarning:\u003c/strong\u003e The Instance ID API is deprecated; for unique app installation identifiers, use the Firebase installations API instead.\u003c/p\u003e\n"],["\u003cp\u003eInstance ID offers key features like generating security tokens, verifying app authenticity, confirming app device activity, and identifying/tracking apps.\u003c/p\u003e\n"],["\u003cp\u003eInstance ID has a lifecycle involving issuing an ID, requesting fresh IDs and tokens, storing them on the server (optional), and handling token refreshes.\u003c/p\u003e\n"],["\u003cp\u003eClient implementation requires including the appropriate library and potentially a Project ID for token generation.\u003c/p\u003e\n"],["\u003cp\u003eFor detailed instructions, refer to the Android and iOS implementation guides.\u003c/p\u003e\n"]]],[],null,["# What is Instance ID?\n\n| **Warning:** The Instance ID API is deprecated. If you need to access unique app installation identifiers, use the [Firebase installations](//firebase.google.com/docs/projects/manage-installations) API. See also [Firebase installations and Instance ID](//firebase.google.com/docs/projects/manage-installations#fid-iid). The [server-side topic management API](https://developers.google.com/instance-id/reference/server#create_relationship_maps_for_app_instances) is still available.\n\nKey features\n------------\n\nIn addition to providing unique IDs for authentication, Instance ID\ncan generate security tokens for use with other services. Other features\ninclude:\n\n### Generate Security Tokens\n\n: Instance ID provides a simple API to generate security tokens that\n authorize third parties to access your app's server side managed resources.\n\n### Verify app authenticity\n\n: Pass Instance ID tokens to your server and use the Instance ID\n service to verify the app package name and check if it has a valid signature.\n Verifying tokens with the Instance ID Cloud Service helps identify known\n apps. To reduce cost and redundant round trip communications, configure your\n server to store these tokens so the check is needed only once.\n In the event of a security concern, your app can delete tokens, or\n Instance ID itself, and generate new ones. In addition, the\n Instance ID server initiates token or Instance ID refresh if it\n detects bugs or security issues.\n\n### Confirm app device is active\n\n: The Instance ID server can tell you when the device on which your app\n is installed was last used. Use this to decide whether to keep data from your\n app or send a push message to reengage with your users.\n\n### Identify and track apps\n\n: Instance ID is unique across all app instances across the world, so\n your database can use it to uniquely identify and track app instances. Your\n server-side code can verify, via the Instance ID cloud service, that an\n Instance ID is genuine and is the same ID as the original app that\n registered with your server. For privacy, your app can delete an Instance ID so\n it is no longer associated with any history in the database. The next time your\n app calls Instance ID it will get an entirely new Instance ID with no\n relationship to its previous one.\n\nInstance ID lifecycle\n---------------------\n\n1. The Instance ID service issues an `InstanceID` when your app comes online. The `InstanceID` is backed by a public/private key pair with the private key stored on the local device and the public key registered with the Instance ID service.\n2. Your app can request a fresh `InstanceID` whenever needed using the `getID()` method. Your app can store it on your server if you have one that supports your app.\n3. Your app can request tokens from the Instance ID service as needed using the `getToken()` method, and like `InstanceID`, your app can also store tokens on your own server. All tokens issued to your app belong to the app's `InstanceID`.\n4. Tokens are unique and secure, but your app or the Instance ID service may need to refresh tokens in the event of a security issue or when a user uninstalls and reinstalls your app during device restoration. Your app must implement a listener to respond to token refresh requests from the Instance ID service.\n\nClient implementation\n---------------------\n\nInstance ID runs on both Android and iOS. Each requires you to include\nthe appropriate library in your client app. Android requires\n[Google Play Services](https://developer.android.com/google/play-services/index.html). You will need a Project ID generated\nby the [](/console/help/new)[Google Developers Console](https://console.developers.google.com/project) if you intend\nto generate tokens.\n\nFor detailed instructions, see the [Android](/instance-id/guides/android-implementation)\nand [iOS](/instance-id/guides/ios-implementation) implementation guides."]]