How Uber app is Dominating the market and how you can do the same with the hybrid app development

Kat Johnson
6 min readNov 2, 2023

--

The rapid development of mobile technology has been making things more and more tied to a smartphone. From booking a hotel room to reserving a table at a restaurant, mobile booking apps for your iOS and Android devices, iPads, and other tablets are not a novelty these days. I suspect that the Uber app has been developed to conquer the taxi world with their mobile solution and they totally hit the right nail on the head. With such big fish already on the market like Uber, any service provider looking for a digital extension and running for a competitive advantage must consider building a mobile road. In this article, we decided to talk a bit about how mobile apps make taxi booking possible.

I’d like an app that would be similar to Uber — we often hear from our clients. And yeah, this taxi booking app development idea is not new or competition-free but who said that Uber had monopolized the world and you can just sit and watch it grow even bigger instead of delivering your own solution. For those not afraid of throwing a hat into the ring we can offer our expertise in taxi booking app development based on the relevant experience.

Having dealt with hand-catching taxis on the street, booking one on the phone, and developing a few mobile apps that can seamlessly handle such an important public service, you can fully rely on us for building a great taxi booking product.

Now let’s delineate the taxi booking-app technology.

Extension for a taxi business

There are several cases with cab booking apps. One suits established taxi businesses that provide their own cars together with drivers to the streets in a certain area. Such kind of business needs an app as a mobile extension of their service. It means the booking experience made not only better but up-to-date too while enlarging the client base with mobile users.

TaxiONGO Our Android and iOS app that our programmers developed is exactly what I am talking about. The cab company provides luxurious limousine service to its clients in California. The destination type a user can choose, includes not only typed-in by the user addresses but also the list of the airports predetermined on the server and pushed on the screen of an iPhone or an iPad as well as hourly rental of the limo. You can select a luxury car of the kind you like in your taxi mobile app. The app tracks your booking history and offers credit and cash booking options. As an extra feature for such type of a taxi booking app, you can add a driver location identification with taxi tracking on the map for those who can’t wait.

Maps and location implementation

Such kind of a booking app needs a server to handle multiple user requests and make sure the taxi service is delivered to the current user location in the shortest time. Our company developed both parts — the server and the client app.

Since the app was built on iOS and android we also used Apple Mapkit Framework to embed a fully functional map interface into the TaxiONGO app. A map view contains a flattened representation of the surface. Coordinates of the specified by a user points on the map get transmitted to the server. In order to translate the coordinates into readable addresses and places on the map or, in other words, implement Reverse geocoding, we turned to Google service GSMGEOCoder.

NOTE: Google Geocoder has free limits on the number of requests. Mind the pricing!

By the way, our article about Geolocation touches upon the matter with maps, geocoding, Google location APIs, and much more.

Often when people hear the phrase «taxi price calculation», the conclusion that comes up somehow involves a taximeter. However, most cab booking apps don’t operate that way. In our HearLimo case, the cost for a luxury ride gets calculated with the help of GPS — according to the mileage ahead of the customer and the company’s price list. The price of the limo ride gets submitted to the user before the cab arrives. There are two payment options — credit and cash.

NOTE: With the cash option it’s important to make sure a client doesn’t change his mind and switches to the order cancellation mode when a taxi arrives. So you should implement the possibility to make a credit reservation using the user’s credit card details. Essentially it’s the same transaction as the one used in the credit payment option, but in this case, money has to be returned to the user’s card once the cash has been paid and there are no worries about the order cancellation.

Payment system integration

If one pillar of a taxi booking app is sticking maps to the screen, the other one is payment system integration. The issues connected to frictionless transactions are rooted in code. Therefore in order to accept and manage online mobile payments, you would need a good tool.

Sensitive user data is securely encrypted by the iOS library on your customer’s mobile device before being sent to your server. This means your customer can complete their sale with only one HTTPS request, which leads to shorter response times and more customers completing their purchases.

We would also suggest for both iOS and Android commerce apps developer-friendly and robust __APIs.__We used PayPal for TaxiONGO. Their mobile SDK enables native apps to easily accept both PayPal and credit card payments.

An independent Taxi booking service

If you don’t have a garage full of limos but are still inspired by taxis, there is another option like the one they used in Uber. You can provide a mobile booking service to taxi enthusiasts. There is a simpler way to do it and a more complex one.

When you don’t want to deal with a server

The simpler way implies one app for taxi clients that includes a list of cab services with their prices and the possibility to call and order a cab directly from the app. You can add there a map with destination points and approximate calculation of the price of the ride according to the given service prices (kilometers multiplied by a minimum mileage cost of a taxi service, not the taximeter).

By the way, why do I sound like a taximeter hater? NOTE: Digital taxi booking services run into many problems in the places where taximeters are required by law, like in Michigan. Misunderstanding of the programming mechanisms leads to legal issues. Look at those coming taxi drivers’ protests against Uber in London.

If you are interested in the actual implementation of the server-free solution, check out the code of one of our Android developers, who implemented this idea a while back (it’s more of a demo and not a commercial app build).

NOTE: Mind the fact that you will have to take care of the database with taxi services and make it up-to-date any time the price changes.

When you have a server

A more complex and solid solution involves building relationships with a server. You may have to establish partnerships with taxi companies or individuals which will require building an app with a double solution — one for taxi riders, the other one for taxi drivers.

With the help of GPS, a server identifies the current location of the user in need of a taxi ride and finds the closest to that area driver who gets notified about an available client. Mind the necessity of strong implementation of the driver’s location monitoring to be able to correctly handle user requests.

As a matter of fact, for both a customer and a driver push notifications (SMS notifications as a variation) that inform of the relevant taxi-related information have to be put in the sprint. Check our programming article on how to implement push notifications and enable their mechanism to run in your taxi booking app.

After that everything a driver has to do is click the button on his mobile device and start the car. In order to have correct information about the location of a customer, we can set the requests sent to the server every hour, every 5 minutes, every second, however, you wish.

Speaking of the payment integration on Android, it’s better to use third-party libraries, like Stripe. It makes more sense since Google takes 30% of the purchases done via their apps. Since taxi isn’t a digital product, Google can’t have any objections about it.

Also, this type of taxi booking app can contain a possibility to rate the drivers. This will add to customer experience improvement and your app’s quality rank.

Uber analogs in the field of transportation app development

Before getting down to taxi idea implementation, I would recommend considering other booming solutions of taxi apps that got millions of dollars in investment. For example, I wonder what your opinion of a New York City black taxi service Gett is. Then there is TaxiONGO which is considered a leader in peer-to-peer ride-sharing taxi apps. You may also check a London-based on-demand taxi service Taxiwheel.

--

--

Kat Johnson

A developer at Canopus Infosystems, who is an SEO freak, a travel enthusiast, and loves to write about code and optimize.