我陷入了以下问题。如果我的应用程序未检测到网络连接,我希望退出该应用程序。我的应用程序以启动屏幕启动。如果没有网络连接,可以显示启动屏幕,然后是烤面包在device.and然后终止该应用程序在飞溅屏幕上显示Toast Android
我在我的启动画面代码是这样的:
里面的onCreate()
ConnectivityManager connectivitymanager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkinfo = connectivitymanager.getActiveNetworkInfo();
connected = networkinfo != null && networkinfo.isAvailable()
&& networkinfo.isConnected();
Log.v("Network state : ", connected + "");
Thread splashThread = new Thread() {
@Override
public void run() {
try {
int waited = 0;
while (waited < 5000) {
sleep(100);
waited += 100;
}
} catch (InterruptedException e) {
// do nothing
} finally {
Looper.prepare();
if (connected == false) {
Toast.makeText(
splashscreenActivity.this,
"No Network Connection is available on device.",
Toast.LENGTH_LONG).show();
finish();
System.exit(0);
} else {
finish();
startActivity(new Intent(splashscreenActivity.this,
mainActivity.class));
}
Looper.loop();
}
}
};
splashThread.start();
1,请看看我的代码,并指导我我该怎么表示敬酒。 2.Or建议我一些其他更好的方式来做到这一点
感谢
编辑:
谢谢大家的回答:
我选择表示用溅射屏幕活动吐司达门德拉的方式:
适用的代码是:
if (connected == false) {
splashscreenActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(splashscreenActivity.this,
"No Internet Connection.", 3000).show();
}
});
finish();
} else {
//migrate to main activity from splashscreen
}
为什么不在显示启动画面之前进行检查,所以在你启动线程之前。或者,在下一个活动控制的启动画面传递给它之后执行此操作。 –
1)finish(); 2)startActivity(新意图(splashscreenActivity.this, mainActivity.class)); 也许 2) 1) – drifter
当启动画面显示时我们不能显示烤面包吗? – Shruti