Beispiel #1
0
        private static void OnStateChanged(IntPtr gem, NativeWrapper.GemState state)
        {
            AppleGem _gem = FindGemByPointer(gem);

            Debug.LogFormat("{0}, {1}", _gem.Address, state);

            if (_gem == null)
            {
                throw new Exception("OnStateChanged called on non-existing/disconnected gem");
            }

            switch (state)
            {
            case NativeWrapper.GemState.Connected:
                _gem.State = GemState.Connected;
                break;

            case NativeWrapper.GemState.Connecting:
                _gem.State = GemState.Connecting;
                break;

            case NativeWrapper.GemState.Disconnected:
                _gem.State = GemState.Disconnected;
                break;

            case NativeWrapper.GemState.Disconnecting:
                _gem.State = GemState.Disconnecting;
                break;
            }
        }
Beispiel #2
0
        private void StateChanged(NativeWrapper.GemState state)
        {
            Debug.Log("GemSDK: State changed from \"" + addressStr + "\" -> " + state.ToString());

            if (state == NativeWrapper.GemState.Connected)
            {
                State = GemState.Connected;

                if (tapActive)
                {
                    SetTapActive(true);
                }

                if (pedometerActive)
                {
                    SetPedometerActive(true);
                }
            }
            else if (state == NativeWrapper.GemState.Connecting)
            {
                State = GemState.Connecting;
            }
            else if (state == NativeWrapper.GemState.Disconnected)
            {
                GemState lastState = State;
                State = GemState.Disconnected;

                if (lastState == GemState.Connecting)
                {
                    Reconnect();
                }
            }
            else if (state == NativeWrapper.GemState.Disconnecting)
            {
                State = GemState.Disconnecting;
            }
        }