বিজ্ঞাপন নির্বাচন ব্যবস্থাপক
public class AdSelectionManager
extends Object
java.lang.অবজেক্ট | |
↳ | android.adservices.adselection.AdSelectionManager |
বিজ্ঞাপন নির্বাচন প্রসেস চালানোর পাশাপাশি ইম্প্রেশন রিপোর্ট করার জন্য AdSelection Manager অ্যাপ এবং বিজ্ঞাপন-SDK-এর জন্য API প্রদান করে।
সারাংশ
পাবলিক পদ্ধতি | |
---|---|
static AdSelectionManager | get ( Context context) AdSelectionManager-এর একটি উদাহরণ তৈরি করার জন্য কারখানার পদ্ধতি। |
void | getAdSelectionData ( GetAdSelectionDataRequest request, Executor executor, OutcomeReceiver < GetAdSelectionDataOutcome , Exception > receiver) ডিভাইস থেকে কাস্টম দর্শক ডেটা সংগ্রহ করে। |
TestAdSelectionManager | getTestAdSelectionManager () |
void | persistAdSelectionResult ( PersistAdSelectionResultRequest request, Executor executor, OutcomeReceiver < AdSelectionOutcome , Exception > receiver) সার্ভার-সাইড থেকে বিজ্ঞাপন নির্বাচন ফলাফল বজায় রাখে। |
void | reportEvent ( ReportEventRequest request, Executor executor, OutcomeReceiver < Object , Exception > receiver) পরিষেবাটিকে বিজ্ঞপ্তি দেয় যে |
void | reportImpression ( ReportImpressionRequest request, Executor executor, OutcomeReceiver < Object , Exception > receiver) পরিষেবাটিকে বিজ্ঞপ্তি দেয় যে |
void | selectAds ( AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, Executor executor, OutcomeReceiver < AdSelectionOutcome , Exception > receiver) পূর্বে চালানো বিজ্ঞাপন নির্বাচনের ফলাফল থেকে একটি বিজ্ঞাপন নির্বাচন করে। |
void | selectAds ( AdSelectionConfig adSelectionConfig, Executor executor, OutcomeReceiver < AdSelectionOutcome , Exception > receiver) কলার অ্যাপ্লিকেশনের জন্য একটি রিমার্কেটিং বিজ্ঞাপন নির্বাচন করতে ডিভাইসে বিজ্ঞাপন নির্বাচন প্রক্রিয়া চালায়। |
void | updateAdCounterHistogram ( UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, Executor executor, OutcomeReceiver < Object , Exception > outcomeReceiver) একটি বিজ্ঞাপনের জন্য কাউন্টার হিস্টোগ্রাম আপডেট করে যা পূর্বে |
উত্তরাধিকারসূত্রে প্রাপ্ত পদ্ধতি | |
---|---|
পাবলিক পদ্ধতি
পেতে
public static AdSelectionManager get (Context context)
AdSelectionManager-এর একটি উদাহরণ তৈরি করার জন্য কারখানার পদ্ধতি।
পরামিতি | |
---|---|
context | Context : এই মানটি ব্যবহার করার Context null হতে পারে না। |
রিটার্নস | |
---|---|
AdSelectionManager | একটি AdSelectionManager উদাহরণ এই মানটি null হতে পারে না। |
GetAdSelectionData
public void getAdSelectionData (GetAdSelectionDataRequest request, Executor executor, OutcomeReceiver<GetAdSelectionDataOutcome, Exception> receiver)
ডিভাইস থেকে কাস্টম দর্শক ডেটা সংগ্রহ করে। বিজ্ঞাপন নির্বাচনের জন্য নিলাম সার্ভারে পাঠানোর জন্য একটি সংকুচিত এবং এনক্রিপ্ট করা ব্লব ফেরত দেয়। আরও বিশদ বিবরণের জন্য, অনুগ্রহ করে বিডিং এবং নিলাম পরিষেবা ব্যাখ্যাকারী দেখুন।
কাস্টম অডিয়েন্সের বিজ্ঞাপনে অবশ্যই একটি ad_render_id
থাকতে হবে যা সংগ্রহ করার জন্য যোগ্য।
এই API দ্বারা তৈরি ব্লব দিয়ে সার্ভার-সাইডে চালানো বিজ্ঞাপন নির্বাচনের ফলাফলগুলি কীভাবে প্রক্রিয়া করা যায় তার জন্য AdSelectionManager#persistAdSelectionResult
দেখুন৷
আউটপুট রিসিভার দ্বারা পাস করা হয়, যা হয় একটি সফল রানের জন্য একটি GetAdSelectionDataOutcome
প্রদান করে, অথবা একটি Exception
থ্রো করা ব্যতিক্রমের ধরন এবং সংশ্লিষ্ট ত্রুটি বার্তা অন্তর্ভুক্ত করে।
যদি IllegalArgumentException
নিক্ষেপ করা হয়, তাহলে বিজ্ঞাপন নির্বাচন চালানোর জন্য API প্রাপ্ত অবৈধ ইনপুট আর্গুমেন্টের কারণে এটি ঘটে।
যদি IllegalStateException
ত্রুটির বার্তা "বিজ্ঞাপন নির্বাচন পরিষেবাগুলির ব্যর্থতা" সহ নিক্ষেপ করা হয়, তবে এটি বিজ্ঞাপন নির্বাচন পরিষেবার অভ্যন্তরীণ ব্যর্থতার কারণে ঘটে।
যদি TimeoutException
নিক্ষেপ করা হয়, তাহলে বিজয়ী বিজ্ঞাপন খোঁজার জন্য বিডিং, স্কোরিং বা সামগ্রিক নির্বাচন প্রক্রিয়ার সময় টাইমআউটের সম্মুখীন হলে এটি ঘটে।
LimitExceededException
নিক্ষেপ করা হলে, কলিং প্যাকেজ অনুমোদিত হারের সীমা অতিক্রম করলে এবং থ্রোটল করা হলে এটি ঘটে।
যদি SecurityException
নিক্ষেপ করা হয়, তবে এটি ঘটে যখন কলকারী অনুমোদিত নয় বা অনুমতির অনুরোধ করা হয় না।
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
প্রয়োজন।ACCESS_ADSERVICES_CUSTOM_AUDIENCE
পরামিতি | |
---|---|
request | GetAdSelectionDataRequest : এই মানটি null হতে পারে না। |
executor | Executor : এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে। |
receiver | OutcomeReceiver : এই মানটি null হতে পারে না। |
getTestAdSelectionManager
public TestAdSelectionManager getTestAdSelectionManager ()
রিটার্নস | |
---|---|
TestAdSelectionManager | এই মানটি null হতে পারে না। |
স্থির বিজ্ঞাপন নির্বাচনের ফলাফল
public void persistAdSelectionResult (PersistAdSelectionResultRequest request, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
সার্ভার-সাইড থেকে বিজ্ঞাপন নির্বাচন ফলাফল বজায় রাখে। আরও বিশদ বিবরণের জন্য, অনুগ্রহ করে বিডিং এবং নিলাম পরিষেবা ব্যাখ্যাকারী দেখুন
সার্ভার সাইডে একটি বিজ্ঞাপন নির্বাচন চালানোর জন্য কীভাবে একটি এনক্রিপ্ট করা ব্লব তৈরি করতে হয় তার জন্য AdSelectionManager#getAdSelectionData
দেখুন।
আউটপুটটি রিসিভার দ্বারা পাস করা হয়, যা হয় একটি সফল রানের জন্য একটি AdSelectionOutcome
প্রদান করে, অথবা একটি Exception
থ্রো করা ব্যতিক্রমের ধরন এবং সংশ্লিষ্ট ত্রুটি বার্তা অন্তর্ভুক্ত করে।
যদি IllegalArgumentException
নিক্ষেপ করা হয়, তাহলে বিজ্ঞাপন নির্বাচন চালানোর জন্য API প্রাপ্ত অবৈধ ইনপুট আর্গুমেন্টের কারণে এটি ঘটে।
যদি IllegalStateException
ত্রুটির বার্তা "বিজ্ঞাপন নির্বাচন পরিষেবাগুলির ব্যর্থতা" সহ নিক্ষেপ করা হয়, তবে এটি বিজ্ঞাপন নির্বাচন পরিষেবার অভ্যন্তরীণ ব্যর্থতার কারণে ঘটে।
যদি TimeoutException
নিক্ষেপ করা হয়, তাহলে বিজয়ী বিজ্ঞাপন খোঁজার জন্য বিডিং, স্কোরিং বা সামগ্রিক নির্বাচন প্রক্রিয়ার সময় টাইমআউটের সম্মুখীন হলে এটি ঘটে।
LimitExceededException
নিক্ষেপ করা হলে, কলিং প্যাকেজ অনুমোদিত হারের সীমা অতিক্রম করলে এবং থ্রোটল করা হলে এটি ঘটে।
যদি SecurityException
নিক্ষেপ করা হয়, তবে এটি ঘটে যখন কলকারী অনুমোদিত নয় বা অনুমতির অনুরোধ করা হয় না।
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
প্রয়োজন।ACCESS_ADSERVICES_CUSTOM_AUDIENCE
পরামিতি | |
---|---|
request | PersistAdSelectionResultRequest : এই মানটি null হতে পারে না। |
executor | Executor : এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে। |
receiver | OutcomeReceiver : এই মানটি null হতে পারে না। |
রিপোর্ট ইভেন্ট
public void reportEvent (ReportEventRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
পরিষেবাটিকে বিজ্ঞপ্তি দেয় যে adSelectionId
দ্বারা চিহ্নিত বিজ্ঞাপন-নির্বাচন দ্বারা নির্বাচিত বিজ্ঞাপনের জন্য রিপোর্ট করার জন্য একটি নতুন বিজ্ঞাপন ইভেন্ট রয়েছে৷ একটি বিজ্ঞাপন ইভেন্ট হল প্রদত্ত adSelectionId
এর সাথে যুক্ত একটি বিজ্ঞাপনের সাথে ঘটে যাওয়া কোনো ঘটনা। বিজ্ঞাপন ইভেন্ট কখন রিপোর্ট করা হবে সে সম্পর্কে কোন গ্যারান্টি নেই। ইভেন্ট রিপোর্টিং বিলম্বিত হতে পারে এবং রিপোর্ট ব্যাচ হতে পারে.
ReportEventRequest#getKey()
ব্যবহার করে, পরিষেবাটি registerAdBeacon
এ নিবন্ধিত reportingUri
আনবে। registerAdBeacon
সম্পর্কিত আরও বিশদ বিবরণের জন্য reportImpression(ReportImpressionRequest, Executor, OutcomeReceiver)
এর ডকুমেন্টেশন দেখুন। তারপর, পরিষেবাটি একটি POST অনুরোধের অনুরোধের অংশে ReportEventRequest#getData()
সংযুক্ত করবে এবং অনুরোধটি পাঠাবে। POST অনুরোধের মূল অংশে text/plain
content-type
থাকবে, এবং ডেটা charset=UTF-8
এ প্রেরণ করা হবে।
আউটপুট রিসিভার দ্বারা পাস করা হয়, যা হয় একটি সফল রানের জন্য একটি খালি Object
ফেরত দেয়, অথবা একটি Exception
নিক্ষেপ করা ব্যতিক্রমের ধরন এবং সংশ্লিষ্ট ত্রুটি বার্তা অন্তর্ভুক্ত করে।
যদি IllegalArgumentException
নিক্ষেপ করা হয়, তাহলে এটি বিজ্ঞাপন ইভেন্টের রিপোর্ট করার জন্য API প্রাপ্ত অবৈধ ইনপুট আর্গুমেন্টের কারণে হয়।
যদি IllegalStateException
ত্রুটির বার্তা "বিজ্ঞাপন নির্বাচন পরিষেবাগুলির ব্যর্থতা" সহ নিক্ষেপ করা হয়, তবে এটি বিজ্ঞাপন নির্বাচন পরিষেবার অভ্যন্তরীণ ব্যর্থতার কারণে ঘটে।
LimitExceededException
নিক্ষেপ করা হলে, কলিং প্যাকেজ অনুমোদিত হারের সীমা অতিক্রম করলে এবং থ্রোটল করা হলে এটি ঘটে।
যদি SecurityException
নিক্ষেপ করা হয়, তবে এটি ঘটে যখন কলকারী অনুমোদিত নয় বা অনুমতির অনুরোধ করা হয় না।
সর্বোত্তম প্রচেষ্টা হিসাবে ইভেন্টগুলি সর্বাধিক একবারে রিপোর্ট করা হবে৷
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
প্রয়োজন।ACCESS_ADSERVICES_CUSTOM_AUDIENCE
পরামিতি | |
---|---|
request | ReportEventRequest : এই মানটি null হতে পারে না। |
executor | Executor : এই মানটি null হতে পারে না। |
receiver | OutcomeReceiver : এই মানটি null হতে পারে না। |
রিপোর্ট ইমপ্রেশন
public void reportImpression (ReportImpressionRequest request, Executor executor, OutcomeReceiver<Object, Exception> receiver)
পরিষেবাটিকে বিজ্ঞপ্তি দেয় যে adSelectionId
দ্বারা চিহ্নিত বিজ্ঞাপন-নির্বাচন দ্বারা নির্বাচিত বিজ্ঞাপনের জন্য রিপোর্ট করার জন্য একটি নতুন ইম্প্রেশন রয়েছে৷ কখন ছাপ রিপোর্ট করা হবে তার কোন নিশ্চয়তা নেই। ইম্প্রেশন রিপোর্টিং বিলম্বিত হতে পারে এবং রিপোর্ট ব্যাচ করা যেতে পারে.
বিজয়ী বিক্রেতার রিপোর্টিং URL গণনা করতে, পরিষেবাটি ReportImpressionRequest.getAdSelectionConfig()
এ পাওয়া AdSelectionConfig#getDecisionLogicUri()
থেকে বিক্রেতার জাভাস্ক্রিপ্ট লজিক নিয়ে আসে। তারপরে, পরিষেবাটি বিক্রেতা JS-এ প্রাপ্ত ফাংশনগুলির মধ্যে একটি সম্পাদন করে যাকে বলা হয় reportResult
, যা ইন-ডিভাইস সিগন্যালের পাশাপাশি ReportImpressionRequest#getAdSelectionConfig()
ইনপুট প্যারামিটার হিসেবে প্রদান করে।
reportResult
ফাংশন সংজ্ঞা হল:
function reportResult(ad_selection_config, render_url, bid, contextual_signals) { return { 'status': status, 'results': {'signals_for_buyer': signals_for_buyer, 'reporting_url': reporting_url } }; }
বিজয়ী ক্রেতার রিপোর্টিং URL গণনা করতে, পরিষেবাটি বিজয়ী ক্রেতার JavaScript লজিক নিয়ে আসে যা ক্রেতার CustomAudience.getBiddingLogicUri()
এর মাধ্যমে আনা হয়। তারপর, পরিষেবাটি reportWin
নামক ক্রেতা JS-এ পাওয়া ফাংশনগুলির মধ্যে একটি সম্পাদন করে, যা ডিভাইসে সংকেত প্রদান করে, reportResult
দ্বারা গণনা করা signals_for_buyer
এবং ReportImpressionRequest#getAdSelectionConfig()
থেকে ইনপুট প্যারামিটার হিসাবে নির্দিষ্ট ক্ষেত্রগুলি প্রদান করে৷
reportWin
ফাংশন সংজ্ঞা হল:
function reportWin(ad_selection_signals, per_buyer_signals, signals_for_buyer, contextual_signals, custom_audience_reporting_signals) { return {'status': 0, 'results': {'reporting_url': reporting_url } }; }
উপরন্তু, ক্রেতা এবং বিক্রেতাদের নির্দিষ্ট বিজ্ঞাপন ইভেন্টের রিপোর্ট পেতে নিবন্ধন করার বিকল্প আছে। এটি করার জন্য, তারা যথাক্রমে ক্রেতা এবং বিক্রেতাদের জন্য reportWin
এবং reportResult
ভিতরে registerAdBeacon
ফাংশন সরবরাহ করা প্ল্যাটফর্মটি আহ্বান করতে পারে।
registerBeacon
এর ফাংশন সংজ্ঞা হল:
function registerAdBeacon(beacons)
, যেখানে beacons
হল স্ট্রিং থেকে স্ট্রিং জোড়ার একটি নির্দেশ
প্রতিটি বিজ্ঞাপন ইভেন্টের জন্য একজন ক্রেতা/বিক্রেতা প্রতিবেদনে আগ্রহী, তারা একটি event_key
: event_reporting_uri
জোড়া beacons
ডিক্টে যোগ করবে, যেখানে event_key
সেই নির্দিষ্ট ইভেন্টের জন্য একটি শনাক্তকারী। SDK যখন reportEvent(ReportEventRequest, Executor, OutcomeReceiver)
আহ্বান করে তখন এই event_key
টি ReportEventRequest#getKey()
সাথে মিলিত হওয়া উচিত। উপরন্তু, প্রতিটি event_reporting_uri
একটি Uri
তে সঠিকভাবে পার্স করা উচিত। এটি Uri
হবে যখন SDK রিপোর্ট reportEvent(ReportEventRequest, Executor, OutcomeReceiver)
আহ্বান করবে।
যখন ক্রেতা/বিক্রেতা সমস্ত জোড়া জোড়া যোগ করে যেগুলির জন্য তারা ইভেন্টগুলি পেতে চায়, তখন তারা registerAdBeacon(beacons)
ডাকতে পারে, যেখানে beacons
হল সেই ডিকটির নাম যেখানে তারা জোড়া যোগ করেছে৷
registerAdBeacon
এই পরিস্থিতিতে একটি TypeError
নিক্ষেপ করবে:
-
registerAdBeacon
একাধিকবার বলা হয়। রিপোর্টউইন/রিপোর্ট রেজাল্টে এই ত্রুটি ধরা পড়লে, জোড়ার মূল সেটটি নিবন্ধিত হবে -
registerAdBeacon
ঠিক 1টি ডিক্ট আর্গুমেন্ট নেই। - 1 dict আর্গুমেন্টের বিষয়বস্তু সব
String: String
pairings নয়।
আউটপুটটি receiver
দ্বারা পাস করা হয়, যা হয় একটি সফল রানের জন্য একটি খালি Object
ফেরত দেয়, অথবা একটি Exception
থ্রো করা ব্যতিক্রমের ধরন এবং সংশ্লিষ্ট ত্রুটি বার্তা অন্তর্ভুক্ত করে।
যদি IllegalArgumentException
নিক্ষেপ করা হয়, তাহলে এটি ভুল ইনপুট আর্গুমেন্ট দ্বারা সৃষ্ট হয় যা এপিআই ইম্প্রেশন রিপোর্ট করতে প্রাপ্ত হয়।
যদি IllegalStateException
ত্রুটির বার্তা "বিজ্ঞাপন নির্বাচন পরিষেবাগুলির ব্যর্থতা" সহ নিক্ষেপ করা হয়, তবে এটি বিজ্ঞাপন নির্বাচন পরিষেবার অভ্যন্তরীণ ব্যর্থতার কারণে ঘটে।
LimitExceededException
নিক্ষেপ করা হলে, কলিং প্যাকেজ অনুমোদিত হারের সীমা অতিক্রম করলে এবং থ্রোটল করা হলে এটি ঘটে।
যদি SecurityException
নিক্ষেপ করা হয়, তবে এটি ঘটে যখন কলকারী অনুমোদিত নয় বা অনুমতির অনুরোধ করা হয় না।
সর্বোত্তম প্রচেষ্টা হিসাবে ইমপ্রেশনগুলি একবারে রিপোর্ট করা হবে।
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
প্রয়োজন।ACCESS_ADSERVICES_CUSTOM_AUDIENCE
পরামিতি | |
---|---|
request | ReportImpressionRequest : এই মানটি null হতে পারে না। |
executor | Executor : এই মানটি null হতে পারে না। |
receiver | OutcomeReceiver : এই মানটি null হতে পারে না। |
বিজ্ঞাপন নির্বাচন করুন
public void selectAds (AdSelectionFromOutcomesConfig adSelectionFromOutcomesConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
পূর্বে চালানো বিজ্ঞাপন নির্বাচনের ফলাফল থেকে একটি বিজ্ঞাপন নির্বাচন করে।
ইনপুট adSelectionFromOutcomesConfig
বিজ্ঞাপন SDK দ্বারা প্রদান করা হয় এবং AdSelectionFromOutcomesConfig
অবজেক্ট একটি বাইন্ডার কলের মাধ্যমে স্থানান্তরিত হয়। এই কারণে, এই বস্তুগুলির মোট আকার Android IPC সীমাবদ্ধতার সাথে আবদ্ধ। AdSelectionFromOutcomesConfig
স্থানান্তর করতে ব্যর্থতা একটি TransactionTooLargeException
নিক্ষেপ করবে।
আউটপুটটি রিসিভার দ্বারা পাস করা হয়, যা হয় একটি সফল রানের জন্য একটি AdSelectionOutcome
প্রদান করে, অথবা একটি Exception
থ্রো করা ব্যতিক্রমের ধরন এবং সংশ্লিষ্ট ত্রুটি বার্তা অন্তর্ভুক্ত করে।
ইনপুট adSelectionFromOutcomesConfig
এ রয়েছে:
-
Seller
একজন নিবন্ধিতAdTechIdentifier
হতে হবে। অন্যথায়,IllegalStateException
নিক্ষেপ করা হবে। -
List of ad selection ids
বিদ্যমান থাকা উচিত এবং একই অ্যাপ্লিকেশন থেকে উদ্ভূতselectAds(AdSelectionConfig, Executor, OutcomeReceiver)
কলগুলি থেকে আসা উচিত। অন্যথায়, ইনপুট বৈধতার জন্যIllegalArgumentException
বিজ্ঞাপন নির্বাচন আইডি লঙ্ঘনকারী তালিকা বাড়াবে। -
Selection logic URI
যা হয় HTTPS বা অ্যাড সিলেকশন প্রিবিল্ট স্কিমা অনুসরণ করতে পারে।ইউআরআই যদি HTTPS স্কিমা অনুসরণ করে তাহলে হোস্টকে
seller
সাথে মেলে। অন্যথায়,IllegalArgumentException
নিক্ষেপ করা হবে।প্রি-বিল্ট ইউআরআই হল
selectOutcome
জন্য প্রয়োজনীয় জাভাস্ক্রিপ্টগুলির জন্য একটি জেনেরিক প্রি-বিল্ট লজিক প্রতিস্থাপন করার একটি উপায়। এই শেষ বিন্দুর জন্য পূর্বনির্মাণ Uri অনুসরণ করা উচিত;-
ad-selection-prebuilt://ad-selection-from-outcomes/<name>?<script-generation-parameters>
যদি একটি অসমর্থিত পূর্বনির্মাণ URI পাস করা হয় বা পূর্বনির্মাণ URI বৈশিষ্ট্য পরিষেবা দ্বারা নিষ্ক্রিয় করা হয় তাহলে
IllegalArgumentException
নিক্ষেপ করা হবে৷সমর্থিত
<name>
এবং প্রয়োজনীয়<script-generation-parameters>
-এর জন্যAdSelectionFromOutcomesConfig.Builder#setSelectionLogicUri
দেখুন। -
যদি IllegalArgumentException
নিক্ষেপ করা হয়, তাহলে বিজ্ঞাপন নির্বাচন চালানোর জন্য API প্রাপ্ত অবৈধ ইনপুট আর্গুমেন্টের কারণে এটি ঘটে।
যদি IllegalStateException
ত্রুটির বার্তা "বিজ্ঞাপন নির্বাচন পরিষেবাগুলির ব্যর্থতা" সহ নিক্ষেপ করা হয়, তবে এটি বিজ্ঞাপন নির্বাচন পরিষেবার অভ্যন্তরীণ ব্যর্থতার কারণে ঘটে।
যদি TimeoutException
নিক্ষেপ করা হয়, তাহলে বিজয়ী বিজ্ঞাপন খোঁজার জন্য বিডিং, স্কোরিং বা সামগ্রিক নির্বাচন প্রক্রিয়ার সময় টাইমআউটের সম্মুখীন হলে এটি ঘটে।
LimitExceededException
নিক্ষেপ করা হলে, কলিং প্যাকেজ অনুমোদিত হারের সীমা অতিক্রম করলে এবং থ্রোটল করা হলে এটি ঘটে।
যদি SecurityException
নিক্ষেপ করা হয়, তবে এটি ঘটে যখন কলকারী অনুমোদিত নয় বা অনুমতির অনুরোধ করা হয় না।
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
প্রয়োজন।ACCESS_ADSERVICES_CUSTOM_AUDIENCE
পরামিতি | |
---|---|
adSelectionFromOutcomesConfig | AdSelectionFromOutcomesConfig : এই মানটি null হতে পারে না। |
executor | Executor : এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে। |
receiver | OutcomeReceiver : এই মানটি null হতে পারে না। |
বিজ্ঞাপন নির্বাচন করুন
public void selectAds (AdSelectionConfig adSelectionConfig, Executor executor, OutcomeReceiver<AdSelectionOutcome, Exception> receiver)
কলার অ্যাপ্লিকেশনের জন্য একটি রিমার্কেটিং বিজ্ঞাপন নির্বাচন করতে ডিভাইসে বিজ্ঞাপন নির্বাচন প্রক্রিয়া চালায়।
বিজ্ঞাপন SDK দ্বারা ইনপুট adSelectionConfig
প্রদান করা হয় এবং AdSelectionConfig
অবজেক্ট একটি বাইন্ডার কলের মাধ্যমে স্থানান্তরিত হয়। এই কারণে, এই বস্তুগুলির মোট আকার Android IPC সীমাবদ্ধতার সাথে আবদ্ধ। AdSelectionConfig
স্থানান্তর করতে ব্যর্থতা একটি TransactionTooLargeException
নিক্ষেপ করবে।
ইনপুট adSelectionConfig
Decision Logic Uri
রয়েছে যা HTTPS বা বিজ্ঞাপন নির্বাচন প্রি-বিল্ট স্কিমা অনুসরণ করতে পারে।
ইউআরআই যদি HTTPS স্কিমা অনুসরণ করে তাহলে হোস্টকে seller
সাথে মেলে। অন্যথায়, IllegalArgumentException
নিক্ষেপ করা হবে।
প্রি-বিল্ট ইউআরআই হল scoreAds
-এর জন্য প্রয়োজনীয় জাভাস্ক্রিপ্টগুলির জন্য একটি জেনেরিক প্রি-বিল্ট লজিক প্রতিস্থাপন করার একটি উপায়। এই শেষ বিন্দুর জন্য পূর্বনির্মাণ Uri অনুসরণ করা উচিত;
-
ad-selection-prebuilt://ad-selection/<name>?<script-generation-parameters>
যদি একটি অসমর্থিত পূর্বনির্মাণ URI পাস করা হয় বা পূর্বনির্মাণ URI বৈশিষ্ট্য পরিষেবা দ্বারা নিষ্ক্রিয় করা হয় তাহলে IllegalArgumentException
নিক্ষেপ করা হবে৷
সমর্থিত <name>
এবং প্রয়োজনীয় <script-generation-parameters>
-এর জন্য AdSelectionConfig.Builder#setDecisionLogicUri
দেখুন।
আউটপুটটি রিসিভার দ্বারা পাস করা হয়, যা হয় একটি সফল রানের জন্য একটি AdSelectionOutcome
প্রদান করে, অথবা একটি Exception
থ্রো করা ব্যতিক্রমের ধরন এবং সংশ্লিষ্ট ত্রুটি বার্তা অন্তর্ভুক্ত করে।
যদি IllegalArgumentException
নিক্ষেপ করা হয়, তাহলে বিজ্ঞাপন নির্বাচন চালানোর জন্য API প্রাপ্ত অবৈধ ইনপুট আর্গুমেন্টের কারণে এটি ঘটে।
যদি IllegalStateException
ত্রুটির বার্তা "বিজ্ঞাপন নির্বাচন পরিষেবাগুলির ব্যর্থতা" সহ নিক্ষেপ করা হয়, তবে এটি বিজ্ঞাপন নির্বাচন পরিষেবার অভ্যন্তরীণ ব্যর্থতার কারণে ঘটে।
যদি TimeoutException
নিক্ষেপ করা হয়, তাহলে বিজয়ী বিজ্ঞাপন খোঁজার জন্য বিডিং, স্কোরিং বা সামগ্রিক নির্বাচন প্রক্রিয়ার সময় টাইমআউটের সম্মুখীন হলে এটি ঘটে।
LimitExceededException
নিক্ষেপ করা হলে, কলিং প্যাকেজ অনুমোদিত হারের সীমা অতিক্রম করলে এবং থ্রোটল করা হলে এটি ঘটে।
যদি SecurityException
নিক্ষেপ করা হয়, তবে এটি ঘটে যখন কলকারী অনুমোদিত নয় বা অনুমতির অনুরোধ করা হয় না।
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
প্রয়োজন।ACCESS_ADSERVICES_CUSTOM_AUDIENCE
পরামিতি | |
---|---|
adSelectionConfig | AdSelectionConfig : এই মানটি null হতে পারে না। |
executor | Executor : এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে। |
receiver | OutcomeReceiver : এই মানটি null হতে পারে না। |
updateAdCounterHistogram
public void updateAdCounterHistogram (UpdateAdCounterHistogramRequest updateAdCounterHistogramRequest, Executor executor, OutcomeReceiver<Object, Exception> outcomeReceiver)
একটি বিজ্ঞাপনের জন্য কাউন্টার হিস্টোগ্রাম আপডেট করে যা পূর্বে selectAds(android.adservices.adselection.AdSelectionConfig, java.util.concurrent.Executor, android.os.OutcomeReceiver)
কলের মাধ্যমে নির্বাচিত হয়েছিল।
কাউন্টার হিস্টোগ্রামগুলি প্রার্থীর বিজ্ঞাপনগুলিতে ফ্রিকোয়েন্সি ক্যাপ ফিল্টারিং জানাতে বিজ্ঞাপন নির্বাচনে ব্যবহার করা হয়, যেখানে বিজ্ঞাপন নির্বাচনের সময় বিডিং প্রক্রিয়া থেকে যে বিজ্ঞাপনগুলির ফ্রিকোয়েন্সি ক্যাপ পূরণ করা হয় বা অতিক্রম করা হয়।
কাউন্টার হিস্টোগ্রামগুলি শুধুমাত্র প্রদত্ত adSelectionId
দ্বারা নির্দিষ্ট করা বিজ্ঞাপনগুলির জন্য আপডেট করা যেতে পারে যেটি একই কলার অ্যাপ থেকে FLEDGE বিজ্ঞাপন নির্বাচনের সাম্প্রতিক কল দ্বারা ফিরে এসেছে৷
একটি SecurityException
outcomeReceiver
মাধ্যমে ফেরত দেওয়া হয় যদি:
- অ্যাপটি তার ম্যানিফেস্টে সঠিক অনুমতি ঘোষণা করেনি বা
-
callerAdTechIdentifier
দ্বারা চিহ্নিত অ্যাপ বা সত্তা API ব্যবহার করার জন্য অনুমোদিত নয়।
IllegalStateException
outcomeReceiver
মাধ্যমে ফেরত দেওয়া হয় যদি ফোরগ্রাউন্ড কার্যকলাপ সহ একটি অ্যাপ থেকে কল না আসে। একটি LimitExceededException
outcomeReceiver
মাধ্যমে ফেরত দেওয়া হয় যদি কল কলিং অ্যাপের API থ্রোটল অতিক্রম করে।
অন্যান্য সমস্ত ব্যর্থতার ক্ষেত্রে, outcomeReceiver
একটি খালি Object
ফিরিয়ে দেবে। নোট করুন যে ব্যবহারকারীর গোপনীয়তা রক্ষা করতে, অভ্যন্তরীণ ত্রুটিগুলি একটি ব্যতিক্রমের মাধ্যমে ফেরত পাঠানো হবে না।
AdServicesPermissions.ACCESS_ADSERVICES_CUSTOM_AUDIENCE
প্রয়োজন।ACCESS_ADSERVICES_CUSTOM_AUDIENCE
পরামিতি | |
---|---|
updateAdCounterHistogramRequest | UpdateAdCounterHistogramRequest : এই মানটি null হতে পারে না। |
executor | Executor : এই মানটি null হতে পারে না। কলব্যাক এবং শ্রোতা ইভেন্টগুলি এই Executor মাধ্যমে প্রেরণ করা হয়, কোন থ্রেড ব্যবহার করা হয় তা নিয়ন্ত্রণ করার একটি সহজ উপায় প্রদান করে। আপনার অ্যাপ্লিকেশনের মূল থ্রেডের মাধ্যমে ইভেন্টগুলি প্রেরণ করতে, আপনি Context.getMainExecutor() ব্যবহার করতে পারেন। অন্যথায়, একটি Executor প্রদান করুন যা একটি উপযুক্ত থ্রেডে প্রেরণ করে। |
outcomeReceiver | OutcomeReceiver : এই মানটি null হতে পারে না। |