android - How to display sensor data values -
hi new android. trying write code collect sensor data. tried example given in "http://developer.android.com/guide/topics/sensors/sensors_overview.html" installed apk file on phone (samsung galaxy s3) app runs crashes. code have written:
the app crashes whenever put line "tv1.settext(float.tostring(lux));" in onsensoechanged() method. kindly tell me doing wrong here , how correct code.
this first post in site. apologies incorrect format of posting questions
thanks
`
package com.example.sensordata; import android.support.v7.app.actionbaractivity; import android.support.v7.app.actionbar; import android.support.v4.app.fragment; import android.app.activity; import android.content.context; import android.hardware.sensor; import android.hardware.sensorevent; import android.hardware.sensoreventlistener; import android.hardware.sensormanager; import android.os.bundle; import android.view.layoutinflater; import android.view.menu; import android.view.menuitem; import android.view.view; import android.view.viewgroup; import android.widget.textview; import android.os.build; public class mainactivity extends activity implements sensoreventlistener { public sensormanager msensormanager; public sensor mlight; public textview tv1; //public textview tv2; @override public final void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_main); msensormanager = (sensormanager) getsystemservice(context.sensor_service); mlight = msensormanager.getdefaultsensor(sensor.type_light); tv1 = (textview) findviewbyid(r.id.text1); //tv2 = (textview) findviewbyid(r.id.text2); } @override public final void onaccuracychanged(sensor sensor, int accuracy) { // here if sensor accuracy changes. } @override public final void onsensorchanged(sensorevent event) { // light sensor returns single value. // many sensors return 3 values, 1 each axis. synchronized (this) { float lux = event.values[0]; // sensor value. //tv1 = (textview) findviewbyid(r.id.text1); tv1.settext(float.tostring(lux)); } } @override protected void onresume() { super.onresume(); msensormanager.registerlistener(this, mlight, sensormanager.sensor_delay_normal); } @override protected void onpause() { super.onpause(); msensormanager.unregisterlistener(this); } } `
try tv1.settext(string.valueof(lux));
instead of tv1.settext(float.tostring(lux));
Comments
Post a Comment