वह Firebase Dynamic Links पाने के लिए जो
, आपको अपने ऐप्लिकेशन में Dynamic Links SDK टूल शामिल करना होगा और
FirebaseDynamicLinks.getDynamicLink()
तरीका, जब आपका ऐप्लिकेशन
Dynamic Link में डेटा पास कर लें.
Firebase और Dynamic Links SDK टूल सेट अप करें
अगर आपने अब तक ऐसा नहीं किया है, तो अपने Android प्रोजेक्ट में Firebase जोड़ें.
अपना ऐप्लिकेशन रजिस्टर करते समय, अपनी SHA-1 साइनिंग कुंजी बताएं. अगर आपको ऐप्लिकेशन लिंक, अपनी SHA-256 कुंजी भी बताएं.
-
आपके मॉड्यूल (ऐप्लिकेशन-लेवल) की Gradle फ़ाइल में (आम तौर पर
<project>/<app-module>/build.gradle.kts
या<project>/<app-module>/build.gradle
), Android के लिए Dynamic Links लाइब्रेरी के लिए डिपेंडेंसी जोड़ें. हमारा सुझाव है कि Firebase Android BoM लाइब्रेरी के वर्शन को कंट्रोल करने के लिए.Dynamic Links के साथ बेहतर अनुभव के लिए, हमारा सुझाव है कि Google Analytics को चालू किया जा रहा है जोड़ना होगा. साथ ही, अपने ऐप्लिकेशन में Google Analytics के लिए Firebase SDK टूल जोड़ना होगा.
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.2.0")) // Add the dependencies for the Dynamic Links and Analytics libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-dynamic-links' implementation 'com.google.firebase:firebase-analytics' }
Firebase Android BoM का इस्तेमाल करने पर, आपका ऐप्लिकेशन हमेशा Firebase Android लाइब्रेरी के साथ काम करने वाले वर्शन का इस्तेमाल करेगा.
(वैकल्पिक) BoM का इस्तेमाल करके, बिना Firebase लाइब्रेरी डिपेंडेंसी जोड़ें
अगर आपको Firebase BoM का इस्तेमाल नहीं करना है, तो आपको Firebase लाइब्रेरी का हर वर्शन बताना होगा इसकी डिपेंडेंसी लाइन में.
ध्यान दें कि अगर आप अपने ऐप्लिकेशन में कई Firebase लाइब्रेरी का इस्तेमाल करते हैं, तो हम लाइब्रेरी वर्शन को मैनेज करने के लिए, BoM का इस्तेमाल करने की सलाह दी जाती है. इससे यह पक्का होता है कि सभी वर्शन साथ काम करता है.
dependencies { // Add the dependencies for the Dynamic Links and Analytics libraries // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-dynamic-links:22.1.0' implementation 'com.google.firebase:firebase-analytics:22.1.0' }
- Firebase कंसोल में, Dynamic Links खोलें सेक्शन में जाएं. अगर आपसे कहा जाए, तो सेवा की शर्तों को स्वीकार करें.
डीप लिंक के लिए इंटेंट फ़िल्टर जोड़ें
के साथ
सादे डीप लिंक के लिए, आपको उस गतिविधि में एक नया इंटेंट फ़िल्टर जोड़ना होगा जो
डीप लिंक शामिल करें. इंटेंट फ़िल्टर को आपके डोमेन के डीप लिंक कैप्चर करने चाहिए, क्योंकि
अगर आपका ऐप्लिकेशन इंस्टॉल हो जाता है, तो Dynamic Link आपके डोमेन पर रीडायरेक्ट करेगा. ऐप्लिकेशन डाउनलोड करने के लिए यह ज़रूरी है
Play Store से इंस्टॉल/अपडेट हो जाने और सिर्फ़ एक बार टैप करने के बाद, Dynamic Link का डेटा मिलेगा
'जारी रखें' बटन. AndroidManifest.xml
में:
<intent-filter> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:host="example.com" android:scheme="https"/> </intent-filter>
जब लोग आपकी तय की गई स्कीम और होस्ट के डीप लिंक वाला Dynamic Link खोलते हैं, तो आपका ऐप्लिकेशन लिंक को हैंडल करने के लिए, इस इंटेंट फ़िल्टर से गतिविधि शुरू करें.
डीप लिंक मैनेज करना
डीप लिंक पाने के लिए, getDynamicLink()
तरीके को कॉल करें:
Kotlin+KTX
Firebase.dynamicLinks .getDynamicLink(intent) .addOnSuccessListener(this) { pendingDynamicLinkData: PendingDynamicLinkData? -> // Get deep link from result (may be null if no link is found) var deepLink: Uri? = null if (pendingDynamicLinkData != null) { deepLink = pendingDynamicLinkData.link } // Handle the deep link. For example, open the linked // content, or apply promotional credit to the user's // account. // ... } .addOnFailureListener(this) { e -> Log.w(TAG, "getDynamicLink:onFailure", e) }
Java
FirebaseDynamicLinks.getInstance() .getDynamicLink(getIntent()) .addOnSuccessListener(this, new OnSuccessListener<PendingDynamicLinkData>() { @Override public void onSuccess(PendingDynamicLinkData pendingDynamicLinkData) { // Get deep link from result (may be null if no link is found) Uri deepLink = null; if (pendingDynamicLinkData != null) { deepLink = pendingDynamicLinkData.getLink(); } // Handle the deep link. For example, open the linked // content, or apply promotional credit to the user's // account. // ... // ... } }) .addOnFailureListener(this, new OnFailureListener() { @Override public void onFailure(@NonNull Exception e) { Log.w(TAG, "getDynamicLink:onFailure", e); } });
आपको ऐसी हर गतिविधि में getDynamicLink()
को कॉल करना होगा जो
लिंक से लॉन्च किया गया हो, भले ही लिंक इंटेंट से उपलब्ध हो
getIntent().getData()
का इस्तेमाल करके. getDynamicLink()
को कॉल किया जा रहा है
लिंक को पुनः प्राप्त करता है और उस डेटा को साफ़ करता है, ताकि आपके द्वारा इसे केवल एक बार संसाधित किया जाए
है.
आम तौर पर, मुख्य गतिविधि में भी getDynamicLink()
को कॉल किया जाता है
का इस्तेमाल करके, लिंक से मैच करने वाले इंटेंट फ़िल्टर से लॉन्च की जा सकती है.
आंकड़े रिकॉर्ड करें
नीचे दिए गए इवेंट, Google Analytics में अपने-आप ट्रैक किए जा सकते हैं. इन्हें Firebase कंसोल.
dynamic_link_app_open
dynamic_link_first_open
dynamic_link_app_update
इन इवेंट को रजिस्टर करने के लिए, आपको पहले Google Analytics कॉन्फ़िगर करना होगा तो डीप लिंक को फिर से पाएं. देखें कि यहां दी गई शर्तें पूरी हुई हैं या नहीं:
- अपने ऐप्लिकेशन के एंट्री पॉइंट में
FirebaseDynamicLinks.getDynamicLink()
पर कॉल करें: - लॉन्चर की गतिविधियां. e.g.:
action="android.intent.action.MAIN"
,category="android.intent.category.LAUNCHER"
. - गतिविधि के एंट्री पॉइंट. e.g.:
onStart()
,onCreate()
. - डीप लिंक गतिविधियां.
- Google Analytics को सेट अप और इस्तेमाल करें:
- Google Analytics डिपेंडेंसी शामिल करें. आम तौर पर, यह प्रोसेस अपने-आप
google-services
Gradle प्लग इन. - अपने विज्ञापनों के लिए,
आपके ऐप्लिकेशन में
google-services.json
कॉन्फ़िगरेशन फ़ाइल है. - कॉल करने से पहले
FirebaseAnalytics.getInstance()
पर कॉल करेंFirebaseDynamicLinks.getDynamicLink()
.
ऐप्लिकेशन लिंक का इस्तेमाल करके, Dynamic Links को मैनेज करना
Android 6.0 (एपीआई लेवल 23) और इसके बाद के वर्शन पर, Dynamic Links को हैंडल करने के लिए अपने ऐप्लिकेशन को सेट अप किया जा सकता है जब आपका ऐप्लिकेशन Android ऐप्लिकेशन के लिंक.
पक्का करें कि आपने अपने प्रोजेक्ट में, अपने ऐप्लिकेशन के लिए SHA256 सर्टिफ़िकेट फ़िंगरप्रिंट जोड़ा है Firebase कंसोल. Dynamic Links इनके लिए, ऐप्लिकेशन लिंक से जुड़ी वेबसाइट का असोसिएशन सेट अप करेगा आपका Dynamic Links डोमेन.
गतिविधि में अपने-आप पुष्टि होने वाला इंटेंट फ़िल्टर जोड़ें, जो Dynamic Link को हैंडल करेगा.
अपने प्रोजेक्ट के Dynamic Links डोमेन को इस रूप में होस्ट करें:
Firebase कंसोल में मिले. तय सीमा में
AndroidManifest.xml
:
<intent-filter android:autoVerify="true"> <action android:name="android.intent.action.VIEW"/> <category android:name="android.intent.category.DEFAULT"/> <category android:name="android.intent.category.BROWSABLE"/> <data android:host="example.com/link" android:scheme="http"/> <data android:host="example.com/link" android:scheme="https"/> </intent-filter>
ध्यान दें कि android:host
को आपके Dynamic Links डोमेन पर सेट होना चाहिए, न कि डोमेन पर
को भी शामिल करें.
आपके मेनिफ़ेस्ट में मौजूद सभी autoVerify
इंटेंट फ़िल्टर, ऐप्लिकेशन के लिए रजिस्टर होने चाहिए
दर्शकों की दिलचस्पी से जुड़े लिंक. Firebase आपके Dynamic Links डोमेन के लिए, इसे अपने-आप मैनेज करता है. हालांकि, आपके पास यह जांच करने का विकल्प होता है
इसे अपने Dynamic Links डोमेन पर होस्ट की गई assetlinks.json
फ़ाइल को खोलकर:
https://YOUR_DOMAIN/.well-known/assetlinks.json
Dynamic Links को अब सीधे आपके ऐप्लिकेशन पर भेजा जाएगा. आपको डीप लिंक और दूसरी जानकारी मिलेगी
आपने जिस गतिविधि में ऐप्लिकेशन लिंक जोड़े हैं उसमें getDynamicLink()
पर कॉल करके, Dynamic Link का डेटा सेव किया गया
इंटेंट फ़िल्टर (जैसा कि
डीप लिंक हैंडल करना).
ध्यान दें: ऐप्लिकेशन लिंक की मदद से शुरू करने पर, उपयोगकर्ता सीधे ऐप्लिकेशन पर पहुंच जाता है, इसलिए डाइनैमिक लिंक, ज़रूरी कम से कम वर्शन के मुताबिक नहीं हो सकता. इसलिए, ऐप्लिकेशन को खोलने के बाद, आपको डाइनैमिक लिंक के कम से कम वर्शन ( getminappversion) के ख़िलाफ़ PackageInfo.versionCode में साइन इन करें और का इस्तेमाल करके, ज़रूरत पड़ने पर ऐप्लिकेशन को अपग्रेड करने के लिए उपयोगकर्ता को रीडायरेक्ट करें getUpdateAppIntent.