Pour tester l'intégration de l'API Play Age Signals (bêta) à votre application, utilisez l'
implémentation FakeAgeSignalsManager disponible dans l'artefact des signaux d'âge.
L'implémentation FakeAgeSignalsManager vous permet de simuler le comportement de l'API.
FakeAgeSignalsManager est uniquement destiné aux tests unitaires ou d'intégration pour confirmer le comportement de votre application. Pour tester votre intégration, remplacez votre
AgeSignalsManager instance par une FakeAgeSignalsManager instance.
L'exemple suivant simule la réponse pour un adulte validé :
Kotlin
val fakeVerifiedUser = AgeSignalsResult.builder() .setUserStatus(AgeSignalsVerificationStatus.VERIFIED) .setAgeLower(18) .build() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeVerifiedUser) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
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 */);
L'exemple suivant simule la réponse pour un utilisateur supervisé âgé de 13 à 17 ans :
Kotlin
val fakeSupervisedUser = AgeSignalsResult.builder() .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED) .setAgeLower(13) .setAgeUpper(17) .setInstallId("fake_install_id") .build() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeSupervisedUser) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
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 */);
L'exemple suivant simule la réponse pour un utilisateur déclaré avec une tranche d'âge personnalisée de 13 à 15 ans :
Kotlin
val fakeDeclaredUserWithCustomAgeRange = AgeSignalsResult.builder() .setUserStatus(AgeSignalsVerificationStatus.DECLARED) .setAgeLower(13) .setAgeUpper(15) .setInstallId("fake_install_id") .build() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeDeclaredUserWithCustomAgeRange) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
AgeSignalsResult fakeDeclaredUserWithCustomAgeRange = AgeSignalsResult.builder() .setUserStatus(AgeSignalsVerificationStatus.DECLARED) .setAgeLower(13) .setAgeUpper(15) .setInstallId("fake_install_id") .build(); FakeAgeSignalsManager manager = new FakeAgeSignalsManager(); manager.setNextAgeSignalsResult(fakeDeclaredUserWithCustomAgeRange); manager .checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener(/* handle success case */) .addOnFailureListener(/* handle failure case */)
L'exemple suivant simule la réponse pour une approbation de modification importante en attente pour un utilisateur supervisé âgé de 13 à 17 ans sans qu'aucune modification importante précédente n'ait été approuvée :
Kotlin
val fakeSupervisedApprovalPendingUser = AgeSignalsResult.builder() .setUserStatus(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING) .setAgeLower(13) .setAgeUpper(17) .setInstallId("fake_install_id") .build() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
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 */)
L'exemple suivant simule la réponse pour une approbation de modification importante en attente pour un utilisateur supervisé âgé de 13 à 17 ans, toutes les modifications importantes ayant été approuvées jusqu'à la modification importante entrée en vigueur le 1er février 2025 inclus :
Kotlin
val 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() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeSupervisedApprovalPendingUser) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
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 */);
L'exemple suivant simule une approbation de modification importante refusée pour un utilisateur supervisé âgé de 13 à 17 ans, toutes les modifications importantes ayant été approuvées jusqu'à la modification importante entrée en vigueur le 1er février 2025 inclus :
Kotlin
val 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() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeSupervisedApprovalDeniedUser) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
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 */);
L'exemple suivant simule la réponse pour un état utilisateur inconnu :
Kotlin
val fakeUnknownUser = AgeSignalsResult.builder().setUserStatus(AgeSignalsVerificationStatus.UNKNOWN).build() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeUnknownUser) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
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 */);
L'exemple suivant simule la réponse pour une valeur d'état utilisateur null :
Kotlin
val fakeNullUserStatus = AgeSignalsResult.builder() .setUserStatus(null) .build() val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsResult(fakeNullUserStatus) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
AgeSignalsResult fakeNullUserStatus = AgeSignalsResult.builder() .setUserStatus(null) .build(); FakeAgeSignalsManager manager = new FakeAgeSignalsManager(); manager.setNextAgeSignalsResult(fakeNullUserStatus); manager .checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener(/* handle success case */) .addOnFailureListener(/* handle failure case */)
L'exemple suivant simule la réponse avec un code d'erreur réseau :
Kotlin
val manager = FakeAgeSignalsManager() manager.setNextAgeSignalsException( AgeSignalsException(AgeSignalsErrorCode.NETWORK_ERROR) ) manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener { /* handle success case */ } .addOnFailureListener { /* handle failure case */ }
Java
FakeAgeSignalsManager manager = new FakeAgeSignalsManager(); manager.setNextAgeSignalsException( new AgeSignalsException(AgeSignalsErrorCode.NETWORK_ERROR)); manager.checkAgeSignals(AgeSignalsRequest.builder().build()) .addOnSuccessListener(/* handle success case */) .addOnFailureListener(/* handle failure case */);