At the age of thirteen, Ujkani enrolled into Ingelmunster, spending six years there before moving to Anderlecht. The Anderlecht football academy has a reputation of producing talented goalkeepers such as Jacky Munaron. Ujkani played until June 2007 for the Anderlecht Under-19s, and made also ten appearances with their reserves team. In June 2007, he agreed to sign a five-year contract with Palermo of the Italian Serie A.
Palermo
Since then, Ujkani served as unused bench in two UEFA Cup matches for Palermo, and several Serie A matches as well. He was confirmed as third-choice goalkeeper for the Rosanero's 2008–09 season, and later promoted as second goalkeeper after the club chose to transfer-list veteran goalkeeper Alberto Fontana. On 26 April 2009, Ujkani made his professional debut with Palermo, replacing injured Marco Amelia during a Serie A match against Milan at the San Siro. His performance was congratulated from Kaká at the end of the match. In July 2009, he was loaned out to Lega Pro Prima Divisione club Novara in exchange with Giacomo Brichetto, also in order to gain first team experience. On 14 June 2012, Palermo owner Maurizio Zamparini confirmed that Ujkani will be playing on Palermo for the 2012–13 season. On 22 June 2012, Palermo announced from their website to have re-acquired the full transfer rights of Ujkani and fellow Novara player Michel Morganella. For Palermo's 2013–14 season, spent in Serie B after its previous season's relegation, he was used as a second-choice goalkeeper – receiving playing time – and being praised for his development relative to his previous stint with Palermo. During December and January 2014, he became temporary first-choice to cover for the injured Stefano Sorrentino. His contract with Palermo expired 30 June 2015.
Loan at Novara
Ujkani immediately cemented his place as Novara's first-choice goalkeeper. He was a pivotal and influential member of squad, helping promote Novara from the Lega Pro Prima Divisione to the Serie B in the 2009–10 season, marking a 33-year return for the club to Serie B. This prompted Novara to ask for an extension to his loan, which was agreed by Palermo in July 2010. Ujkani helped Novara reach promotion in 2010–11 to Serie A after a 55-year absence. On 31 January 2011, Palermo announced it had sold 50% of Ujkani's transfer rights to Novara, along with Michel Morganella, as part of a bid involving striker Pablo González. Ujkani has been a crucial member of the squad in the Serie A, helping Novara beat Internazionalehome and away when Ujkani pulled off a point-blank save to deny Giampaolo Pazzini and held off Wesley Sneijder when he struck the free-kick from a dangerous position. He also helped Novara secure a draw against Napoli. From 16 October 2011, Ujkani sustained a broken nose and lost four teeth when he collided with teammate Michel Morganella against Bologna. Being one of the fan favourites, then Andrea Ballarè, the Mayor of Novara visited Ujkani in hospital. Ujkani returned on 5 December in a match against Lazio.
After the arrival of goalkeeper Stefano Sorrentino at Palermo, Ujkani moved on loan to Chievo on 29 January 2013. In his short stint there, he did not play a single game, serving as back-up to Christian Puggioni, and was not acquired by the Verona-based club, thus making his return to Palermo by the end of season.
On 8 January 2016, Ujkani joined Serie B side Latina on loan. On 16 January 2016, he made his debut in a 1–0 home defeat against former club Novara after being named in the starting line-up.
On 11 July 2016, Ujkani joined Serie B side Pisa on loan. On 7 August 2016, he made his debut with Pisa in the second round of 2016–17 Coppa Italia against Brescia after being named in the starting line-up.
On 14 July 2017. Ujkani signed with the newly promoted team of Serie B side Cremonese. On 6 August 2017, he made his debut with Cremonese in the second round of 2017–18 Coppa Italia against Virtus Entella after being named in the starting line-up.
On 18 July 2018. Ujkani signed with the newly promoted team of Süper Lig side Çaykur Rizespor, on a three-year contract. On 26 September 2018, he made his debut for Çaykur Rizespor in the third round of the 2018–19 Turkish Cup against Tarsus Idman Yurdu after being named in the starting line-up. From the beginning of 2019, Ujkani was excluded from the first team squad alongside 4 other foreign players and moved down to the U21 squad.