2012-07-19 2 views
0

브로드 캐스트 수신기를 사용하여 현재 Wi-Fi 상태를 수신했습니다. 그래서 현재 상태를 토글 버튼 (setText)의 텍스트 (connected, connecting, disabled ...)로 설정합니다.수신 대기중인 모바일 데이터 상태에 대한 BroadcastReceiver

잘 작동합니다.

하지만 지금은 모바일 데이터 상태와 같은 일을하고 싶지는 ...

그래서 내가 설정 수신기 TelephonyManager를 사용 : 다음

this.registerReceiver(this.DataStateChangedReceiver, 
new IntentFilter(TelephonyManager.ACTION_PHONE_STATE_CHANGED)); 

을 내가 와이파이 수신기의 코드를 복사 편집이 :

private BroadcastReceiver DataStateChangedReceiver 
= new BroadcastReceiver() 
{ 

    @Override 
     public void onReceive(Context context, Intent intent) 
    { 
     // TODO Auto-generated method stub 


    int extraDataState = intent.getIntExtra(TelephonyManager.EXTRA_STATE , 
    TelephonyManager.DATA_DISCONNECTED); 

    switch(extraDataState){ 
    case TelephonyManager.DATA_CONNECTED: 
     data_toggle.setChecked(true); 


    break; 

    case TelephonyManager.DATA_DISCONNECTED: 
     data_toggle.setChecked(false); 


    break; 

    case TelephonyManager.DATA_CONNECTING: 
     data_toggle.setChecked(true); 


    break; 

    case TelephonyManager.DATA_SUSPENDED: 
     data_toggle.setChecked(true); 


    break; 

    } 
    } 
}; 

응용 시작하지만 아무것도 가 TelephonyManager이 작업을 수행 할 수있는 길을 잘못입니까 있습니다 .. toogleButton에 일어 났는가? ConnectivityManager?

모바일 데이터를 켜거나 끄기 위해 onclicklistener를 설정하려고합니다. 내 작품에서

이 다음 질문 할 수있는 방법

..

+0

HTTP를 참조하십시오 : //stackoverflow.com/questions/3644144/how-to-disable-mobile-data-on-android 모바일 데이터를 사용/사용 중지하는 방법에 대한 정보는 –

답변

-1

나는 트릭은 당신이 만드는 .... 그런 일에, ACTION_SCREEN_ON 및 _OFF와 트릭을 사용 ...... 그래서 한 다음 부울 Receiver.class의 변수와 연결 상태가 변경 될 때 변경 .... 그리고 당신이 무엇을 위해 할 의도를 얻을 서비스 (또는 활동), .....에

private boolean screenOff; 
@Override 
public void onReceive(Context context, Intent intent) { 
    if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) { 
     screenOff = true; 
    } else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) { 
     screenOff = false; 
    } 
    Intent i = new Intent(context, InternetService.class); 
    i.putExtra("screen_state", screenOff); 
    context.startService(i); 
} 
+0

고맙습니다.하지만 도움이되는지 잘 모르겠습니다. 저는 searc입니다. 와이파 이와 같은 방법에 대한 힌지. 예제를 작성한 사람이 누구도 여기에 있습니까? – freibergisch

관련 문제