Skip to main content

Posts

Showing posts from June, 2024

onBackPressed() method is deprecated, you are looking for an alternative? Here It is the Latest Solution in android | Kotlin

onBackPressed() method is deprecated, you are looking for an alternative? Here It is the Latest Solution in android | Kotlin

With the evolution of Android development, several APIs and functions get deprecated over time to make way for more robust and flexible alternatives. One such deprecation that developers need to be aware of is the onBackPressed() method in Android. In Android, onBackPressed() was commonly used to handle back button presses within an activity. However, with the introduction of the Jetpack libraries and the emphasis on more structured navigation, this method has been deprecated. This blog will explore why onBackPressed() is deprecated and what the best alternative solutions are in Kotlin for handling back navigation. Why onBackPressed() is Deprecated The primary reasons for deprecating onBackPressed() include: Improved Navigation Architecture: Android Jetpack's Navigation Component provides a more consistent and predictable way to handle navigation, including back navigation. Lifecycle Awareness: Handling back

Mastering Kotlin Generics: Understanding and Deep Dive of In, Out, and Where

Kotlin, a modern statically typed programming language, offers many powerful features to streamline coding, one of which is its support for generics. Generics enable you to write flexible and reusable code, allowing types to be parameters when defining classes, interfaces, and functions. Understanding the intricacies of generics is crucial for leveraging Kotlin's full potential. In this blog, we'll delve into the concepts of in , out , and where in Kotlin's generics. What Are Generics? Generics are a feature that allows you to define classes, interfaces, and methods with placeholder types. This way, you can create more flexible and reusable components. For instance, you can create a List<T> that can hold any type T , rather than creating separate classes for each type. class Box<T>(val value: T) fun main() { val intBox = Box(1) val stringBox = Box("Hello") } In this example, Box<T> is a generic class where T

How Google Search Works? : The Magic Behind the Search Box

When you type a query into the Google search box, it may seem like magic that you receive highly relevant results in just a fraction of a second. But behind that simple search bar lies a complex and sophisticated system. Let's dive into how Google Search works, from crawling and indexing to ranking and delivering results. 1. Crawling: Discovering the Web's Content The first step in Google's search process is crawling. Google uses automated programs called "spiders" or "bots" to scour the internet. These bots follow links from one page to another, discovering new and updated content along the way. The goal is to cover as much of the web as possible and gather fresh information. Googlebot starts by fetching a few web pages, and then follows the links on those pages to find new URLs. This process is continuous and ensures that Google's database stays current with the ever-changing internet. 2. Indexing: Organizing the Information Once the web pages are

Popular posts from this blog

How to Insert Multiple rows in a single db transaction in Android Room Database? | Android | Room DB

  To insert multiple rows into a Room database in Android, you can follow these steps: 1. Set up Room Database: First, make sure you have set up your Room database correctly in your Android project. Define your Entity class, create a Database class that extends RoomDatabase, and set up your DAO (Data Access Object) interface. 2. Create Entity Class: Define an Entity class that represents the data you want to insert into the database. For example: 1 2 3 4 5 6 7 8 9 @Entity (tableName = "my_table" ) public class MyEntity { @PrimaryKey (autoGenerate = true ) public int id; public String name; public int age; // Add other fields and getters/setters as needed } Create DAO: Create a DAO interface with a method to insert multiple rows. For example: 1 2 3 4 5 @Dao public interface MyEntityDao { @Insert void insertAll (List<MyEntity> entities); } Initialise Database and DAO: In your application code, create an insta

Recycler View Like Google Play Store App | How to use SnapHelper Android, Kotlin

 If we see the google play store android app, we can see that the app list in horizontal recycler view hold a property that the first property hold always full visible or not visible, but a portion visible is not seeing. This property is snap property. In this article I show you how to use it in our own application. Basically we use two type of snap. Center Snap and start snap. I show you both here. So read full article here. The Key Moment code is here- For center snap you need to write 2 lines code- //center Snap val snapHelper = LinearSnapHelper() snapHelper.attachToRecyclerView(recyclerView1) For start snap, create a class in kotlin say StartSnapHelper.kt package com.example.snaphelpersampleapp import android.view.View import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.LinearSnapHelper import androidx.recyclerview.widget.OrientationHelper import androidx.recyclerview.widget.RecyclerView class StartSnapHelpe

How to fetch Latitude, Longitude from address and vice-versa(address from Latitude, Longitude) using Google Geo coder SDK in android| Kotlin

 In this Android development related article, you will get a simple solution that, how to get address using Latitude, Longitude and vice-versa. i.e latitude, longitude from an address text. It is very easy and simple. Read full article and carefully follow all the steps. Here we use google Geocoder SDK. Okay, first we create an android project in kotlin and create an Activity say MainActivity.kt. Use the below code- Function get Latitude, Longitude from Address- fun getLatLngFromAddress (context: Context, mAddress: String): String { val coder = Geocoder(context) lateinit var address: List<Address> try { address = coder.getFromLocationName(mAddress, 5 ) if (address == null ) { return "Fail to find Lat,Lng" } val location = address[ 0 ] return " Latitude: ${location.latitude}\n Longitude: ${location.longitude}" } catch (e: Exception