Explicitly call Resume() on the device when seeking from paused. Otherwise, the device seeks but the media remains paused.
If the device refuses to seek (which can be because the seek target is too close to the existing position, even though we try to avoid this by ignoring playFrom() within a tolerance of the current time - particularly seen towards the end of media), transition straight back to the PLAYING state.