2015-10-19 45 views
0

在我的应用程序中,如果应用程序恢复时没有Internet连接,我希望登录活动启动。在我的基类中,我使用了意图开始登录活动。但是应用程序卡住了,无法正常恢复。我有将近25项活动扩展了基本活动。 这是我在基本活动的onResume中使用的代码。当应用程序恢复时,从基类开始登录屏幕

public void onResume(){ 

    String status = NetworkUtil.getConnectivityStatusString(this); 

    if(status!=null && status.equals("Not connected to Internet")) 
    { 
    Intent i=new Intent(this, LoginActivity.this); 
    startActivity(i); 

} 

} 

回答

0

使用花括号if()喜欢此之后...

public void onResume(){ 

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


    if(activeNetworkInfo != null && activeNetworkInfo.isConnected()) 
    { 
    Intent i=new Intent(this, LoginActivity.this); 
    startActivity(i); 
    } 
} 
+0

我编辑了我的帖子。这并没有解决问题 –

+0

我编辑了代码..这是为了检查互联网连接... @nullvoid –

+0

互联网没有问题。我检查了状态变量,它给出了正确的互联网连接状态。问题在于调用onResume的意图。出于某种原因,意图无法正常工作。意图确实开始了,但是应用程序变慢了并陷入了僵局。我猜测的原因是我在基本活动的onResume中使用了intent,但是我想不出任何其他解决方案。 –

0

您需要if语句大括号添加到您。现在它只是有时做出意图,但总是试图开始它。

public void onResume(){ 

    String status = NetworkUtil.getConnectivityStatusString(this); 

    if(status!=null && status.equals("Not connected to Internet")) { 

     Intent i=new Intent(this, LoginActivity.this); 
     startActivity(i); 
    } 
} 
+0

我已编辑我的帖子。这并不能解决问题 –

相关问题