PCSalt
Adds taste to your computing.
Tech tutorials on Android, Java, Backend Development, and IoT
Recent Posts
AlertDialog in Android — The Complete Guide
Everything you need to know about AlertDialog in Android — basic usage, selection dialogs, custom layouts, and button customization. All in Kotlin.
CQRS with Spring Boot, Kafka & MongoDB — Part 1: What is CQRS and why you need it
Understanding Command Query Responsibility Segregation, when it makes sense, and how Spring Boot, Kafka, and MongoDB fit together in a CQRS architecture.
Display item selected from AutoCompleteTextView in Chip - Android
In this blog we are going to display a list of planets in an AutoCompleteTextView. The list of planets will...
Add border to just one side of View - Android
At some point there is a need to display a layout with border(s). And sometimes the border is required in...
BottomSheetDialogFragment - Disable Cancel on Touch Outside and Drag - Android
Disable Cancel on Touch Outside & on Back press In order to create a BottomSheetDialogFragment which should not dismiss on...
Rearrange positive and negative number in array with only one variable - Java
Problem statement: We have a list of positive and negative numbers in a random order. We have to rearrange the...
Convert JSON values into comma separated values - Java
JSON is a light-weight format to store and transport data. But sometimes it is required to convert it into some...
Add badge count to navigation drawer hamburger icon - Android
NavigationDrawer provides easy access to menu functions. Sometimes the menu items have some actionable content available. To notify user that...
Migrate to Android Room with Date column - Android
Migrating our apps to Android Room from conventional SQLite Database was flawless except when we encountered issue with Date column...
Generate app name with version code, name and flavour name - Android
After a build is shared to a team or group of people, sometimes a question arises that what was the...
Set up Continuous Integration server (Jenkins) for Android Projects
Jenkins is one of the best open-source Continuous Integration server available. It helps in automating the builds and sharing of...
Detecting obstacle with IR (Infrared) Sensor Raspberry Pi 3
Concept: IR (Infrared) Sensor IR (Infrared) Sensor works by emitting infrared signal/radiation and receiving of the signal when the signal...
Check if a String is a Balanced String
A balanced String is a String with equal number of opening and closing matched brackets. In other words, an expression...
== vs equals() in Java — What's the difference?
Understanding the difference between the == operator and equals() method in Java, and why using the wrong one leads to subtle bugs.
Product Flavors in Android
Environment plays a vital role in the application development. As per the requirements, we have to create few environments, viz....
Set margins in dp programmatically - Android
Sometimes at runtime, it is required to set margin to a view. But, the problem is getting different size for...
EditText with Single Line, Line Wrapping and Done Action in Android
Regular formula for making an EditText- Single Line : no new line <Enter> allowed,- Line Wrapping : Single line wrapped...
How to get all values of SharedPreferences programmatically in Android
SharedPreferences stores all values in XML file. So, if you want to iterate through all the values stored in it,...
Storing data in SharedPreferences - Android
In previous post Store Data – SharedPreferences – Android we discussed about cases, when we should save data in SharedPreferences....
RecyclerView - Android
In this post, we are going to load the list of posts from PCSalt.com. In our previous post, JSON Parsing...
Create Andriod Application Project in Android Studio Continued
In previous blog post we discussed about the requirements for Android Application development using Android Studio and setup our directory...
Android Studio for Android App Development
In Google I/O 2013, Google revealed an IDE - Android Studio - especially designed for Android Application Development. That time,...
Create Android Application Project in Android Studio
In previous blog, we tried to reason with developers who are still using Eclipse to migrate to Android Studio. Well,...
Store Data - SharedPreferences - Android
When it comes to store data like It is not a good choice to manage a database. As mentioned in...
Copy to Clipboard Programmatically - Android
Clipboard is a type of register where copied contents are kept by Android. If you require to keep some text...
JSON Parsing - Android
The last post XML Parsing using SAXParser was about parsing a web service providing XML. In this post we are...
XML Parsing using SAXParser - Android
Webservices are one of the effective way of transferring information from server to mobile apps. The webservices may use XML...
Android SQLite Database - Part 2/2
This is the second post in SQLite series. In this post we will create an app to perform insert, update,...
Android SQLite Database - Part 1/2
When it comes to save data in an Android device then there are three ways to do it. Depending on...
Create List Using ListView - Android
Update: Instead of using ListView now you should start using RecyclerView. If you are unfamiliar with RecyclerView then you can...
String Concatenation in Java — concat() vs + vs StringBuilder
Understanding the real differences between concat(), the + operator, and StringBuilder in Java — what actually matters and what doesn't.
Add EditText Programmatically - Android
Sometimes it is the requirement of the program to add EditText programmatically. The following code can be used to add...
Getting source code from APK
Before proceeding towards explaining how to get source code from APK, we want to clarify that it is for educational...