소스 수정
@Override
protected void onMessage(Context context, Intent intent) {
Log.i(TAG, "Received message");
Log.i(TAG, "Received message context " + intent.getExtras().getString("message"));
//String message = getString(R.string.gcm_message);
Vibrator vibrator = (Vibrator)getSystemService(context.VIBRATOR_SERVICE);
vibrator.vibrate(1000);
WakeUpScreen.acquire(getApplicationContext(), 10000);
String message = intent.getExtras().getString("message");
// notifies user
generateNotification(context, message);
}
WakeUpScreen CLASS 추가
import android.content.Context;
import android.os.PowerManager;
/**
* 스크린을 ON한다. 젤리빈 4.2부터는 getWindows() 권장
* @author IKCHOI
*
*/
public class WakeUpScreen {
private static PowerManager.WakeLock wakeLock;
/**
* timeout을 설정하면, 자동으로 릴리즈됨
* @param context
* @param timeout
*/
public static void acquire(Context context, long timeout) {
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
wakeLock = pm.newWakeLock(
PowerManager.ACQUIRE_CAUSES_WAKEUP |
PowerManager.FULL_WAKE_LOCK |
PowerManager.ON_AFTER_RELEASE
, context.getClass().getName());
if(timeout > 0)
wakeLock.acquire(timeout);
else
wakeLock.acquire();
}
/**
* 이 메소드를 사용하면, 반드시 release를 해줘야 함
* @param context
*/
public static void acquire(Context context) {
acquire(context, 0);
}
public static void release() {
if (wakeLock.isHeld())
wakeLock.release();
}
}
참고 http://nonstop.pe.kr/android/1612
참고 2 http://www.androidside.com/bbs/board.php?bo_table=b49&wr_id=107992
':::: 개발 :::: > :::: 안드로이드 ::::' 카테고리의 다른 글
네트워크 상태 확인 (0) | 2014.04.21 |
---|---|
초기로딩 splash 이미지 교체 (0) | 2014.03.14 |
R 애러 R 찾을수 없다 할때 (0) | 2014.03.12 |
안드로이드 처음 화면 (초기화면) 3초 로딩 구현 (21) | 2014.03.11 |
GCM 내 앱에 적용 (0) | 2014.03.02 |
spring sts 에서 android 개발하기 (0) | 2014.02.24 |
GCM 사용할때 SENDER_ID 설정.. (0) | 2014.02.21 |
안드로이드 빌드 안 될때 (0) | 2014.02.21 |