在每天在Android Studio中重置步骤计数器之前,如何将执行的步骤上传到Firebase数据库?

时间:2019-03-27 00:20:50

标签: android database firebase counter reset

首先,我对Android Studio完全陌生。

我想每天在2359小时将步数计数器自动重置为0,同时能够保存用户执行的步数并将其上载到Firebase数据库。

我应该使用什么代码?我可以使用任何参考来实现这一目标吗? 非常感谢您的帮助。

我已经尝试过查找StackOverflow中的所有帖子,但没有一个提供准确和最新的答案。他们正在使用不推荐使用的代码,内容简短且笼统。对于像我这样的初学者,它没有提供任何指导。

我在这里尝试了解决方案: Resetting Android step counter Step counter doesn't reset the step count Step counter in Android

这是我当前的代码:

public class StepsFragment extends Fragment implements SensorEventListener {

TextView tv_steps;
SensorManager sensorManager;
Sensor sensor;
boolean running = false;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {


    View view = inflater.inflate(R.layout.fragment_steps, container, false);

    super.onCreate ( savedInstanceState );
    tv_steps = (TextView) view.findViewById(R.id.tv_steps);
    sensorManager = (SensorManager) getActivity().getSystemService ( Context.SENSOR_SERVICE);
    return view;
}

@Override
public void onResume() {
    super.onResume ();
    running = true;
    Sensor countSensor = sensorManager.getDefaultSensor ( sensor.TYPE_STEP_COUNTER );
    if(countSensor!= null){
        sensorManager.registerListener ( this,countSensor,SensorManager.SENSOR_DELAY_UI );
    }else {
        Toast.makeText (getActivity(),"SENSOR NOT FOUND",Toast.LENGTH_SHORT ).show ();
    }
}

@Override
public void onPause() {
    super.onPause ();
    running = false;
    //if you unregister the hardware will stop detecting steps
}

@Override
public void onSensorChanged(SensorEvent event) {

    if (running){
        tv_steps.setText ( String.valueOf ( event.values[0] ) );
    }

}

@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {

}
}

我希望能够在2359小时每天将步数计数器重置为0,同时能够将单个用户执行的步数上载到Firebase数据库。

0 个答案:

没有答案