Kokiyas25 Posté(e) 20 octobre 2010 Share Posté(e) 20 octobre 2010 Bonjour à tous, Je suis tout récent dans le développement sous Android et sous JAVA. (deux lacunes que j'espére combler bientôt) Je souhaiterais afficher des informations relatives à ma batterie. Je récupére donc les informations en provenance de l'intent ACTION_BATTERY_CHANGED. Je crée une chaine de caratére "Battery_info" qui contiendra la charge de la batterie que je souhaite afficher. Je cré un id "state" dans mon fichier main.xml android:id="@+id/state" android:layout_width="fill_parent" android:layout_height="wrap_content"> puis dans mon fichier java : TextView state = (TextView) findViewById(R.id.state); state.setText(batteryInfo); Je pensais que cela serait sufisant mais lorsque je lance l'application rien ne s'affiche. Voir détail du fichier java ci dessous. public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); BroadcastReceiver batteryRcv = null; registerReceiver(batteryRcv, new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); batteryRcv = new BroadcastReceiver(){ public void onReceive(Context context, Intent intent ){ int level = intent.getIntExtra("level",-1); int maxValue= intent.getIntExtra ("scale",-1); int chargedPct = (level * 100)/maxValue; String batteryInfo = "Charged "+chargedPct+"%/n"; TextView state = (TextView) findViewById (R.id.state); state.setText(batteryInfo); } }; }; } Si quelqu'un à un peu de temps à consacrer à ce problème je l'en remercie par avance. Lien vers le commentaire Partager sur d’autres sites More sharing options...
LauCass Posté(e) 20 octobre 2010 Share Posté(e) 20 octobre 2010 Il faut que tu fasses ton registerReceiver() après la création de l'objet receiver. Là le receiver est null au moment du register. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Kokiyas25 Posté(e) 20 octobre 2010 Auteur Share Posté(e) 20 octobre 2010 Merci LauCass, ton conseil était le bon, cela a fonctionné du premier coup !!!!! Je tacherai de m'en souvenir pour mes prochains développements. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.