Comme vous le savez, selon la politique de Google pour les développeurs, si la fonctionnalité principale de l'application ne dépend pas de SMS, il convient de supprimer l'autorisation Android de RECEIVE_SMS et de rechercher une alternative différente.
Mais mon problème est que je n'utilise pas RECEIVE_SMS dans manifest ou dans Runtime. Néanmoins, Google me met en garde contre l'utilisation de l'autorisation RECEIVE_SMS.
Bien que sur Play Store Si je vérifie les autorisations requises dans cette application, il montre l'autorisation RECEIVE_SMS.
Vous pouvez voir certaines des captures d'écran de mon application où j'ai recherché cette permission si je l'utilise n'importe où par erreur.
Mais je suis incapable de le trouver.
Aussi celui-ci en manifeste:
Comme vous pouvez le constater, je ne demande pas cette autorisation, ni dans le manifeste, ni dans l'exécution.
J'utilise l'authentification Firebase Phone et l'intégration PayUMoney Payment. Est-il possible que ces deux puissent causer des problèmes? ou ils demandent en interne cette permission.
Je ne sais pas d'où vient cette permission.
Ce serait très utile si quelqu'un pouvait m'aider à résoudre ce problème.
quelqu'un confronté au même problème?
Eh bien, le problème concerne la bibliothèque PayUMoney. Parce que Firebase Phone Auth ne demande pas l'autorisation RECEIVE_SMS
.
Ce que vous pouvez faire, c'est supprimer la bibliothèque une à une et vérifier si elle demande toujours l'autorisation RECEIVE_SMS
.
Si vous trouvez quelle bibliothèque est la cause, vous pouvez l'écrire dans votre manifeste Android.
<uses-permission
Android:name="Android.permission.RECEIVE_SMS"
tools:node="remove" />
Cela empêchera une bibliothèque de demander cette permission en interne. Vérifiez également si votre bibliothèque est fonctionnelle sans cette autorisation après avoir ajouté cette ligne au manifeste de votre application.
Pour votre question particulière, PayUMoney est à l'origine de ce problème et non de Firebase, vous pouvez donc l'ajouter à votre manifeste. et vérifiez que PayuMoney est fonctionnel.
L'authentification de Firebase Phone devra utiliser SMS pour vous authentifier. Donc, il est nécessaire sur votre permission. C'est pourquoi vous avez cette erreur, c'est une façon simple de dire; veuillez inclure les autorisations SMS.
Et s'il vous plaît, vous pouvez essayer d'utiliser cette bibliothèque pour une manipulation facile des autorisations;
implementation 'gun0912.ted:tedpermission:2.2.2
Et chaque fois que vous avez besoin d'une permission, faites-le;
` public class GrantPermisions {
public static void givePermision(final Context context){
PermissionListener permissionlistener = new PermissionListener() {
@Override
public void onPermissionGranted() {
}
@Override
public void onPermissionDenied(List<String> deniedPermissions) {
}
};
TedPermission.with(context)
.setPermissionListener(permissionlistener)
.setDeniedMessage("If you reject permission,you can not use this service\n\nPlease turn on permissions at [Setting] > [Permission]")
.setPermissions(Manifest.permission.INTERNET,
Manifest.permission.READ_SMS,
Manifest.permission.READ_CALL_LOG)
.check();
}
} `
J'espère que vous le réparer. La production attend mate !!!