Skip to content

Instantly share code, notes, and snippets.

@valery-iwanofu
Created August 28, 2022 06:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save valery-iwanofu/0a6f930da3bd8062072260f4a45ada02 to your computer and use it in GitHub Desktop.
Save valery-iwanofu/0a6f930da3bd8062072260f4a45ada02 to your computer and use it in GitHub Desktop.
init python in sensors:
import store
renpy = store.renpy
if renpy.android:
import jnius
if renpy.android:
_Context = jnius.autoclass('android.content.Context')
_Sensor = jnius.autoclass('android.hardware.Sensor')
_SensorManager = jnius.autoclass('android.hardware.SensorManager')
_PythonSDLActivity = jnius.autoclass('org.renpy.android.PythonSDLActivity')
class AccelerometerSensorListener(jnius.PythonJavaClass):
__javainterfaces__ = ['android/hardware/SensorEventListener']
def __init__(self, onSensorChanged):
super(AccelerometerSensorListener, self).__init__()
self.onSensorChanged = onSensorChanged
@jnius.java_method('(Landroid/hardware/SensorEvent;)V')
def onSensorChanged(self, event):
self.onSensorChanged(event.values[:3])
@jnius.java_method('(Landroid/hardware/Sensor;I)V')
def onAccuracyChanged(self, sensor, accuracy):
pass
_mActivity = _PythonSDLActivity.mActivity
_sensor_manager = jnius.cast(
'android.hardware.SensorManager',
_mActivity.getSystemService(_Context.SENSOR_SERVICE)
)
_sensor = _sensor_manager.getDefaultSensor(
_Sensor.TYPE_ACCELEROMETER
)
def on_sensor_changed(values):
store.kek = values
listener = AccelerometerSensorListener(on_sensor_changed)
_sensor_manager.registerListener(listener, _sensor, _SensorManager.SENSOR_DELAY_NORMAL)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment