web-dev-qa-db-fra.com

Receive_SMS Problème de permission

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.

 enter image description here

Aussi celui-ci en manifeste:

 enter image description here

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?

5
CodeGeek

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.

7
Abubakker Moallim

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 !!!

0
ElectronSz