2015-10-19 47 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

我已編輯我的帖子。這並不能解決問題 –

相關問題