Author: Priyanka Kumari

The latest player to play on mobile for music song i.e. Exoplayer

Exoplayer is an application level Media Player Library.ExoPlayer standard audio and video components are built on Android’s MediaCodec API, which was released in Android 4.1 .It is an adaptive audio and video streaming.Because ExoPlayer is a library, you can easily take advantage of new features as they become available by updating your app.I have been use MediaPlayer to stream a song but problem is song stream in approx all mobile except redemii and latest android 7 mobile thats why we use Exoplayer to stream song ,when we use Exoplayer to stream audio and video song there is no problem to play song.Exoplayer is very fast and smooth audio and video songs.

Feature of Exoplayer:

1>Exoplayer is an application level Media Player Library.

2>It works on all mobile to stream audio and video songs.

3>It is very fast and smooth player to stream an audio and video songs.

4>Ability to run the very same Player version on all devices.

How to use Exoplayer :

1>First add dependency in build.gradle:
dependencies {
compile ‘’
It is very important to  allow  import exoplayer in your activity.

2> Inintialise Exoplayer in onCreate method
ExoPlayer exoplayer;//It is declare globally in your activity.
exoplayer = ExoPlayer.Factory.newInstance(1);
In your activity First initialize Exoplayer in onCreate method
3>Write this code where you want to stream audio player

MediaCodecAudioTrackRenderer audioRenderer = null;
Allocator allocator = new DefaultAllocator(BUFFER_SEGMENT_SIZE);
String userAgent = Util.getUserAgent(localContext, “ExoPlayerDemo”);
DataSource dataSource = new DefaultUriDataSource(localContext, null, userAgent);
ExtractorSampleSource sampleSource = new ExtractorSampleSource(Uri.parse(_uri),
audioRenderer = new MediaCodecAudioTrackRenderer(sampleSource);


Where _uri is Url of songs.

Method To Play ExoPlayer

public void playMedia() {
if (!mediaPlayer.getPlayWhenReady()) {
isPlaying = true;
isPause = false;


This is the method to call for stream  a song and play.Inwhich isPlaying and isPause is a boolean value.

Method to pause media player:

public void pauseMedia() {
if (mediaPlayer.getPlayWhenReady()) {
isPlaying = false;
isPause = true;

This is the method to call for pause a song.Inwhich isPlaying and isPause is a boolean value.

Method to stop media player

if (mediaPlayer.getPlayWhenReady()) {

This is the method to call for stop a song.


Exoplayer is a powerful concept to stream an audio and video songs.It is very fast and smooth player.When we use Exoplayer Stream an audio and video song on all mobile,there is no problem in any mobile in stream a song.

Read More Media Streaming With Exoplayer


Introduction of Kotlin

Kotlin is a statically-typed, inferred and functional programming language which is developed by “JetBrains” developers in 2011.JetBrains developers are the main team member who invented Kotlin programming language.Kotlin name is kept from Kotlin island which is near in Saint Petersburg, Russia.
Preview release date: 31 March 2017
Stable release date: 25 April 2017
Kotlin is the combination of multiple languages, for example, something is taken from Scala programming language, something is taken from C++ and something is taken from java etc, and it comes with no limitations.
It also runs in Java Virtual Machine and firstly converted in bytecode and etc. One of the main motives of Kotlin is to compile as fast as java.And one of the main reason to invent Kotlin is to overcome java problems.

Features of Kotlin :
Kotlin introduces many improvements for programmers such as :

1) Kotlin setup is very easy, simply a plugin is available in android studio upload plugin and one option showed that is setup configure Kotlin and click and Kotlin configure automatically.

2)Kotlin is concise which means the code of amount is reduce as compare to other languages.
3)Kotlin is safe means Null-Pointer Exception which is the major problem in Java, which is eliminated in Kotlin.In Kotlin you can create two types of a variable (nullable variable and non-null variable), if you want to create null variable then choose a nullable variable and if you want to create non-null value then choose a non-null variable, it gives error msg not a null-pointer exception.

4)Kotlin is Interoperable means you can easily convert Kotlin program in java and if you want to convert java program in Kotlin then you can easily convert.


5)Kotlin is the third language which is fully supported by Android after Java and C++.
6)Kotlin is a completely open source and free in cost and gives one option to convert java to Kotlin and a strong focus on java binary compatibility.
7)It is intended to improve code readability, gives an easier way to extend Android SDK classes and speed up development.

8) In Kotlin, there is no need to write semicolon “;”, without writing semicolon you can run your app.In C, C++, JAVA, Android without semicolon crash your project.
How to use Kotlin:
1: How to declare variables and data types in Kotlin
It declares in two way
i) The first way in which you did not need to pass data type called implicit conversion:
var fruit = “Mango”
val count = 100
Here, fruit is a variable of type String data type, and the count is a variable of type Int data type. You don’t have to specify the types of variables, Kotlin implicitly does that. The compiler knows this by initializer expression (“Mango” is a String, and 100 is an integer value). This is called type inference in programming.
The difference between var and val:
val is an Immutable reference which means the variable declared using val keyword cannot be changed once the value is assigned. It is similar to final variable in Java.
var is the Mutable reference which means the variable declared using var keyword can be changed later in the program. It corresponds to regular Java variable.
ii) second if you want to define data type called explicit conversion:
val a:Int = 6266
Means value convert to integer type
val a:Long = 2000L
the in which compiler considers long data type.Suffix “L” means it converts in long data types.
2>Charecter, String and their functions in Kotlin:
Syntax: class Student(val firstName: String, var age: Int) {
// class body
3>Array in Kotlin:
Arrays in Kotlin are represented using the Array class. You can create an array in Kotlin either using the library function arrayOf() or be using the Array() constructor.
You can pass a bunch of values to the arrayOf function to create an array :
var numbers = arrayOf(1, 2, 3, 4, 5)
var animals = arrayOf(“mango”, “jackfruit”, “banana”, “apple”)
var mixedArray = arrayOf(1, true, 3, “hello”, ‘A’)
how to use array in kotlin:
fun main(args: Array<String>){
var array = arrayof(123,234,765)
println(“${array[0]}”) // To print 0th position value of array

for(i in array){
println(“${array[i]}”) //To print all value of array use for loop:

4>Class and Constructor in kotlin:
Syntax: class student
If you do not want to add body of class then there is no need to add curly braces.if you want to add body of class then need to use curly braces:
Syntax: class student {
//body of class
How to call Constructor :student()
fun main(args: Array<String>){
var s = student() //Here call student constructor


Kotlin is a new language with low risk and easy to learn, you stay in the familiar Java ecosystem and you can start using Kotlin alongside with Java.

Read More Top 8 Things You Need To Know About Kotlin, Android’s New Programming Language


Singleton class  which is created in java for  global point of view. Singletons are useful to provide a unique source of data or functionality to other Java Objects. In android Singleton class creates only one instance.

Benifit  to use of Singleton class in android:

Purpose to use  Singleton class is control to create number of object  creation in project and limiting the number of objects.

Suppose you made a app to play song through service,In this case you can use singleton class concept.Inwhich media player declare in service as a globally and use media player in any where of app,by using concept of singleton class concept.Means you create object of singleton class in activity inwhich you want to use singleton class value .And use mediaplayer globally you don’t need to create another object of media player.

Here is the process to use Singleton class:

This is Arraylist which is globally declare in Singleton class

public ArrayList<String> arraylist  = new ArrayList< String >();
Singleton class is:

// File Name:

    public class Singleton {
private static final Singleton instance = new Singleton();
public ArrayList<SubCatogry_Pozo> arraylist = new ArrayList<SubCatogry_Pozo>();
// /* A private Constructor prevents any other    * class from instantiating.    */
public Singleton() {

/* Static ‘instance’ method */
public static Singleton getInstance() {
return instance;

Here is  SubCatogry_Pozo  is  your pozo class of app.And arraylist which is globally declared in singleton class and use this arraylist through singleton class object.

And then use this singleton class in any activity in project ,To use this Singleton class in another Activity just create object of Singleton class

//Create object of Singleton class
Singleton singleton =Singleton.getInstance( );

And use arraylist through object of Singleton class i.e.

singleton. arraylist.add(value);

value which you want to add in arraylist and here is class inwhich you want to use arraylist of singleton class.

// File Name:

public class MainActivity extends Activity{

Singleton singleton =Singleton.getInstance( );   

protected void onCreate(@Nullable Bundle savedInstanceState) {
   singleton. arraylist.add(value);



The Singleton class maintains a static reference to the  singleton instance and returns that reference from the static getInstance() method.

Read More Singleton class

Android Mobile Development

Dialog box is a small window that prompts the user to make a decision or enter additional information. A dialog does not fill the full-screen and is normally used for modal events that require users to take an action before they can proceed.

And a Custom-dialog-box is same as dialog-box only difference is that in custom dialog-box you design dialog-box  on  your requirement. For Example- create dialog-box to enter four digit OTP number  in Which  you  take  four edit Text  with  equal distance to enter password and take one  “submit “ button.

 To create Custom-dialog-box follows step-by-step:

i)First create a new project in android studio and design layout for dialogBox.

 Android Layout File:

XML file, for custom  dialog.

File : res/layout/custom_dialog.xml

To, design layout you set  accordingly  margin,padding-left,right,top and bottom,height and width etc.



android:text=“Enter One Time Password”
android:textSize=“@dimen/dm_20sp” />



<requestFocus />





android:text=“SUBMIT” />

ii) In Activity

First create class and write the code below

File :

First  use changedListener in  onCreate  method:


And final class of  “ ”  :-

public class Custom_dialogbox extends Dialog implements TextWatcher

 And then Create automatically override method for TextWatcher. 

public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {}
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {}

To enter only one value to edit Text and cursor move on next edit Text automatically and when we want to remove password one by one sequencially in which cursor move back automatically,to write the cobe below on this method: 

public void afterTextChanged(Editable editable) {if (editable.length() == 1) {
if (editText_one.length() == 1) {

if (editText_two.length() == 1) {
if (editText_three.length() == 1) {
} else if (editable.length() == 0) {
if (editText_four.length() == 0) {
if (editText_three.length() == 0) {
if (editText_two.length() == 0) {

 After you add this class in your

Custom_DialogBox custom_dialog = new Custom_DialogBox(this);;

 Follow the above steps and see a custom-dialog-box accurately.

Read More Steps To Create a Custom-Dialog-Box to Enter Four Digit OTP Number in Android