Wednesday, November 22, 2017

Checking internet connection and showing result in Snackbar in android studio

Using Snackbar you need to add android support design dependencies. Copy below dependencies and add to your build.gradle file.


compile 'com.android.support:design:25.3.1'

Give an id to your layout. as I am using RelativeLayout so I give it an id like 'mylayout'

android:id="@+id/mylayout"

In MainActivity.java file inside onCreate() method added your layout id like




RelativeLayout rel = (RelativeLayout) findViewById(R.id.mainactivity);

Now for checking internet connection create a java file and name it like ConnectionDetection.java

import android.app.Service;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
/**
* Created by Sagor Sarker on 17-Nov-17.
*/
public class ConnectionDetector {
Context context;
public ConnectionDetector(Context context) {
this.context = context;
}
public boolean isConnected()
{
ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Service.CONNECTIVITY_SERVICE);
if(cm!=null){
NetworkInfo info = cm.getActiveNetworkInfo();
if(info!=null){
if(info.getState() == NetworkInfo.State.CONNECTED)
return true;
}
}
return false;
}
}


On MainActivity. java create

private ConnectionDetector cd;
...........
Now inside onCreate() method write the following code to

cd = new ConnectionDetector(this);

if(!cd.isConnected()){
    Snackbar snackbar1 = Snackbar.make(mainActivity,
 "No Internet Connection,Please Connect", Snackbar.LENGTH_LONG);
    snackbar1.show();
}




Run Your Application without internet connection

No comments:

Post a Comment

Recent Post

  • 10 ways to have a better conversation
    Don't multi-task (Be present in that moment) Don't pontificateUse open-ended questionGo with...
  • প্রতিবিম্বের মুক্তি
    মানিব্যাগের গোপন ভাঁজের প্রতিবিম্ব আজ হাসে, হাসতে হাসতে বলে, "বদ্ধ পকেটের ভাঁজ থেকে মুক্তি দাওনি...
  • Loose Plug!
    Did you ever try your mobile charger with loose plug! It seems like the combination of...