android - segundo - Crear una notificación persistente y prevenir la notificación en la barra de estado
notificaciones en la barra de estado android studio (2)
Echa un vistazo a la bandera del evento en curso . Creo que esto puede crear notificaciones continuas similares a las notificaciones de conexión wifi y usb del sistema.
Tengo el siguiente código que estoy usando para una aplicación de Android:
package com.authorwjf.e_notifications;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Bundle;
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Bitmap bm = Bitmap.createScaledBitmap(BitmapFactory.decodeResource(getResources(), R.drawable.avatar),
getResources().getDimensionPixelSize(android.R.dimen.notification_large_icon_width),
getResources().getDimensionPixelSize(android.R.dimen.notification_large_icon_height),
true);
Intent intent = new Intent(this, Main.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 01, intent, Intent.FLAG_ACTIVITY_CLEAR_TASK);
Notification.Builder builder = new Notification.Builder(getApplicationContext());
builder.setContentTitle("This is the title");
builder.setContentText("This is the text");
builder.setSubText("Some sub text");
builder.setNumber(101);
builder.setContentIntent(pendingIntent);
builder.setTicker("Fancy Notification");
builder.setSmallIcon(R.drawable.ic_launcher);
builder.setLargeIcon(bm);
builder.setAutoCancel(true);
builder.setPriority(0);
Notification notification = builder.build();
NotificationManager notificationManger =
(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
notificationManger.notify(01, notification);
}
}
Básicamente, la aplicación cuando se lanza crea una notificación, ahora tengo algunas preguntas:
- Es posible que cuando se inicie la aplicación, la notificación se muestre en la lista desplegable de notificaciones pero sin el icono en la barra de estado. es decir. Referirse a
¿No se puede mostrar el icono marcado con un círculo rojo? En última instancia, me gustaría crear un servicio que simplemente se sienta en la notificación desplegable.
- ¿Hay alguna manera de hacer que la notificación en el menú desplegable persista? Si se presiona el ícono en un círculo azul ( http://imagebin.org/226494 ), ¿la notificación aún permanece?
Soy nuevo en Android dev y estoy tratando de familiarizarme con lo que puedo hacer con las notificaciones.
Gracias
A1: Para eliminar el icono de la barra de estado, usa este truco:
builder.setSmallIcon(android.R.color.transparent); //Tested and worked in API 14
A2: Para hacer una notificación persistente, agregue esta línea:
builder.setOngoing(true)