1. Negating is more complicated than just saying Sound
2. The exercise edit screen is already pretty small,
so this feature of hiding the steps is probably
not useful.
This is the result of me fixing the background timers.
Previously our code just used a CountdownTimer
not even in a service, just immediately in the
@ReactMethod. This would in certain scenarios stop
running. Even with battery optimizations turned off.
The reason why all the JS side timers had to be removed
is because we were relying on RCTDeviceEventEmitter
which I don't know how to use from within a Service.
See my stackoverflow ticket here: https://stackoverflow.com/questions/74204339/sending-react-native-android-events-to-javascript-from-a-serviceCloses#212, #196
This error occurs on some devices in the Play store
(android 12). I can't reproduce it unless I forcefully
pass NaN to my charts, so this might just fix the error.
Related to #206.
Exception java.lang.Error:
at com.horcrux.svg.PathParser.parse_number (PathParser.java:627)
at com.horcrux.svg.PathParser.parse_list_number (PathParser.java:594)
at com.horcrux.svg.PathParser.parse (PathParser.java:118)
at com.horcrux.svg.PathView.setD (PathView.java:28)
at com.horcrux.svg.RenderableViewManager$PathViewManager.setD (RenderableViewManager.java:751)
at com.horcrux.svg.RenderableViewManager$PathViewManager.setD (RenderableViewManager.java:740)
at com.facebook.react.viewmanagers.RNSVGPathManagerDelegate.setProperty (RNSVGPathManagerDelegate.java:112)
at com.facebook.react.uimanager.ViewManagerPropertyUpdater.updateProps (ViewManagerPropertyUpdater.java:46)
at com.facebook.react.uimanager.ViewManager.updateProperties (ViewManager.java:84)
at com.facebook.react.uimanager.ViewManager.createViewInstance (ViewManager.java:188)
at com.facebook.react.uimanager.ViewManager.createView (ViewManager.java:115)
at com.facebook.react.uimanager.NativeViewHierarchyManager.createView (NativeViewHierarchyManager.java:281)
at com.facebook.react.uimanager.UIViewOperationQueue$CreateViewOperation.execute (UIViewOperationQueue.java:194)
at com.facebook.react.uimanager.UIViewOperationQueue$1.run (UIViewOperationQueue.java:909)
at com.facebook.react.uimanager.UIViewOperationQueue.flushPendingBatches (UIViewOperationQueue.java:1026)
at com.facebook.react.uimanager.UIViewOperationQueue$DispatchUIFrameCallback.doFrameGuarded (UIViewOperationQueue.java:1086)
at com.facebook.react.uimanager.GuardedFrameCallback.doFrame (GuardedFrameCallback.java:29)
at com.facebook.react.modules.core.ReactChoreographer$ReactChoreographerDispatcher.doFrame (ReactChoreographer.java:175)
at com.facebook.react.modules.core.ChoreographerCompat$FrameCallback$1.doFrame (ChoreographerCompat.java:85)
at android.view.Choreographer$CallbackRecord.run (Choreographer.java:1106)
at android.view.Choreographer.doCallbacks (Choreographer.java:866)
at android.view.Choreographer.doFrame (Choreographer.java:792)
at android.view.Choreographer$FrameDisplayEventReceiver.run (Choreographer.java:1092)
at android.os.Handler.handleCallback (Handler.java:938)
at android.os.Handler.dispatchMessage (Handler.java:99)
at android.os.Looper.loopOnce (Looper.java:226)
at android.os.Looper.loop (Looper.java:313)
at android.app.ActivityThread.main (ActivityThread.java:8751)
at java.lang.reflect.Method.invoke
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:571)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1135)
Many of our errors in production are caused
by the alarm module finishing. In devices after
android version 7 we are "required" to use
startForegroundService or else the following
error supposedly occurs:
Exception java.lang.IllegalStateException:
at android.app.ContextImpl.startServiceCommon (ContextImpl.java:1725)
at android.app.ContextImpl.startService (ContextImpl.java:1680)
at android.content.ContextWrapper.startService (ContextWrapper.java:731)
at android.content.ContextWrapper.startService (ContextWrapper.java:731)
at com.massive.AlarmModule$getTimer$1.onFinish (AlarmModule.kt:144)
at android.os.CountDownTimer$1.handleMessage (CountDownTimer.java:127)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loop (Looper.java:236)
at com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run (MessageQueueThreadImpl.java:228)
at java.lang.Thread.run (Thread.java:923)
I say supposedly because on all of my testing
devices (which are android 7+) this error
doesn't occur.