¿Cómo creo una actividad que está visible en la parte superior de la pantalla de bloqueo

Recibo una notificación entrante de C2DM mientras la pantalla está bloqueada. Me gustaría activar la pantalla y mostrar el mensaje de notificación en la parte superior de la pantalla de bloqueo mediante una Actividad. Estoy iniciando la Actividad de notificación desde mi C2DM BroadcastReceiver de la siguiente manera:

Intent new_intent= new Intent().setClass( context, EIAlertDialog.class );           
new_intent.addFlags( Intent.FLAG_ACTIVITY_CLEAR_TOP );      
new_intent.addFlags( Intent.FLAG_ACTIVITY_NEW_TASK );      
context.startActivity( new_intent );

y dentro del método onCreate de la actividad de notificaciones, despierto la pantalla de la siguiente manera:

PowerManager powerManager= (PowerManager)getSystemService( Context.POWER_SERVICE );
if (!powerManager.isScreenOn()) {
    mWakeLock= powerManager.newWakeLock(
                   PowerManager.FULL_WAKE_LOCK |
                   PowerManager.ACQUIRE_CAUSES_WAKEUP, 
                   "My Tag" )
    mWakeLock.acquire();
}

La pantalla se ha despertado, pero la actividad de notificación no está visible hasta que desbloqueo la pantalla.

Me doy cuenta de que puedo evitar la pantalla de bloqueo con el siguiente código, pero eso no se desea. Quiero que el usuario desbloquee el teléfono, solo si está interesado en leer / responder a la notificación.

getWindow().addFlags(
    WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD |
    WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED |
    WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON 
);

Respuestas a la pregunta(3)

Su respuesta a la pregunta