Android加速计-检测人体跳跃

Android加速计-检测人体跳跃,android,accelerometer,physics,detection,Android,Accelerometer,Physics,Detection,我目前几乎完成了在android上开发我的第一个应用程序,除了人体跳跃检测对于我的愿望来说似乎太慢/不准确。我使用了一个seekbar来改变灵敏度,但是我认为我的检测算法效率很低。我试着到处寻找合适的跳跃检测,但没有成功。这似乎归结为一些好的物理和数学 这是我在onSensorChangeListener中的算法,当口袋中的手机向上时,灵敏度为0-100,但默认为50: if(phonePosition=="UP"){ if(event.values[1]>(15-(se

我目前几乎完成了在android上开发我的第一个应用程序,除了人体跳跃检测对于我的愿望来说似乎太慢/不准确。我使用了一个seekbar来改变灵敏度,但是我认为我的检测算法效率很低。我试着到处寻找合适的跳跃检测,但没有成功。这似乎归结为一些好的物理和数学

这是我在onSensorChangeListener中的算法,当口袋中的手机向上时,灵敏度为0-100,但默认为50:

if(phonePosition=="UP"){

        if(event.values[1]>(15-(sensitivity-50)/10)){
            inAir=true;
        }
        if(inAir&&event.values[1]<(5+(sensitivity-50)/10)){
            freeFall=true;
        }
        if(freeFall&&event.values[1]>(13-(sensitivity-50)/10)){
            rebound=true;
        }
        if(rebound&&event.values[1]<(10+(sensitivity-50)/10)&&event.values[1]>(1-(sensitivity-50)/10))
        {
            sp.play(beep1,1,1,0,0,1);
            jumpCount++;
            inAir=false;
            freeFall=false;
            rebound=false;
        }   

        jumps.setText(Integer.toString(jumpCount));

        }

下面是一些跳跃的xyz值图表,如果可能有帮助的话:

问题是?还是我遗漏了什么?