You can map the variuous functions you use in IpBike while activly logging data onto the hard buttons avalible with you device. There are a couple of buttons that can not be used by a standard app namely the power and the home buttons. Google consideres these 'system only' so as to stop a mallicious app being able to take over the phone all together.
Settings -> Audio Visual Settings -> Key Overrides gets you to a list of actions that mostly corrispond to on screen buttons used to controll IpBike while riding although there are also the swipe left and right actions to change screen and the lockscreen action to disable the touch screen. For each item you can set the button that you want to cause the action to happen. IpBike understand three different styles of button action, press, long press and double press. Select an item from the list and then press the button you want to assign to it in the style you want to use. You should be able to see what the button is and the style IpBike thinks you used. If you want to change just press another button. Once happy press OK on the dialog. cancel to not change anything or clear to have no button asigned to the action.
The order of the list of actions is important. IpBike will search though this list in the order in the settings page when trying to find out what to do when you press a button. For actions that map to on screen buttons in IpBike for the action to be taken the button needs to be on the display and enabled for the action to happen. This allows you to map the same button action to different actions in a sensible way. E.g. you can use press volume up to workout start -stop and press volume down for workout - next You can use the same 2 press actions for map zoom in and map zoom out. If you have the workout display you get the workout function if not you can get the map function.
If you asign a button to an action there is no way for that button to do it's normal function from within IpBike as well as the IpBike action. e.g if you assign double press of volume up to start sensors you want be able to just press for the normal volume up. I will look to add direct volume controll into IpBike some time soon to let you get around this.
virtual buttons can be mapped e.g. you can map a virtual on screen back button but these are disabled if you use the screenlock function so mapping these needs carefull thinking.
Here is how I have the 2 volume buttons on my Nexus 4 mapped.
- Workout Start -> Press Volume Up
- Workout Pause -> unmapped
- Workout Next -> Press volume Down
- Zoom In -> Press Volume Up
- Zoom Out -> Press Volume Down
- Start/stop Sensors -> Unmapped
- Start/stop Trip -> Double press Volume Up
- Lap -> Press Volume Down
- ScreenLock -> Double press Voluem Down
- TTS feedback -> upmapped
- Next Screen -> Long press Volume Up
- Previous Screen -> Long Press Volume Down
With the beta version of IpSesnorMan there is support for ANT+ remote control devices.