Sur Twitter Mise à jour du 25 novembre 2013, ils demandent recevoir des messages textuels (SMS) autorisation. Quelqu'un sait-il à quoi cela sert exactement ?
Réponses
Trop de publicités?J'étais également préoccupé par ce problème et j'ai décidé de décompiler l'application pour découvrir ce qu'elle fait. Twitter reçoit des messages SMS via un BroadcastReceiver dans com.twitter.applib.client.SmsReceiver. Voici à quoi ressemble le code après l'avoir décompilé en Java avec dex2jar et jd-gui.
public class SmsReceiver extends BroadcastReceiver
{
private void a(Context paramContext, SmsMessage paramSmsMessage)
{
if (paramSmsMessage != null)
{
String str1 = paramSmsMessage.getMessageBody();
String str2 = paramContext.getText(mb.sms_verification_text).toString();
if (("40404".equals(paramSmsMessage.getOriginatingAddress())) && (str1.startsWith(str2)))
{
SharedPreferences localSharedPreferences = PreferenceManager.getDefaultSharedPreferences(paramContext);
localSharedPreferences.edit().putString("device_registration_sms_text", str1).commit();
String str3 = localSharedPreferences.getString("device_registration_normalized_phone_number", "");
if ((!TextUtils.isEmpty(str3)) && (!TextUtils.isEmpty(str1)))
a.a(paramContext).c(str3, str1);
}
}
}
public void onReceive(Context paramContext, Intent paramIntent)
{
Bundle localBundle = paramIntent.getExtras();
if (localBundle != null)
{
Object[] arrayOfObject = (Object[])localBundle.get("pdus");
int i = arrayOfObject.length;
for (int j = 0; j < i; j++)
a(paramContext, SmsMessage.createFromPdu((byte[])arrayOfObject[j]));
}
}
}
Vous voyez ici que lorsqu'un message texte est reçu, l'application passe le message à a() et vérifie qu'il provient du numéro de Twitter. Ensuite, elle écrit le contenu du message dans les préférences partagées. Comme l'a suggéré Problematic, l'application ne fait que vérifier votre numéro et ne fait rien de malveillant. Bien que Twitter ne fasse rien de malveillant, il aurait été bien qu'ils expliquent pourquoi l'application a besoin de cette permission dans la dernière mise à jour.
Une application comme Permissions peut vous indiquer la signification des différents types d'autorisations.
Pour recevoir des messages textuels (SMS) :
Permet à l'application de recevoir et de traiter des messages SMS. Cela signifie que l'application peut surveiller ou supprimer les messages envoyés à votre appareil sans vous les montrer. sans vous les montrer.
Pour autant que j'aie pu en juger, il n'existe aucune information officielle sur l'objet de cette autorisation.
J'ai vu cela dans une autre application ces derniers temps. L'application Google Hangouts a récemment obtenu l'autorisation SMS et l'utilise (en plus d'afficher les messages SMS de votre téléphone dans l'application) pour traiter les textes de confirmation du numéro de téléphone : l'application Hangouts traite le message SMS et vérifie votre numéro sans vous demander d'entrer le code (ni même vous montrer le message SMS). Si je devais faire une supposition éclairée, je supposerais que l'application Twitter fait quelque chose de similaire, mais encore une fois, il n'y a pas de mot officiel sur l'objectif de ceci.