Здесь есть код, который проверяет подключение к Интернету, а затем, если isconnected является ложным, отображает сообщение в диалоговом окне allert. Проблема в том, что если isconnected истинно и (я попытался включить if (isconnected) вместо if (! Connectedconnected)), то все работает. Но если я отключаю каждую сеть на своем телефоне, когда VM исполняет show(), каждое замораживание. Зачем? Спасибо всем:Alert dialog freeze my app
final AlertDialog.Builder dialog= new AlertDialog.Builder(this);
((Button)findViewById(R.id.listabutton)).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
AsyncTask asyncTask= new AsyncTask() {
boolean isconnected=true;
@Override
protected Object doInBackground(Object[] params) {
ConnectivityManager conMgr = (ConnectivityManager)getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetwork = conMgr.getActiveNetworkInfo();
isconnected = activeNetwork != null &&
activeNetwork.isConnectedOrConnecting();
Log.i("StateNet",isconnected+"");
return null;
}
@Override
protected void onPostExecute(Object o) {
if(!isconnected){
dialog.setMessage("Controlla la tua conessione a internet")
.setTitle("Ops problemino con internet")
.setPositiveButton("Ok", ok)
.show();
}
super.onPostExecute(o);
}
};
Ого, вы просто принять ответ, который вставили копию от меня. –
Извините, что я видел сначала другой onr –
Справедливость делается. –