1. A method of determining a floor and location of a device within an indoor space having multiple floors, the device having a processor and a memory, the method comprising: gathering, using the processor and the memory, at least one wireless signal data, the at least one wireless signal data including a respective received signal strength measured value; determining at least one candidate location of the device for each floor of the multiple floors of the indoor space based on the at least one wireless signal data; and determining the floor and location of the device based on the at least one candidate location of the device for each floor and at least one of a map constraint feature and a heading determined in accordance with device sensor data.