'Android'에 해당되는 글 2건

  1. 2015.09.22 스레드 안에서 ui작업
  2. 2014.04.17 슬립모드 핸들링

Thread t = new Thread(new Runnable(){

@Override

public void run() {

Looper.prepare();

    Handler h = new Handler();

h.post(new Runnable() {

public void run() {

//todo

}

});

Looper.loop();

}

});

t.start();

'안드로이드' 카테고리의 다른 글

activity on lock screen  (0) 2015.11.05
remote image to bitmap  (0) 2015.11.04
keystore생성 apk사인  (0) 2015.05.15
string to int, int to string  (0) 2014.11.21
슬립모드 핸들링  (0) 2014.04.17
Posted by 떡공이
,
출처 : http://thinkandroid.wordpress.com/2010/01/24/handling-screen-off-and-screen-on-intents/

리시버를 이용해서 찾는다

public class ScreenReceiver extends BroadcastReceiver {
      
    // THANKS JASON
    public static boolean wasScreenOn = true;
 
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
            // DO WHATEVER YOU NEED TO DO HERE
            wasScreenOn = false;
        } else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
            // AND DO WHATEVER YOU NEED TO DO HERE
            wasScreenOn = true;
        }
    }
 
}


사용하고자 하는 액티비티


public class ExampleActivity extends Activity {
 
   @Override
    protected void onCreate() {
        // INITIALIZE RECEIVER
        IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON);
        filter.addAction(Intent.ACTION_SCREEN_OFF);
        BroadcastReceiver mReceiver = new ScreenReceiver();
        registerReceiver(mReceiver, filter);
        // YOUR CODE
    }
 
    @Override
    protected void onPause() {
        // WHEN THE SCREEN IS ABOUT TO TURN OFF
        if (ScreenReceiver.wasScreenOn) {
            // THIS IS THE CASE WHEN ONPAUSE() IS CALLED BY THE SYSTEM DUE TO A SCREEN STATE CHANGE
            System.out.println("SCREEN TURNED OFF");
        } else {
            // THIS IS WHEN ONPAUSE() IS CALLED WHEN THE SCREEN STATE HAS NOT CHANGED
        }
        super.onPause();
    }
 
    @Override
    protected void onResume() {
        // ONLY WHEN SCREEN TURNS ON
        if (!ScreenReceiver.wasScreenOn) {
            // THIS IS WHEN ONRESUME() IS CALLED DUE TO A SCREEN STATE CHANGE
            System.out.println("SCREEN TURNED ON");
        } else {
            // THIS IS WHEN ONRESUME() IS CALLED WHEN THE SCREEN STATE HAS NOT CHANGED
        }
        super.onResume();
    }
 
}


'안드로이드' 카테고리의 다른 글

remote image to bitmap  (0) 2015.11.04
스레드 안에서 ui작업  (0) 2015.09.22
keystore생성 apk사인  (0) 2015.05.15
string to int, int to string  (0) 2014.11.21
날짜, 시간 관련  (0) 2013.06.21
Posted by 떡공이
,