Aller au contenu

onSignalStrengthsChanged + galaxy S2


blubsy

Recommended Posts

Bonjour,

j'ai une application qui était en version sdk 4 afin quelle puisse tournée sur un maximum de device android.

Mais je viens de m'acheter le Galaxy S2 et une fonction de mon application ne fonctionne plus.

J'ai donc fait des tests et trouvé que LISTEN_SIGNAL_STRENGTH était déprécié et qu'il fallait utiliser LISTEN_SIGNAL_STRENGTHS.

Mais voilà maintenant j'ai 2 questions :

Si je veux utilisé LISTEN_SIGNAL_STRENGTHS je suis obligé de passé en SDK supérieur à 7 et donc l'application ne fonctionnera pas sur les anciennes version d'android (ant à 2.1).

Si je reste en sdk 4 alors je ne pourrais pas mettre LISTEN_SIGNAL_STRENGTHS.

Comment puis je faire ?

Seconde question :

Sur Galaxy S2 je n'arrive pas à faire fonctionner LISTEN_SIGNAL_STRENGTHS, celui ci me renvois tj 99 en résultat :

 			    TelephonyManager telManager;
		    PhoneStateListener signalListener;

		    signalListener=new PhoneStateListener() {

		           public void onSignalStrengthsChanged(SignalStrength signalStrength) {

		                Log.d("MyApp", "================>>>>"+signalStrength.getGsmSignalStrength());

		           }

		     }; 

		        telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
		        telManager.listen(signalListener, PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);   

Quelqu'un à t-il une idée du problème ?

Merci par avance pour votre aide.

Lien vers le commentaire
Partager sur d’autres sites

Bon, moi à ta place, étant donnée le nombre de personnes utilisant encore une version inférieure à la 2.1 (environ 2%), je ne me prendrais pas le choux avec ça. Mais si tu veux vraiment le faire, y'a bien une solution, mais alors elle est vraiment cracra :D

         
if(Build.VERSION.SDK_INT<7){
telManager.listen(signalListener, 0x00000002);    
}
else{
telManager.listen(signalListener, 0x00000100);  
}

Et puis je ne suis pas sûr à 100% qu'elle fonctionne... A tester quoi ;)

Hésite pas à faire un retour si ça marche ^^

EDIT: D'ailleurs, je crois que la classe SignalStrength n'est implémentée qu'à partir de la 2.1 donc là ça devient un peu plus problématique pour les inférieures...

Lien vers le commentaire
Partager sur d’autres sites

Merci pour ta réponse, en faite SignalStrength (sans S) fonctionne nickel à partir du sdk 1.5 mais SignalStrength avec un S elle ne fonctionne pas en dessous de 2.1.

Bon je vais testé ça.

Plus qu'a comprendre pourquoi le Galaxy S2 bug avec SignalStrength (avec ou sans S).

Bonne journée et merci

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...