Play Age Signals API (बीटा वर्शन) के इंटिग्रेशन की जांच करना

अपने ऐप्लिकेशन के साथ Play Age Signals API (बीटा वर्शन) के इंटिग्रेशन की जांच करने के लिए, उम्र के सिग्नल वाले आर्टफ़ैक्ट में उपलब्ध FakeAgeSignalsManager का इस्तेमाल करें. FakeAgeSignalsManager को लागू करने से, आपको एपीआई के व्यवहार का सिम्युलेशन करने की सुविधा मिलती है.

FakeAgeSignalsManager का इस्तेमाल सिर्फ़ यूनिट या इंटिग्रेशन टेस्ट के लिए किया जाता है. इससे आपके ऐप्लिकेशन के व्यवहार की पुष्टि की जा सकती है. इंटीग्रेशन की जांच करने के लिए, अपने AgeSignalsManager इंस्टेंस को FakeAgeSignalsManager इंस्टेंस से बदलें.

यहां पुष्टि किए गए वयस्क के लिए, जवाब का एक उदाहरण दिया गया है:

AgeSignalsResult fakeVerifiedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.VERIFIED)
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeVerifiedUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
  .addOnSuccessListener(/* handle success case */)
  .addOnFailureListener(/* handle failure case */);

यहां 13 से 17 साल के ऐसे उपयोगकर्ता के लिए जवाब का उदाहरण दिया गया है जिसके खाते की निगरानी की जा रही है:

AgeSignalsResult fakeSupervisedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setInstallId("fake_install_id")
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeSupervisedUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
  .addOnSuccessListener(/* handle success case */)
  .addOnFailureListener(/* handle failure case */);

यहां दिए गए उदाहरण में, निगरानी में रखे गए 13 से 17 साल के उपयोगकर्ता के लिए, अहम बदलाव को मंज़ूरी मिलने की स्थिति दिखाई गई है. इस उपयोगकर्ता के लिए, पहले किसी अहम बदलाव को मंज़ूरी नहीं मिली है:

AgeSignalsResult fakeSupervisedApprovalPendingUser =
      AgeSignalsResult.builder()
          .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING)
          .setAgeLower(13)
          .setAgeUpper(17)
          .setInstallId("fake_install_id")
          .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
  .addOnSuccessListener(/* handle success case */)
  .addOnFailureListener(/* handle failure case */);

यहां दिए गए उदाहरण में, 13 से 17 साल की उम्र के ऐसे व्यक्ति के लिए जवाब दिखाया गया है जिसकी निगरानी की जा रही है. इसमें, खाते में किए गए किसी अहम बदलाव को मंज़ूरी मिलने का इंतज़ार किया जा रहा है. साथ ही, इसमें 2025-02-01 से लागू हुए अहम बदलाव तक, खाते में किए गए सभी अहम बदलावों को मंज़ूरी मिल चुकी है:

AgeSignalsResult fakeSupervisedApprovalPendingUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setMostRecentApprovalDate(
            Date.from(LocalDate.of(2025, 2, 1).atStartOfDay(ZoneOffset.UTC).toInstant()))
        .setInstallId("fake_install_id")
        .build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
  .addOnSuccessListener(/* handle success case */)
  .addOnFailureListener(/* handle failure case */);

यहां दिए गए उदाहरण में, 13 से 17 साल की उम्र के ऐसे उपयोगकर्ता के लिए, अहम बदलाव को मंज़ूरी न मिलने की स्थिति दिखाई गई है जिसके खाते की निगरानी की जा रही है. इस उपयोगकर्ता के लिए, 1 फ़रवरी, 2025 से लागू होने वाले अहम बदलाव तक, सभी अहम बदलावों को मंज़ूरी मिली थी:

AgeSignalsResult fakeSupervisedApprovalDeniedUser =
    AgeSignalsResult.builder()
        .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED)
        .setAgeLower(13)
        .setAgeUpper(17)
        .setMostRecentApprovalDate(
            Date.from(LocalDate.of(2025, 2, 1).atStartOfDay(ZoneOffset.UTC).toInstant()))
        .setInstallId("fake_install_id")
        .build();
 FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
 manager.setNextAgeSignalsResult(fakeSupervisedApprovalDeniedUser);
 manager.checkAgeSignals(AgeSignalsRequest.builder().build())
   .addOnSuccessListener(/* handle success case */)
   .addOnFailureListener(/* handle failure case */);

यहां दिए गए उदाहरण में, उपयोगकर्ता की स्थिति की जानकारी न होने पर मिलने वाले जवाब को दिखाया गया है:

AgeSignalsResult fakeUnknownUser =
    AgeSignalsResult.builder().setUserStatus(AgeSignalsVerificationStatus.UNKNOWN).build();
FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsResult(fakeUnknownUser);
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
  .addOnSuccessListener(/* handle success case */)
  .addOnFailureListener(/* handle failure case */);

यहां दिए गए उदाहरण में, नेटवर्क से जुड़ी गड़बड़ी के कोड के साथ जवाब को सिम्युलेट किया गया है:

FakeAgeSignalsManager manager = new FakeAgeSignalsManager();
manager.setNextAgeSignalsException(
  new AgeSignalsException(AgeSignalsErrorCode.NETWORK_ERROR));
manager.checkAgeSignals(AgeSignalsRequest.builder().build())
  .addOnSuccessListener(/* handle success case */)
  .addOnFailureListener(/* handle failure case */);