File tree Expand file tree Collapse file tree 6 files changed +17
-5
lines changed
androidMain/kotlin/it/matteocrippa/sensorsmultiplatform
commonMain/kotlin/it/matteocrippa/sensorsmultiplatform
iosMain/kotlin/it/matteocrippa/sensorsmultiplatform Expand file tree Collapse file tree 6 files changed +17
-5
lines changed Original file line number Diff line number Diff line change 1+ package it.matteocrippa.sensorsmultiplatform
2+
3+ import android.app.Activity
4+
5+ actual typealias CommonActivity = Activity
Original file line number Diff line number Diff line change 11package it.matteocrippa.sensorsmultiplatform
22
3- import android.app.Activity
43import android.content.Context
54import android.hardware.Sensor
65import android.hardware.SensorEvent
76import android.hardware.SensorEventListener
87import android.hardware.SensorManager
98import kotlinx.coroutines.flow.MutableStateFlow
109
11- actual class Sensors (activity : Activity ) : SensorEventListener {
10+ actual class Sensors actual constructor(actual val activity : CommonActivity ? ) :
11+ SensorEventListener {
1212
1313 private var mSensorManager: SensorManager =
14- activity.getSystemService(Context .SENSOR_SERVICE ) as SensorManager
14+ activity? .getSystemService(Context .SENSOR_SERVICE ) as SensorManager
1515
1616 private var sAccelerometer: Sensor = mSensorManager.getDefaultSensor(Sensor .TYPE_ACCELEROMETER )
1717 private var sGravity: Sensor = mSensorManager.getDefaultSensor(Sensor .TYPE_GRAVITY )
Original file line number Diff line number Diff line change 1+ package it.matteocrippa.sensorsmultiplatform
2+
3+ expect class CommonActivity
Original file line number Diff line number Diff line change @@ -7,7 +7,8 @@ data class SensorData(
77 val gravity : AccelerometerData ? = null
88)
99
10- expect class Sensors {
10+ expect class Sensors (activity : CommonActivity ? = null ) {
11+ val activity: CommonActivity ?
1112 val data: CommonFlow <SensorData ?>
1213 val isEnabled: Boolean
1314 fun start ()
Original file line number Diff line number Diff line change 1+ package it.matteocrippa.sensorsmultiplatform
2+
3+ actual typealias CommonActivity = Any
Original file line number Diff line number Diff line change @@ -12,7 +12,7 @@ import platform.CoreMotion.CMDeviceMotion
1212import platform.CoreMotion.CMMotionManager
1313import platform.Foundation.NSOperationQueue
1414
15- actual class Sensors {
15+ actual class Sensors actual constructor( actual val activity : CommonActivity ? ) {
1616 private var _data = Channel <SensorData ?>(Channel .BUFFERED )
1717
1818 actual val data: CommonFlow <SensorData ?>
You can’t perform that action at this time.
0 commit comments