Born in Renton, Dunbartonshire, Hannah first played for Renton, where he was part of a side that was crowned unofficial champions of the world after defeating English cup holders, West Bromwich Albion. Hannah so impressed his opponents that they signed him in time for the first ever Football League season but he was unable to settle at Stoney Lane and returned to his home town club for a second spell before being enticed south again in time for the second Football League season.
Hannah's second spell in England came at Everton and proved to be his most successful as he was ever-present in the side, which ultimately finished runners-up in the 1889–90 season. The following season was even better for the Scot, as the Everton claimed their first league title. Hannah himself had missed just two games and was a vital part of the club's success. That summer, however, Hannah returned to Scotland for a third spell with his home-town club, Renton.
Liverpool
In 1892, following Everton's departure from Anfield and the formation of a new club, Liverpool, to replace them, Hannah was lured back to Merseyside by the new club's manager, John McKenna and treasurer William Barclay, the latter having been his manager in his Everton days. Hannah was the right back in Liverpool's first ever competitive fixture, an 8–0 victory against Higher Walton on the 3 September 1892 in the Lancashire League, which the Reds went on to win convincingly. Andrew then had the honour of becoming one of the 11 players that played in Liverpool's first Football League fixture the following season a 2–0 win over Middlesbrough Ironopolis at the Paradise Field on 2 September 1893 he went to play 24 of the 28 matches which saw Liverpool win the Football League Second Division. He also became the first person to captain both Liverpool and Everton. Hannah went on to play 73 times for Liverpool before leaving in 1895, he only managed to score the one goal in a 2–0 victory over Burslem Port Vale on the 14 April 1894.
Scotland
Hannah made one appearance for Scotland, whilst a Renton player, on 10 March 1888. The match ended in a 5–1 victory over Wales at Hibernian Park, Edinburgh. He also represented the Scottish League once, in 1892.