ProtectedSignalsManager
public
class
ProtectedSignalsManager
extends Object
java.lang.Object | |
↳ | android.adservices.signals.ProtectedSignalsManager |
ProtectedSignalsManager, ऐप्लिकेशन और विज्ञापन SDK टूल के लिए एपीआई उपलब्ध कराता है, ताकि वे सुरक्षित सिग्नल मैनेज कर सकें.
खास जानकारी
सार्वजनिक तरीके | |
---|---|
static
ProtectedSignalsManager
|
get(Context context)
ProtectedSignalsManager का इंस्टेंस बनाने का फ़ैक्ट्री तरीका. |
void
|
updateSignals(UpdateSignalsRequest updateSignalsRequest, Executor executor, OutcomeReceiver<Object, Exception> receiver)
अपडेट सिग्नल एपीआई, यूआरआई से एक JSON फ़ेच करेगा, जिसमें बताया जाएगा कि कौनसे सिग्नल जोड़ने हैं या हटाएं. |
इनहेरिट किए गए तरीके | |
---|---|
सार्वजनिक तरीके
पाएं
public static ProtectedSignalsManager get (Context context)
ProtectedSignalsManager का इंस्टेंस बनाने का फ़ैक्ट्री तरीका.
पैरामीटर | |
---|---|
context |
Context : इस्तेमाल करने के लिए Context
यह मान null नहीं हो सकता. |
रिटर्न | |
---|---|
ProtectedSignalsManager |
ProtectedSignalsManager इंस्टेंस
यह मान null नहीं हो सकता. |
अपडेट सिग्नल
public void updateSignals (UpdateSignalsRequest updateSignalsRequest, Executor executor, OutcomeReceiver<Object, Exception> receiver)
अपडेट सिग्नल एपीआई, यूआरआई से एक JSON फ़ेच करेगा, जिसमें बताया जाएगा कि कौनसे सिग्नल जोड़ने हैं या हटाएं. इस एपीआई की मदद से, एन्कोडर एंडपॉइंट को भी रजिस्टर किया जा सकता है. एंडपॉइंट का इस्तेमाल इन कामों के लिए किया जाता है कोड में बदलने का लॉजिक डाउनलोड करें. इससे सिग्नल को कोड में बदला जा सकता है.
JSON के लिए टॉप लेवल कुंजियां, इन पांच में से किसी एक निर्देश से मेल खानी चाहिए:
"पुट" - इससे नया सिग्नल जोड़ा जाता है और सभी मौजूदा सिग्नल को एक ही पासकोड से ओवरराइट कर दिया जाता है. वैल्यू के लिए यह एक JSON ऑब्जेक्ट है, जहां की के लिए और वैल्यू, डाली जाने वाली वैल्यू से संबंधित आधार 64 स्ट्रिंग हैं.
"जोड़ें" - सिग्नल की टाइम सीरीज़ में नए सिग्नल/सिग्नल जोड़ता है और सबसे पुराने सिग्नल को हटाता है अगर सीरीज़ का साइज़ तय की गई ज़्यादा से ज़्यादा सीमा से ज़्यादा हो, तो नई सीरीज़ बनाने के लिए सिग्नल मिलते हैं. इसके लिए वैल्यू एक JSON ऑब्जेक्ट है, जिसमें कुंजियां, कुंजी जोड़ने के लिए और वैल्यू, दो फ़ील्ड वाले ऑब्जेक्ट होते हैं: "values" और "maxSignals" को अपनाएं. "वैल्यू" समय में जोड़ने के लिए, सिग्नल वैल्यू से जुड़ी बेस 64 स्ट्रिंग की सूची है सीरीज़ शामिल है. "maxSignals" इस टाइम सीरीज़ में दी गई वैल्यू की ज़्यादा से ज़्यादा संख्या है. अगर आपने कुंजी से जुड़े सिग्नल की मौजूदा संख्या, maxSignals सबसे पुराने सिग्नल से ज़्यादा है हटा दिया जाएगा. ध्यान दें कि किसी कुंजी को डालने के बाद जोड़ा जा सकता है. इससे ज़्यादा जोड़ने वाला कॉन्टेंट नहीं है वैल्यू की ज़्यादा से ज़्यादा संख्या की वजह से गड़बड़ी हो सकती है.
"put_if_not_present" - नया सिग्नल तभी जोड़ता है, जब एक ही कुंजी. इसके लिए वैल्यू, एक JSON ऑब्जेक्ट है, जिसमें कुंजियां बेस 64 स्ट्रिंग हैं दी जाने वाली कुंजी के मुताबिक है और वैल्यू, कॉलम में मौजूद डालने के लिए मान है.
"हटाएं" - किसी कुंजी के सिग्नल को हटा देता है. इसकी वैल्यू, बेस 64 स्ट्रिंग की सूची है उन कुंजियों के हिसाब से जिन्हें मिटाना ज़रूरी है.
"update_encoder" - एंडपॉइंट को अपडेट करने के लिए कार्रवाई करता है. साथ ही, एक यूआरआई, जिसका इस्तेमाल किया जा सकता है का इस्तेमाल करें. अपडेट की कार्रवाई देने के लिए, "कार्रवाई" सब-की है और फ़िलहाल, ये वैल्यू काम करती हैं:
- "रजिस्टर करें" : अगर पहली बार उपलब्ध कराया गया है, तो एन्कोडर एंडपॉइंट को रजिस्टर करता है या मौजूदा एंडपॉइंट को नए एंडपॉइंट से ओवरराइट कर देता है. "एंडपॉइंट" देना "रजिस्ट्रेंट" के लिए ज़रूरी है कार्रवाई.
एन्कोडर एंडपॉइंट उपलब्ध कराने के लिए, "एंडपॉइंट" सब-की है और इसका मान यूआरआई है स्ट्रिंग डालें.
कुंजी को हर JSON में सिर्फ़ एक निर्देश की मदद से ऑपरेट किया जा सकता है. अगर दो आदेश पर ऑपरेट करने की कोशिश की जाती है
वही कुंजी है, तो यह तरीका IllegalArgumentException
से होकर गुज़रेगा
यह कॉल SecurityException
से पूरा नहीं हो पाता, अगर
ownerPackageName
, ऐप्लिकेशन के पैकेज नाम को कॉल नहीं कर रहा है और/या- खरीदार, API का इस्तेमाल करने के लिए अधिकृत नहीं है.
यह कॉल IllegalArgumentException
से पूरा नहीं हो पाता, अगर
- सर्वर से मिला JSON मान्य नहीं है.
- दिया गया यूआरआई अमान्य है.
अगर कॉलिंग पैकेज इससे ज़्यादा हो जाता है, तो यह कॉल LimitExceededException
के साथ विफल हो जाता है
की अनुमति नहीं है और इसे थ्रॉटल कर दिया गया है.
अगर अंदरूनी सेवा में कोई गड़बड़ी है, तो यह कॉल IllegalStateException
का इस्तेमाल करके नहीं किया जा सकेगा
मिला.
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
की ज़रूरत है
पैरामीटर | |
---|---|
updateSignalsRequest |
UpdateSignalsRequest : यह वैल्यू null नहीं हो सकती. |
executor |
Executor : यह वैल्यू null नहीं हो सकती.
कॉलबैक और लिसनर इवेंट इस तरीके से भेजे जाते हैं
Executor की मदद से, यह आसानी से कंट्रोल किया जा सकता है कि कौनसा थ्रेड
इस्तेमाल किया गया. अपने मुख्य थ्रेड के ज़रिए इवेंट भेजने के लिए
तो आप उपयोग कर सकते हैं
Context.getMainExecutor() .
अगर ऐसा नहीं है, तो सही थ्रेड पर भेजने वाला Executor दें. |
receiver |
OutcomeReceiver : यह वैल्यू null नहीं हो सकती. |