안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
오랜만에 글 올려보네요.
네트워크(4G, Wibro) 사용 가능 여부 검사 관련하여 질문 2가지 올려봅니다.
현재 안드로이드 프로젝트에서 Android 2.1-update1 라이브러리를 사용하고 있습니다.
네트워크 사용 가능 여부의 검사를 위하여 아래 코드를 이용하고 있습니다.
----------------------------------------------------------------------------------------------------
boolean isNetworkAvailable = true;
ConnectivityManager manager = (ConnectivityManager)context.getSystemService (Context.CONNECTIVITY_SERVICE);
boolean isMobileAvailable = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isAvailable();
boolean isMobileConnect = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnectedOrConnecting();
boolean isWifiAvailable = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isAvailable();
boolean isWifiConnect = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting();
if ((isWifiAvailable && isWifiConnect) || (isMobileAvailable && isMobileConnect))
isNetworkAvailable = true;
else
isNetworkAvailable = false;
----------------------------------------------------------------------------------------------------
이렇게 하니 특정 4G 단말기(EVO)에서 4G로 통신할 경우 네트워크 사용 가능 여부를 false로 가져오더라구요.
그래서 여기저기 찾아보니 ConnectivityManager.TYPE_WIMAX 값을 이용하라고 하는데..
문제는 이 값은 Android 2.2 라이브러리부터 지원을 한다는 것입니다.
질문1. 이 문제를 해결하기 위하여 Android 2.2 라이브러리를 사용하여 Build 하면 2.1 버전의 단말기들은 마켓에서 해당 앱의 검색이 안되지 않나요?
질문2. Android 2.1-update1 라이브러리로 위의 문제를 해결 할 수 있는 방법은 없을까요?
많은 조언 부탁드립니다.
감사합니다.




2.2의 버전코드가 8 이던가요? 8 이상일땐 3G랑 Wifi, 그리고 WIMAX 까지 검사 하시고
나머지 버전 코드(8 미만)는 3G랑 Wifi만 검사하시면 되지 않나요?
어차피 와이브로 탑재 폰이 안드로이드 2.1 이하로 나올 일도 없고.. 이제사 나오는 폰이니...
그리고 2.2 버전 선택했다고 검색 안되는거 아니에요
처음에 프로젝트 만들때 선택한 OS 버전은 SDK 버전을 선택하는거에요~
마켓에 앱이 뜨고 안뜨고는 메니페스트에 MinSdkVersion 이던가? 무튼 그거 있잖아요...
그 값으로 정해지겠죠... 7로 해두면... 프로젝트 생성시 SDK는 2.2로 선택했어도 최소 버전코드가 7이기 때문에
마켓엔 2.1부터 뜰거에요....