//////////////////////////////////////////
//웹소켓을 처리하는 도중 핸드폰의 특성상 네트워크환경을 많이 타게 된다. 그때문에 만들게 된 소스..
/////////////////////////////////////////////
BroadcastReceiver networkStateReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent)
{
// Log.e("Network Listener", "________Network Type Changed");
String action = intent.getAction();
if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION))
{
Log.e("TAG", "_______Receiver onConnectivity");
NetworkInfo info =
intent
.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
if (info == null) {
Log.e("TAG", "________No Network Info
Available");
return;
}
Log.e("_network statues_", "___________"
+
info.getState().toString());
if (info.isConnected()) {
try {
// Log.e("aaaaaaa", "___" + getUser);
iosocket = new
IOSocket("ws://115.68.23.219:3000",
getUser,
service.this);
iosocket.connect();
} catch (IOException e) {
e.printStackTrace();
}
Log.e("TAG", "________Broadcast: Network Up");
// Restart any
downloads.
// Send any pending transactions.
// Start any
async tasks.
// (optional) Request partial wakelock to
allow
// networking to continue.
return;
} else
{
// iosocket.
try
{
iosocket.getWebSocket().close();
} catch (IOException e)
{
// TODO Auto-generated catch
block
e.printStackTrace();
}
Log.e("TAG",
"________Broadcast: Network Down");
}
return;
}
}
};
IntentFilter filter = new
IntentFilter(
ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(networkStateReceiver,
filter);
'Android_Programma' 카테고리의 다른 글
안드로이드 프로젝트 앱이름 프로젝트나 아이콘 바꾸기 (0) | 2012.03.21 |
---|---|
shared preference 입출력 (안드로이드에서 공유 환경 변수 두기) (0) | 2012.03.21 |
padding intent 로 값넘길 시 전송코드과 받는 코드 (0) | 2012.03.21 |
android softkeyboard 강제로 키우거나 끄기. (0) | 2012.03.21 |
android 지금 서비스가 동작 중인지 확인하는 코드 (0) | 2012.03.21 |