|
Abhishek Jha Oodles

Abhishek Jha (Mobile-Associate Consultant - Development)

Experience:Below 1 yr

Abhishek, a highly experienced Mobile Application Developer specializing in Flutter and Android Development, showcases meticulous attention to detail and strong problem-solving skills. Through his expertise, These endeavors exemplify his capability to deliver high-quality mobile applications that precisely meet clients' requirements and expectations.

Abhishek Jha Oodles
Abhishek Jha
(Associate Consultant - Development)

Abhishek, a highly experienced Mobile Application Developer specializing in Flutter and Android Development, showcases meticulous attention to detail and strong problem-solving skills. Through his expertise, These endeavors exemplify his capability to deliver high-quality mobile applications that precisely meet clients' requirements and expectations.

LanguageLanguages

DotENGLISH

Fluent

DotHindi

Fluent

Skills
Skills

DotDart

80%

DotJava

80%

DotAndroid

80%

DotUnity Engine

60%

DotVimeo

60%

DotCross Device SDK

40%

DotKotlin

60%

DotFlutter

60%

DotJavascript

40%

DotGradle

80%

DotMySQL

40%

DotGame

60%

DotWear OS

60%
ExpWork Experience / Trainings / Internship

Oct 2022-Dec 2022

Android developer intern

Pune


Techmihirnaik

Pune

Oct 2022-Dec 2022

EducationEducation

2020-2024

Dot

Meerut institute of technology

B-tech-CSE

Top Blog Posts
API Calls in Flutter

 API Calls in Flutter

Flutter is a powerful framework for building cross-platform mobile applications. A crucial aspect of any modern app is its ability to fetch and send data over the internet. In this blog, we will explore different ways to make API calls in Flutter.

1. Using http Package

The http package is the most common way to make API calls in Flutter. It provides simple methods to send GET, POST, PUT, and DELETE requests.

Installation:

Add the following dependency in your pubspec.yaml file:

dependencies:

  http: ^0.13.4

Run flutter pub get to install the package.

Example:

import 'dart:convert';

import 'package:flutter/material.dart';

import 'package:http/http.dart' as http;

Future<void> fetchData() async {

  final response = await http.get(Uri.parse(''))

  if (response.statusCode == 200) {

    var data = jsonDecode(response.body);

    print(data);

  } else {

    throw Exception('Failed to load data');

  }

}

2. Using Dio Package

Dio is a powerful HTTP client for Dart, offering advanced features like interceptors, global configuration, and response handling.

Installation:

dependencies:

  dio: ^5.0.0

Example:

import 'package:dio/dio.dart';

 

Future<void> fetchData() async {

  var dio = Dio();

  try {

    final response = await dio.get('');

    print(response.data);

  } catch (e) {

    print('Error: $e');

  }

}

3. Using Retrofit

Retrofit is a type-safe HTTP client built on Dio. It simplifies API handling using annotations.

Installation:

dependencies:

  retrofit: ^4.0.1

  dio: ^5.0.0

  json_annotation: ^4.4.0

dev_dependencies:

  retrofit_generator: ^4.0.1

  build_runner: ^2.1.7

Example:

Create an API client using annotations:

import 'package:dio/dio.dart';

import 'package:retrofit/http.dart';

part 'api_service.g.dart';

@RestApi(baseUrl: "")

abstract class ApiService {

  factory ApiService(Dio dio, {String baseUrl}) = _ApiService;

@GET("/posts/1")

  Future<Map<String, dynamic>> getPost();

}

Run flutter pub run build_runner build to generate necessary files.

final HttpLink httpLink = HttpLink('https://example.com/graphql');

Future<void> fetchGraphQLData() async {

  final GraphQLClient client = GraphQLClient(

    link: httpLink,

    cache: GraphQLCache(),

  );

  const String query = '''

    query GetPost {

      post(id: 1) {

        title

        body

      }

    ]

Conclusion

Flutter provides multiple ways to make API calls, depending on the complexity and needs of your application.

  • Use http for simple API requests.
  • Use Dio for advanced networking features.
  • Use Retrofit for structured API calls.

Choose the best approach based on your project's requirements. Happy coding! 🚀

 

Category: Mobile
Building a Cross-Platform Handwriting Recognition App with Flutter

Building a Cross-Platform Handwriting Recognition App with Flutter

Introduction

In the age of digital transformation, handwriting recognition technology has emerged as a crucial innovation, bridging the gap between traditional handwritten content and digital formats. This project seeks to create a simple yet effective mobile application that showcases handwriting recognition functionality. Leveraging the Flutter framework, the app will cater to both Android and iOS platforms, ensuring a seamless user experience across devices.

Key Features:-

  1. Dual Input Modes
    • On-Screen Keyboard: Users can type their input using a standard digital keyboard.
    • Handwriting Input: Users can write directly on the screen using a stylus or finger, offering a natural way to input text.
  2. Cross-Platform Compatibility
    • Built using Flutter, the app will work seamlessly on both Android and iOS devices, showcasing the power of a single codebase for multiple platforms.
  3. Real-Time Recognition
    • The app will utilize handwriting recognition algorithms to convert handwritten input into digital text in real time.

Why Choose Flutter?

Flutter is an open-source UI framework by Google that allows developers to create visually appealing and highly performant apps with a single codebase. Its rich widget library, hot reload feature, and strong community support make it an ideal choice for this project.

Development Workflow:-

  1. Setting Up the Environment
    • Install Flutter SDK and configure the development environment for Android and iOS.
    • Choose an appropriate handwriting recognition library or service (e.g., Google ML Kit, TensorFlow Lite).
  2. Designing the UI
    • Use Flutter widgets to design intuitive and user-friendly interfaces.
    • Implement separate views for text input via keyboard and handwriting input.
  3. Integrating Handwriting Recognition
    • Incorporate handwriting recognition functionality using pre-trained models or third-party APIs.
    • Ensure smooth processing and real-time conversion of handwritten text.
  4. Testing and Deployment
    • Conduct rigorous testing on both Android and iOS devices to ensure stability and performance.
    • Deploy the app to the Google Play Store and Apple App Store for public access.

Challenges and Solutions:-

  1. Accuracy of Recognition
    • Handwriting styles vary significantly among users. Implementing robust preprocessing techniques and leveraging advanced machine learning models can enhance recognition accuracy.
  2. Performance Optimization
    • Ensure the app runs smoothly on various devices by optimizing resource usage and minimizing latency in handwriting recognition.
  3. Cross-Platform Consistency
    • Thoroughly test the app on both platforms to maintain consistent functionality and appearance.

Potential Use Cases:-

  • Educational Tools: Enhance learning by allowing students to practice handwriting and receive instant feedback.
  • Note-Taking Apps: Enable users to jot down notes quickly and convert them into digital text.
  • Accessibility Features: Assist individuals with disabilities by providing an alternative text input method.

Conclusion

Developing a handwriting recognition app with Flutter is a compelling project that showcases the synergy between cutting-edge technology and user-centric design. By providing dual input modes and leveraging Flutter's cross-platform capabilities, this app aims to deliver a versatile and engaging user experience. Whether for personal use or as a prototype for more extensive applications, this project highlights the immense potential of handwriting recognition in today's digital era.

Category: Mobile
The Crucial Role of Xcode in iOS Development

The Crucial Role of Xcode in iOS Development

As an iOS developer, Xcode is an IDE that is  very useful for building, testing, and deploying apps. Not only is it Apple's official IDE for creating apps for iOS, macOS, watchOS, and tvOS, but it also serves as the gateway to the App Store for publishing your creations.

Advantages of using Xcode

1:-It makes very easy to Integrate apps with the Apple Ecosystem
2:-We can upload build of ios and flutter apps both and upload that to App store using xcode only.
3:-User-friendly interface.
4:-Xcode allows developers to customize their environment for better productivity

5:-Xcode provides direct support for Apple ecosystem features like iCloud, making it easier to:

  • Implement and test cloud syncing.
  • Configure app entitlements for iCloud and other Apple services.

6:-Apple continuously enhances Xcode with:

  • Performance improvements for faster builds.
  • New debugging tools and profiling features.
  • Enhanced integration with Swift Playgrounds, enabling developers to experiment with code interactively.

Running Flutter Code and Publishing to the App Store

Xcode is not limited to native development; it's also crucial for Flutter developers targeting iOS. With the Flutter framework:

  • Xcode handles the iOS-specific build processes.
  • It enables configuration of signing certificates, provisioning profiles, and app settings.
  • Developers can use Xcode to upload Flutter apps to the App Store.

Deploying Apps to the App Store using xcode
Here's a step-by-step breakdown of how to deploy an app using Xcode:

  • Prepare the app 
    • Ensure the app meets Apple's guidelines and has been tested thoroughly.
    • Configure the app's version and build numbers in Xcode.
    • Build the app in your local device first using xcode

       
  • Set Up App Store Connect
    • Log in to App Store Connect.
    • Create a new app record, filling in details like app name, category, and pricing.

       
  • Archive the App
    • In Xcode, select your project and choose Product > Archive.
    • This process generates an app archive suitable for distribution.

       
  • Validate the App
    • Use Xcode's built-in validation to check for issues before submission.
    • Ensure all necessary certificates and provisioning profiles are in place.

       
  • Upload to App Store
    • After validation, use Xcode's uploader to send the app to App Store Connect.

 

CONCLUSION
Xcode is a tool/IDE that makes developing, testing, and deploying iOS apps efficient and accessible. From its powerful code editor and interface builder to its seamless integration with the App Store, Xcode is an essential part of the iOS development process. Whether you're working on native apps or using frameworks like Flutter, mastering Xcode is key to delivering high-quality applications.

Category: Mobile
Banner

Don't just hire talent,
But build your dream team

Our experience in providing the best talents in accordance with diverse industry demands sets us apart from the rest. Hire a dedicated team of experts to build & scale your project, achieve delivery excellence, and maximize your returns. Rest assured, we will help you start and launch your project, your way – with full trust and transparency!