קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
אפשר להשתמש ב-Install Referrer API של חנות Google Play כדי לאחזר באופן מאובטח
הפניה לתוכן מ-Google Play. ספריית הלקוח של Play Install Referrer API
כתוב בשפת התכנות Java והוא wrapper של Android
קובץ Interface Definition Language (AIDL) שמגדיר את הממשק
התקנת שירות ההפניה. אפשר להשתמש בלקוח Play Install Referrer API
שימוש בספרייה כדי לפשט את תהליך הפיתוח.
מדריך זה עוסק בעקרונות הבסיסיים של אחזור פרטי הפניה מ-Google
מפעילים באמצעות ספריית ההפניות להתקנות ב-Play.
עדכון של יחסי התלות של האפליקציה
מוסיפים את השורה הבאה לקטע של יחסי התלות בקובץ build.gradle
עבור האפליקציה:
משנים את onInstallReferrerSetupFinished().
כדי לקבל התראה בסיום הקריאה החוזרת. השיטה הזו נקראת
באמצעות קוד תגובה שבו צריך להשתמש כדי לטפל במצבים השונים.
OK
מציין שהחיבור בוצע בהצלחה. כל אחד מהשניים
InstallReferrerResponse
קבועים נועדו לסוגים שונים של שגיאות.
משנים את onInstallReferrerServiceDisconnected().
לטיפול בחיבורים שאבדו ל-Google Play. עבור
לדוגמה, הלקוח של ספריית הגורמים המפנה של Play להתקנת Play עשוי לאבד את החיבור אם
שירות חנות Play מתעדכן ברקע. לקוח הספרייה חייב לקרוא
ה
startConnection()
להפעלת החיבור מחדש לפני שליחת בקשות נוספות.
הקוד הבא מדגים איך להתחיל ולבדוק חיבור אל
האפליקציה של חנות Play:
Kotlin
privatelateinitvarreferrerClient:InstallReferrerClientreferrerClient=InstallReferrerClient.newBuilder(this).build()referrerClient.startConnection(object:InstallReferrerStateListener{overridefunonInstallReferrerSetupFinished(responseCode:Int){when(responseCode){InstallReferrerResponse.OK->{// Connection established.}InstallReferrerResponse.FEATURE_NOT_SUPPORTED->{// API not available on the current Play Store app.}InstallReferrerResponse.SERVICE_UNAVAILABLE->{// Connection couldn't be established.}}}overridefunonInstallReferrerServiceDisconnected(){// Try to restart the connection on the next request to// Google Play by calling the startConnection() method.}})
Java
InstallReferrerClientreferrerClient;referrerClient=InstallReferrerClient.newBuilder(this).build();referrerClient.startConnection(newInstallReferrerStateListener(){@OverridepublicvoidonInstallReferrerSetupFinished(intresponseCode){switch(responseCode){caseInstallReferrerResponse.OK:// Connection established.break;caseInstallReferrerResponse.FEATURE_NOT_SUPPORTED:// API not available on the current Play Store app.break;caseInstallReferrerResponse.SERVICE_UNAVAILABLE:// Connection couldn't be established.break;}}@OverridepublicvoidonInstallReferrerServiceDisconnected(){// Try to restart the connection on the next request to// Google Play by calling the startConnection() method.}});
קבלת מקור ההפניה להתקנות
לאחר קישור האפליקציה של חנות Play, מקבלים את הפרטים
ממקור ההפניה של ההתקנה, פועלים לפי השלבים הבאים:
זהירות: הפרטים של הגורם המפנה להתקנה יהיו
זמינה למשך 90 יום ולא תשתנה אלא אם
הותקנה מחדש. כדי להימנע מקריאות מיותרות ל-API באפליקציה שלכם, כדאי להפעיל את
API פעם אחת בלבד במהלך ההרצה הראשונה לאחר ההתקנה.
סגירת החיבור לשירות
אחרי שתקבלו מידע על הגורם המפנה,
endConnection()
ב-
InstallReferrerClient
כדי לסגור את החיבור. סגירת החיבור תעזור לך להימנע
הדלפות ובעיות בביצועים.
דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-27 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-07-27 (שעון UTC)."],[],[],null,["# Play Install Referrer Library\n\nYou can use the Google Play Store's Install Referrer API to securely retrieve\nreferral content from Google Play. The Play Install Referrer API Client Library\nis written in the Java programming language and is a wrapper for the Android\nInterface Definition Language (AIDL) file that defines the interface to the\nInstall Referrer service. You can use the Play Install Referrer API Client\nLibrary to simplify your development process.\n\nThis guide covers the basics of retrieving referral information from Google\nPlay using the Play Install Referrer Library.\n| **Note:** If you are developing your app using a language other than the Kotlin programming language or the Java programming language, you can interact directly with the AIDL file by using the [Play Install Referrer\n| API](/google/play/installreferrer/igetinstallreferrerservice).\n\nUpdating your app's dependencies\n--------------------------------\n\nAdd the following line to the dependencies section of the `build.gradle` file\nfor your app: \n\n### Groovy\n\n```groovy\ndependencies {\n ...\n implementation \"com.android.installreferrer:installreferrer:2.2\"\n}\n```\n\n### Kotlin\n\n```kotlin\ndependencies {\n ...\n implementation(\"com.android.installreferrer:installreferrer:2.2\")\n}\n```\n\nConnecting to Google Play\n-------------------------\n\nBefore you can use the Play Install Referrer API Library, you must\nestablish a connection to the Play Store app using the following\nsteps:\n\n1. Call the [`newBuilder()`](/reference/com/android/installreferrer/api/InstallReferrerClient#newBuilder(android.content.Context)) method to create an instance of [`InstallReferrerClient`](/reference/com/android/installreferrer/api/InstallReferrerClient) class.\n2. Call the\n [`startConnection()`](/reference/com/android/installreferrer/api/InstallReferrerClient#startConnection(com.android.installreferrer.api.InstallReferrerStateListener))\n to establish a connection to Google Play.\n\n3. The [`startConnection()`](/reference/com/android/installreferrer/api/InstallReferrerClient#startConnection(com.android.installreferrer.api.InstallReferrerStateListener))\n method is asynchronous, so you must override\n [`InstallReferrerStateListener`](/reference/com/android/installreferrer/api/InstallReferrerStateListener)\n to receive a callback after\n [`startConnection()`](/reference/com/android/installreferrer/api/InstallReferrerClient#startConnection(com.android.installreferrer.api.InstallReferrerStateListener))\n completes.\n\n4. Override the [`onInstallReferrerSetupFinished()`](/reference/com/android/installreferrer/api/InstallReferrerStateListener#onInstallReferrerSetupFinished(int))\n method to be notified when the callback completes. This method is called\n with a response code that you must use to handle the different states.\n [`OK`](https://developer.android.com/reference/com/android/installreferrer/api/InstallReferrerClient.InstallReferrerResponse#OK)\n indicates that the connection was successful. Each of the other\n [`InstallReferrerResponse`](/reference/com/android/installreferrer/api/InstallReferrerClient.InstallReferrerResponse)\n constants are for different types of errors.\n\n5. Override the [`onInstallReferrerServiceDisconnected()`](/reference/com/android/installreferrer/api/InstallReferrerStateListener#oninstallreferrerservicedisconnected)\n method to handle lost connections to Google Play. For\n example, the Play Install Referrer Library client may lose the connection if the\n Play Store service is updating in the background. The library client must call\n the\n [`startConnection()`](/reference/com/android/installreferrer/api/InstallReferrerClient#startConnection(com.android.installreferrer.api.InstallReferrerStateListener))\n method to restart the connection before making further requests.\n\nThe following code demonstrates how to start and test a connection to the\nPlay Store app: \n\n### Kotlin\n\n```kotlin\nprivate lateinit var referrerClient: InstallReferrerClient\n\nreferrerClient = InstallReferrerClient.newBuilder(this).build()\nreferrerClient.startConnection(object : InstallReferrerStateListener {\n\n override fun onInstallReferrerSetupFinished(responseCode: Int) {\n when (responseCode) {\n InstallReferrerResponse.OK -\u003e {\n // Connection established.\n }\n InstallReferrerResponse.FEATURE_NOT_SUPPORTED -\u003e {\n // API not available on the current Play Store app.\n }\n InstallReferrerResponse.SERVICE_UNAVAILABLE -\u003e {\n // Connection couldn't be established.\n }\n }\n }\n\n override fun onInstallReferrerServiceDisconnected() {\n // Try to restart the connection on the next request to\n // Google Play by calling the startConnection() method.\n }\n})\n```\n\n### Java\n\n```java\nInstallReferrerClient referrerClient;\n\nreferrerClient = InstallReferrerClient.newBuilder(this).build();\nreferrerClient.startConnection(new InstallReferrerStateListener() {\n @Override\n public void onInstallReferrerSetupFinished(int responseCode) {\n switch (responseCode) {\n case InstallReferrerResponse.OK:\n // Connection established.\n break;\n case InstallReferrerResponse.FEATURE_NOT_SUPPORTED:\n // API not available on the current Play Store app.\n break;\n case InstallReferrerResponse.SERVICE_UNAVAILABLE:\n // Connection couldn't be established.\n break;\n }\n }\n\n @Override\n public void onInstallReferrerServiceDisconnected() {\n // Try to restart the connection on the next request to\n // Google Play by calling the startConnection() method.\n }\n});\n```\n\nGetting the install referrer\n----------------------------\n\nAfter you have established a connection to the Play Store app, get the details\nfrom the install referrer by completing the following steps:\n\n1. Use the synchronized\n [`getInstallReferrer()`](/reference/com/android/installreferrer/api/InstallReferrerClient#getInstallReferrer())\n method to return an instance of\n [`ReferrerDetails`](/reference/com/android/installreferrer/api/ReferrerDetails).\n\n2. Use the methods that the\n [`ReferrerDetails`](/reference/com/android/installreferrer/api/ReferrerDetails)\n class provides to get details about the install referrer.\n\nThe following code demonstrates how you can access the install referrer\ninformation: \n\n### Kotlin\n\n```kotlin\nval response: ReferrerDetails = referrerClient.installReferrer\nval referrerUrl: String = response.installReferrer\nval referrerClickTime: Long = response.referrerClickTimestampSeconds\nval appInstallTime: Long = response.installBeginTimestampSeconds\nval instantExperienceLaunched: Boolean = response.googlePlayInstantParam\n```\n\n### Java\n\n```java\nReferrerDetails response = referrerClient.getInstallReferrer();\nString referrerUrl = response.getInstallReferrer();\nlong referrerClickTime = response.getReferrerClickTimestampSeconds();\nlong appInstallTime = response.getInstallBeginTimestampSeconds();\nboolean instantExperienceLaunched = response.getGooglePlayInstantParam();\n```\n\n**Caution:** The install referrer information will be\navailable for 90 days and **won't change** unless the application is\nreinstalled. To avoid unnecessary API calls in your app, you should invoke the\nAPI **only once** during the first execution after install.\n\nClosing service connection\n--------------------------\n\nAfter getting referrer information, call the\n[`endConnection()`](/reference/com/android/installreferrer/api/InstallReferrerClient#endConnection())\nmethod on your\n[`InstallReferrerClient`](/reference/com/android/installreferrer/api/InstallReferrerClient)\ninstance to close the connection. Closing the connection will help you avoid\nleaks and performance problems.\n\nFor further information, refer to the [Play Install Referrer Library\nReference](/reference/com/android/installreferrer/packages)."]]