Mobile App Development for Business Card Scanner

TRUETECH is engaged in the development, support and maintenance of iOS, Android, PWA mobile applications. We have extensive experience and expertise in publishing mobile applications in popular markets like Google Play, App Store, Amazon, AppGallery and others.
Development and support of all types of mobile applications:
Information and entertainment mobile applications
News apps, games, reference guides, online catalogs, weather apps, fitness and health apps, travel apps, educational apps, social networks and messengers, quizzes, blogs and podcasts, forums, aggregators
E-commerce mobile applications
Online stores, B2B apps, marketplaces, online exchanges, cashback services, exchanges, dropshipping platforms, loyalty programs, food and goods delivery, payment systems.
Business process management mobile applications
CRM systems, ERP systems, project management, sales team tools, financial management, production management, logistics and delivery management, HR management, data monitoring systems
Electronic services mobile applications
Classified ads platforms, online schools, online cinemas, electronic service platforms, cashback platforms, video hosting, thematic portals, online booking and scheduling platforms, online trading platforms

These are just some of the types of mobile applications we work with, and each of them may have its own specific features and functionality, tailored to the specific needs and goals of the client.

Showing 1 of 1 servicesAll 1735 services
Mobile App Development for Business Card Scanner
Medium
from 1 week to 3 months
FAQ
Our competencies:
Development stages
Latest works
  • image_mobile-applications_feedme_467_0.webp
    Development of a mobile application for FEEDME
    756
  • image_mobile-applications_xoomer_471_0.webp
    Development of a mobile application for XOOMER
    624
  • image_mobile-applications_rhl_428_0.webp
    Development of a mobile application for RHL
    1054
  • image_mobile-applications_zippy_411_0.webp
    Development of a mobile application for ZIPPY
    947
  • image_mobile-applications_affhome_429_0.webp
    Development of a mobile application for Affhome
    862
  • image_mobile-applications_flavors_409_0.webp
    Development of a mobile application for the FLAVORS company
    445

Mobile Application Development for Business Card Scanner

Task looks simple: photograph business card — get contact in address book. In practice between shot and correctly filled CNContact — chain where everything that can break does: poor lighting, non-standard fonts, bilingual cards, vertical text orientation on Japanese cards.

Text Recognition: Vision vs ML Kit vs Cloud

On iOS first choice — Vision framework with VNRecognizeTextRequest. Since iOS 16 recognition accuracy increased, supports 18 languages, works completely offline. Sufficient for most tasks.

let request = VNRecognizeTextRequest { request, error in
    guard let observations = request.results as? [VNRecognizedTextObservation] else { return }
    let strings = observations.compactMap { $0.topCandidates(1).first?.string }
    self.parseBusinessCard(lines: strings)
}
request.recognitionLevel = .accurate
request.usesLanguageCorrection = true
request.recognitionLanguages = ["ru-RU", "en-US"]

let handler = VNImageRequestHandler(cgImage: image, options: [:])
try? handler.perform([request])

On Android — ML Kit Text Recognition v2. Supports Latin, Cyrillic, Chinese, Japanese, Korean right out of box without extra model downloads. Important note: TextRecognizer must close via close() after use, otherwise — native resource leak.

When maximum accuracy needed or exotic font support — integrate Google Cloud Vision API or AWS Textract. Cloud options give structured output with block, line, word division with bounding box.

Parsing Recognized Text to Contact Fields

OCR gives array of lines. Convert to {name: "Ivanov Ivan", phone: "+7 999 123-45-67", email: "[email protected]", title: "CTO"} — separate task.

Regular expressions cover phones and email reliably. Names and titles — harder. Good approach: NER (Named Entity Recognition) via CoreML model or lightweight on-device NLP. Apple NaturalLanguage framework with NLTagger for token type detection (personalName, organizationName) works well for English and Russian.

Typical problem: name and title next to each other without explicit separators. Context matters — if line contains dictionary word for job titles (CEO, director, manager), it's likely title.

For bilingual cards (common in CIS B2B: Russian on one side, English on other) need detecting language per line via NLLanguageRecognizer / LanguageIdentification from ML Kit and applying corresponding parsing rules.

Image Capture Quality

Final OCR accuracy directly depends on shot quality. Several things really matter:

  • Perspective correction — card held at angle, need straightening. On iOS CIPerspectiveCorrection + VNDetectRectanglesRequest for finding card borders. On Android — OpenCV or ML Kit ObjectDetector.
  • Contrast enhancementCIColorControls with increased contrast and reduced saturation helps with gray text on white background.
  • Automatic capture — detect card in frame via VNDetectRectanglesRequest and shoot automatically when card occupies >60% frame and stable 0.5 seconds. Manual "press button" degrades quality due to hand shake.

Implementation Process

Audit: target card languages, need offline mode, CRM integration or just device contacts.

Implementation: capture with auto-detect → perspective correction → OCR → field parsing → manual edit before save (mandatory — OCR makes mistakes).

Testing: set of 100+ real cards different quality and formats.

Timeline Estimates

Scanner with Vision/ML Kit, basic parsing and contact save — 2–3 weeks. With cloud OCR, NER, multi-language support and CRM integration — 5–7 weeks.