শুরু করুন

প্ল্যাটফর্ম নির্বাচন করুন: অ্যান্ড্রয়েড আইওএস ইউনিটি ফ্লাটার

গুগল ইউজার মেসেজিং প্ল্যাটফর্ম (UMP) SDK হল একটি গোপনীয়তা এবং বার্তাপ্রেরণ সরঞ্জাম যা আপনাকে গোপনীয়তা পছন্দগুলি পরিচালনা করতে সহায়তা করে। আরও তথ্যের জন্য, গোপনীয়তা এবং বার্তাপ্রেরণ সম্পর্কে দেখুন।

একটি বার্তার ধরণ তৈরি করুন

আপনার বিজ্ঞাপন ম্যানেজার অ্যাকাউন্টের গোপনীয়তা এবং বার্তাপ্রেরণ ট্যাবের অধীনে " উপলব্ধ ব্যবহারকারীর বার্তা প্রকার" ব্যবহার করে ব্যবহারকারীর বার্তা তৈরি করুন। UMP SDK আপনার প্রকল্পে সেট করা বিজ্ঞাপন পরিচালক অ্যাপ্লিকেশন আইডি থেকে তৈরি একটি গোপনীয়তা বার্তা প্রদর্শন করার চেষ্টা করে।

আরও বিস্তারিত জানার জন্য, গোপনীয়তা এবং বার্তাপ্রেরণ সম্পর্কে দেখুন।

প্রতিটি অ্যাপ লঞ্চের সময় requestConsentInfoUpdate() ব্যবহার করে ব্যবহারকারীর সম্মতি তথ্য আপডেট করার অনুরোধ করা উচিত। এই অনুরোধটি নিম্নলিখিতগুলি পরীক্ষা করে:

  • সম্মতি প্রয়োজন কিনা । উদাহরণস্বরূপ, প্রথমবারের জন্য সম্মতি প্রয়োজন, অথবা পূর্ববর্তী সম্মতির সিদ্ধান্তের মেয়াদ শেষ হয়ে গেছে।
  • গোপনীয়তা বিকল্পের প্রবেশ বিন্দু প্রয়োজন কিনা । কিছু গোপনীয়তা বার্তার জন্য অ্যাপগুলিকে ব্যবহারকারীদের যেকোনো সময় তাদের গোপনীয়তা বিকল্পগুলি পরিবর্তন করার অনুমতি দিতে হয়।
@override
void initState() {
  super.initState();

  // Create a ConsentRequestParameters object.
  final params = ConsentRequestParameters();

  // Request an update to consent information on every app launch.
  ConsentInformation.instance.requestConsentInfoUpdate(
    params,
    () async {
      // Called when consent information is successfully updated.
    },
    (FormError error) {
      // Called when there's an error updating consent information.
    },
  );
}

গোপনীয়তা বার্তা ফর্মটি লোড করুন এবং উপস্থাপন করুন

সর্বশেষ সম্মতির স্ট্যাটাস পাওয়ার পর, ব্যবহারকারীর সম্মতি সংগ্রহের জন্য প্রয়োজনীয় যেকোনো ফর্ম লোড করতে loadAndShowConsentFormIfRequired() এ কল করুন। লোড করার পর, ফর্মগুলি তৎক্ষণাৎ উপস্থিত হবে।

@override
void initState() {
  super.initState();

  // Create a ConsentRequestParameters object.
  final params = ConsentRequestParameters();

  // Request an update to consent information on every app launch.
  ConsentInformation.instance.requestConsentInfoUpdate(
    params,
    () async {
      ConsentForm.loadAndShowConsentFormIfRequired((loadAndShowError) {
        if (loadAndShowError != null) {
          // Consent gathering failed.
        }

        // Consent has been gathered.
      });
    },
    (FormError error) {
      // Handle the error.
    },
  );
}

গোপনীয়তার বিকল্পগুলি

কিছু গোপনীয়তা বার্তা ফর্ম প্রকাশক-রেন্ডার করা গোপনীয়তা বিকল্প এন্ট্রি পয়েন্ট থেকে উপস্থাপন করা হয়, যা ব্যবহারকারীদের যেকোনো সময় তাদের গোপনীয়তা বিকল্পগুলি পরিচালনা করতে দেয়। গোপনীয়তা বিকল্প এন্ট্রি পয়েন্টে আপনার ব্যবহারকারীরা কোন বার্তা দেখতে পাবেন সে সম্পর্কে আরও জানতে, উপলব্ধ ব্যবহারকারীর বার্তার প্রকারগুলি দেখুন।

গোপনীয়তা বিকল্পের প্রবেশ বিন্দু প্রয়োজন কিনা তা পরীক্ষা করুন

requestConsentInfoUpdate() কল করার পর, আপনার অ্যাপের জন্য একটি গোপনীয়তা বিকল্প এন্ট্রি পয়েন্ট প্রয়োজন কিনা তা নির্ধারণ করতে getPrivacyOptionsRequirementStatus() চেক করুন। যদি একটি এন্ট্রি পয়েন্ট প্রয়োজন হয়, তাহলে আপনার অ্যাপে একটি দৃশ্যমান এবং ইন্টারঅ্যাক্টেবল UI উপাদান যোগ করুন যা গোপনীয়তা বিকল্প ফর্ম উপস্থাপন করে। যদি একটি গোপনীয়তা এন্ট্রি পয়েন্ট প্রয়োজন না হয়, তাহলে আপনার UI উপাদানটি দৃশ্যমান এবং ইন্টারঅ্যাক্টেবল নয় এমনভাবে কনফিগার করুন।

/// Helper variable to determine if the privacy options entry point is required.
Future<bool> isPrivacyOptionsRequired() async {
  return await ConsentInformation.instance
      .getPrivacyOptionsRequirementStatus() ==
      PrivacyOptionsRequirementStatus.required;
}

গোপনীয়তা বিকল্পের প্রয়োজনীয়তার স্থিতির সম্পূর্ণ তালিকার জন্য, PrivacyOptionsRequirementStatus দেখুন।

গোপনীয়তা বিকল্প ফর্মটি উপস্থাপন করুন

যখন ব্যবহারকারী আপনার উপাদানের সাথে ইন্টারঅ্যাক্ট করে, তখন গোপনীয়তা বিকল্প ফর্মটি উপস্থাপন করুন:

ConsentForm.showPrivacyOptionsForm((formError) {
  if (formError != null) {
    debugPrint("${formError.errorCode}: ${formError.message}");
  }
});

ব্যবহারকারীর সম্মতিতে বিজ্ঞাপনের অনুরোধ করুন

বিজ্ঞাপনের অনুরোধ করার আগে, ব্যবহারকারীর কাছ থেকে সম্মতি পেয়েছেন কিনা তা পরীক্ষা করতে canRequestAds() ব্যবহার করুন:

await ConsentInformation.instance.canRequestAds()

সম্মতি সংগ্রহের সময় বিজ্ঞাপনের অনুরোধ করা যাবে কিনা তা পরীক্ষা করার জন্য নিম্নলিখিত স্থানগুলি তালিকাভুক্ত করা হল:

  • বর্তমান অধিবেশনে UMP SDK সম্মতি সংগ্রহ করার পর।
  • requestConsentInfoUpdate() কল করার পরপরই। UMP SDK পূর্ববর্তী অ্যাপ সেশনে সম্মতি পেয়ে থাকতে পারে।

সম্মতি সংগ্রহের প্রক্রিয়া চলাকালীন যদি কোনও ত্রুটি দেখা দেয়, তাহলে বিজ্ঞাপনের অনুরোধ করতে পারবেন কিনা তা পরীক্ষা করে দেখুন। UMP SDK পূর্ববর্তী অ্যাপ সেশনের সম্মতির স্থিতি ব্যবহার করে।

অপ্রয়োজনীয় বিজ্ঞাপন অনুরোধের কাজ রোধ করুন

সম্মতি সংগ্রহের পর এবং requestConsentInfoUpdate() কল করার পর canRequestAds() চেক করার সময়, নিশ্চিত করুন যে আপনার লজিক অপ্রয়োজনীয় বিজ্ঞাপন অনুরোধগুলিকে আটকাচ্ছে যার ফলে উভয় চেকই true ফিরে আসতে পারে। উদাহরণস্বরূপ, একটি বুলিয়ান ভেরিয়েবলের সাথে।

পরীক্ষামূলক

আপনি যদি আপনার অ্যাপ ডেভেলপ করার সময় ইন্টিগ্রেশন পরীক্ষা করতে চান, তাহলে আপনার টেস্ট ডিভাইসটি প্রোগ্রাম্যাটিকভাবে নিবন্ধন করতে এই ধাপগুলি অনুসরণ করুন। আপনার অ্যাপটি প্রকাশ করার আগে এই টেস্ট ডিভাইস আইডি সেট করে এমন কোডটি সরিয়ে ফেলতে ভুলবেন না।

  1. requestConsentInfoUpdate() কল করুন।
  2. লগ আউটপুটে নিচের উদাহরণের মতো একটি বার্তা আছে কিনা তা পরীক্ষা করুন, যা আপনার ডিভাইস আইডি এবং এটিকে পরীক্ষামূলক ডিভাইস হিসেবে কীভাবে যুক্ত করবেন তা দেখায়:

    অ্যান্ড্রয়েড

    Use new ConsentDebugSettings.Builder().addTestDeviceHashedId("33BE2250B43518CCDA7DE426D04EE231")
    to set this as a debug device.
    

    আইওএস

    <UMP SDK>To enable debug mode for this device,
    set: UMPDebugSettings.testDeviceIdentifiers = @[2077ef9a63d2b398840261c8221a0c9b]
    
  3. আপনার ক্লিপবোর্ডে আপনার পরীক্ষামূলক ডিভাইস আইডি কপি করুন।

  4. ConsentDebugSettings.testIdentifiers কল করতে আপনার কোড পরিবর্তন করুন এবং আপনার পরীক্ষামূলক ডিভাইস আইডিগুলির একটি তালিকা পাস করুন।

    ConsentDebugSettings debugSettings = ConsentDebugSettings(
      testIdentifiers: ["TEST-DEVICE-HASHED-ID"],
    );
    
    ConsentRequestParameters params =
        ConsentRequestParameters(consentDebugSettings: debugSettings);
    
    ConsentInformation.instance.requestConsentInfoUpdate(params, () async {
      // ...
    };
    

জোর করে ভূগোল তৈরি করুন

UMP SDK আপনার অ্যাপের আচরণ পরীক্ষা করার একটি উপায় প্রদান করে যেন ডিভাইসটি বিভিন্ন অঞ্চলে অবস্থিত, যেমন EEA বা UK, debugGeography ব্যবহার করে। মনে রাখবেন যে ডিবাগ সেটিংস শুধুমাত্র পরীক্ষামূলক ডিভাইসগুলিতে কাজ করে।

ConsentDebugSettings debugSettings = ConsentDebugSettings(
  debugGeography: DebugGeography.debugGeographyEea,
  testIdentifiers: ["TEST-DEVICE-HASHED-ID"],
);

ConsentRequestParameters params =
    ConsentRequestParameters(consentDebugSettings: debugSettings);

ConsentInformation.instance.requestConsentInfoUpdate(params, () async {
  // ...
};

UMP SDK দিয়ে আপনার অ্যাপ পরীক্ষা করার সময়, SDK-এর অবস্থা রিসেট করা আপনার জন্য সহায়ক হতে পারে যাতে আপনি ব্যবহারকারীর প্রথম ইনস্টল অভিজ্ঞতা অনুকরণ করতে পারেন। SDK এটি করার জন্য reset() পদ্ধতি প্রদান করে।

ConsentInformation.instance.reset();

GitHub-এ উদাহরণ

এই পৃষ্ঠায় আমাদের Flutter উদাহরণগুলিতে UMP SDK ইন্টিগ্রেশনের একটি সম্পূর্ণ উদাহরণ দেখুন।