안드로이드 네트워크 연결 상태 구현과 관련하여 질문있습니다
조회수 1533회
안드로이드와 php mysql을 이용하여 로그인 회원가입을 구현중에 있습니다. 현재 제가 하려는 부분은 앱을 실행시켰을때 네트워크 연결 유무를 체크해 연결이 되어 있지 않다면 알림 다이얼로그를 띄우고 앱을 종료하게 끔 구현하려 하였으나 onCreate 에 연결확인하는 코드를 붙이면 이상하게 버튼쪽에서 에러가 나서 질문드립니다.
네트워크 연결을 제외한 구현 과정은 메인 액티비티(로그인)에서 쉐어드프리퍼런스에 저장되어있는 아이디와 비밀번호가 있으면 php를 통해 db와 연동해서 자동로그인을 하거나
쉐어드 프리퍼런스에 저장된 정보가 없다면 직접 입력을하고 로그인 버튼을 눌러야지만 db연동이 가능하게끔 구현은 되어 있습니다.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ConnectivityManager manager = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo mobile = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
NetworkInfo wifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
// wifi 또는 모바일 네트워크 어느 하나라도 연결이 되어있다면,
if (wifi.isConnected() || mobile.isConnected()) {
setContentView(R.layout.activity_main);
} else {
AlertDialog.Builder ad = new AlertDialog.Builder(MainActivity.this);
{
ad.setTitle("네트워크 통신 에러");
ad.setMessage("네트워크 연결 상태를 확인해주시기 바랍니다.");
ad.setPositiveButton("확인", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
dialogInterface.dismiss();
}
});
}
}
에러
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력