package
com.example.gfgapp;
import
android.content.BroadcastReceiver;
import
android.content.Context;
import
android.content.Intent;
import
android.content.IntentFilter;
import
android.net.ConnectivityManager;
import
android.net.NetworkInfo;
import
android.os.Bundle;
import
android.view.View;
import
android.widget.FrameLayout;
import
androidx.appcompat.app.AppCompatActivity;
import
com.airbnb.lottie.LottieAnimationView;
public
class
MainActivity
extends
AppCompatActivity {
private
FrameLayout mainLayout;
private
LottieAnimationView animationView;
private
NetworkChangeReceiver networkChangeReceiver;
@Override
@SuppressWarnings
(
"deprecation"
)
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mainLayout = findViewById(R.id.main_layout);
animationView = findViewById(R.id.animation_view);
if
(!isConnected()) {
mainLayout.setVisibility(View.GONE);
animationView.setVisibility(View.VISIBLE);
animationView.setAnimation(R.raw.nc4);
animationView.loop(
true
);
animationView.playAnimation();
}
networkChangeReceiver =
new
NetworkChangeReceiver();
IntentFilter intentFilter =
new
IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(networkChangeReceiver, intentFilter);
}
@Override
protected
void
onDestroy() {
super
.onDestroy();
unregisterReceiver(networkChangeReceiver);
}
private
boolean
isConnected() {
ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
return
networkInfo !=
null
&& networkInfo.isConnected();
}
private
class
NetworkChangeReceiver
extends
BroadcastReceiver {
@Override
@SuppressWarnings
(
"deprecation"
)
public
void
onReceive(Context context, Intent intent) {
if
(isConnected()) {
Toast.makeText(MainActivity.
this
,
"Connected To Internet"
,Toast.LENGTH_SHORT).show();
mainLayout.setVisibility(View.VISIBLE);
animationView.setVisibility(View.GONE);
animationView.cancelAnimation();
}
else
{
Toast.makeText(MainActivity.
this
,
"No Internet"
,Toast.LENGTH_SHORT).show();
mainLayout.setVisibility(View.GONE);
animationView.setVisibility(View.VISIBLE);
animationView.setAnimation(R.raw.nc4);
animationView.loop(
true
);
animationView.playAnimation();
}
}
}
}