- Added realracing3-community.apk (71.57 MB) - Removed 32-bit support (armeabi-v7a) - Only includes arm64-v8a libraries - Decompiled source code included - Added README-community.md with analysis
83 lines
2.7 KiB
Java
83 lines
2.7 KiB
Java
package com.firemint.realracing;
|
|
|
|
import android.hardware.Sensor;
|
|
import android.hardware.SensorEvent;
|
|
import android.hardware.SensorEventListener;
|
|
import android.hardware.SensorManager;
|
|
|
|
/* loaded from: classes2.dex */
|
|
public class Input implements SensorEventListener {
|
|
private Sensor m_accelerometer;
|
|
private Sensor m_gyroscope;
|
|
private SensorManager m_sensorManager;
|
|
|
|
private native void updateAccelValues(float f, float f2, float f3);
|
|
|
|
private native void updateGyroValues(float f, float f2, float f3);
|
|
|
|
public boolean isAccelerometerAvailable() {
|
|
return this.m_accelerometer != null;
|
|
}
|
|
|
|
public boolean isGyroscopeAvailable() {
|
|
return this.m_gyroscope != null;
|
|
}
|
|
|
|
public Input() {
|
|
this.m_sensorManager = null;
|
|
this.m_accelerometer = null;
|
|
this.m_gyroscope = null;
|
|
SensorManager sensorManager = (SensorManager) MainActivity.instance.getSystemService("sensor");
|
|
this.m_sensorManager = sensorManager;
|
|
this.m_accelerometer = sensorManager.getDefaultSensor(1);
|
|
this.m_gyroscope = this.m_sensorManager.getDefaultSensor(9);
|
|
}
|
|
|
|
public void enableAccelerometer(boolean z) {
|
|
Sensor sensor = this.m_accelerometer;
|
|
if (sensor != null) {
|
|
if (z) {
|
|
this.m_sensorManager.registerListener(this, sensor, 1);
|
|
} else {
|
|
this.m_sensorManager.unregisterListener(this, sensor);
|
|
}
|
|
}
|
|
}
|
|
|
|
public void enableGyroscope(boolean z) {
|
|
Sensor sensor = this.m_gyroscope;
|
|
if (sensor != null) {
|
|
if (z) {
|
|
this.m_sensorManager.registerListener(this, sensor, 1);
|
|
} else {
|
|
this.m_sensorManager.unregisterListener(this, sensor);
|
|
}
|
|
}
|
|
}
|
|
|
|
@Override // android.hardware.SensorEventListener
|
|
public void onAccuracyChanged(Sensor sensor, int i) {
|
|
String str = sensor == this.m_gyroscope ? "gyro" : "unknown";
|
|
if (sensor == this.m_accelerometer) {
|
|
str = "accel";
|
|
}
|
|
StringBuilder sb = new StringBuilder();
|
|
sb.append("ACCURACY CHANGED! sensor = ");
|
|
sb.append(str);
|
|
sb.append(", accuracy = ");
|
|
sb.append(i);
|
|
}
|
|
|
|
@Override // android.hardware.SensorEventListener
|
|
public void onSensorChanged(SensorEvent sensorEvent) {
|
|
Sensor sensor = sensorEvent.sensor;
|
|
if (sensor == this.m_accelerometer) {
|
|
float[] fArr = sensorEvent.values;
|
|
updateAccelValues(fArr[0], fArr[1], fArr[2]);
|
|
} else if (sensor == this.m_gyroscope) {
|
|
float[] fArr2 = sensorEvent.values;
|
|
updateGyroValues(fArr2[0], fArr2[1], fArr2[2]);
|
|
}
|
|
}
|
|
}
|