2016-06-05 7 views
1

스플래시 화면이 있으며 완벽하게 작동하지만 이제는 인터넷 검사를 수행하고 사용자에게 보낼 활동을 결정하기위한 기능을 실행하려고합니다.스플래쉬 화면에서 인터넷 확인하기

public class Splash extends Activity { 

    private static int tempo_splash = 1000;  
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.splash); 
       getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); // Para o layout preencher toda tela do cel (remover a barra de tit.) 

     new Timer().schedule(new TimerTask() {  

      public void run() { 
       finish(); 

       Intent intent = new Intent(); 
       intent.setClass(Splash.this, MainActivity.class); //Chamando a classe splash e a principal (main) 
       startActivity(intent); 
      } 
     }, 2000);  

    } 
} 

그리고 이것은 checkInternet 내 클래스입니다 :

public class MyConnectivityChecker extends AppCompatActivity {  

    public void verificaInternet() { 
     ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 

     if (cm.getActiveNetworkInfo()!= null 
       && cm.getActiveNetworkInfo().isAvailable() 
       && cm.getActiveNetworkInfo().isConnected()) { 

      Intent i = new Intent(this, MainActivity.class); 

     } else { 

      Intent i = new Intent(this, CheckInternet.class); 
      startActivity(i); 

     } 
    }  
} 
+0

왜'MyConnectivityChecker'를'Splash'에 병합하지 않습니까? – tynn

+0

시도했지만 성공하지 못했습니다. ( –

+0

@KevinJhon 제 편집 된 답변을 참조하십시오 . – k0sh

답변

1

당신의 codesplashActivity의 방법보다 추가이

private Class verificaInternet() { 
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); 

    if (cm.getActiveNetworkInfo()!= null 
      && cm.getActiveNetworkInfo().isAvailable() 
      && cm.getActiveNetworkInfo().isConnected()) { 
     return MainActivity.class; 
    } else { 
     return CheckInternet.class; 
    } 
} 

처럼 보일 수와 timer

과 같아야합니다
new Timer().schedule(new TimerTask() { 
     @Override public void run() { 
      Intent intent = new Intent(); 
      intent.setClass(Splash.this, verificaInternet()); //Chamando a classe splash e a principal (main) 
      startActivity(intent); 
      finish();//this should be after starting intent 
     } 
    }, 2000); 
+0

verificaInternet() 결과 오류 : "메소드 'verificaInternet()을 해결할 수 없습니다.' –