1

次のコードを使用して警告ダイアログを表示し、インターネットを表示していません。

シナリオ 1: インターネットがオフになっている アラート ボックスにインターネットがないことを示すアクティビティを開きます。

シナリオ 2 (ここで問題があります): インターネットの存在下でアクティビティを開いてから、モバイル データをオフにすると、アラートが表示されません。

        ConnectivityManager connectivityManager = (ConnectivityManager) getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();

    //if there is no internet connection the dialog box created app will not work further
    if (networkInfo == null || !networkInfo.isConnected() || !networkInfo.isAvailable()) {
        Dialog networkdialog = new Dialog(this);
        networkdialog.setContentView(R.layout.networkalert);
        networkdialog.setCancelable(false);
        networkdialog.getWindow().setLayout(WindowManager.LayoutParams.WRAP_CONTENT, WindowManager.LayoutParams.WRAP_CONTENT);
        networkdialog.getWindow().getAttributes().windowAnimations = android.R.style.Animation_Dialog;

        Button retrybtn = networkdialog.findViewById(R.id.retrybtn);
        retrybtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //after click on retry the activity rerun
                recreate();
            }
        });
        networkdialog.show();
    }

アクティビティの作成メソッドで上記のコードを使用しています。

4

0 に答える 0