Blog para desarrollo de aplicaciones en Android, aprende paso a paso como crear aplicaciones.

Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación para mostrarle publicidad personalizada y realizar análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. OK Más información | Y más

Como crear una Notificacion en Android

Android Notificacion Example Tutorial

Hola amigos comenzaremos a crear un pequeño tutorial para crear una Notificacion dinámica. La Notificacion es un mensaje que se muestra en la barra superior de nuestro celular. Y este puede ser modificado de muchas formas poco a poco iremos creando tutorial y contenido para desarrollar las Notifiaciones de distintas formas. Comenzamos.

Crear Proyecto Android (Aquí).

Comenzaremos creando nuestro proyecto para desarrollar nuestro ejemplo de la Notificacion.

Diseño Layout Notificacion

Ahora haremos el diseño de nuestro ejemplo para mostrar nuestra Notificacion.

Android Studio - Notifiacion



<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:padding="5dip" >

<ProgressBar
android:id="@+id/progressBar1"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:max="100" >
</ProgressBar>

<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="TextView"
android:gravity="center"
android:textColor="#000">
</TextView>
</LinearLayout>

Teniendo listo esto vamos agregar la siguiente imagen en el directorio Drawable.

Descargar: Icon

Código Notificacion Example

Ahora seguimos con el código de nuestra aplicación, para ello crearemos las siguientes clases de nuestra Notificacion.

CallNotification

import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RemoteViews;

public class CallNotification extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Crear un Button dinamico para la Notificacion
Button button = new Button(this);
button.setText("Crear Notification");
// Evento click del Button para la Notificacion
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Funcion de la Notificacion
createNotification();
}
});
setContentView(button);
}
// Funcion de la Notificacion
public void createNotification() {
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
for (int i = 0; i <= 10; i++) {
Notification notification = new Notification(R.drawable.icon,
"Una nueva notification", System.currentTimeMillis());
notification.flags |= Notification.FLAG_AUTO_CANCEL;
RemoteViews view = new RemoteViews(getPackageName(), R.layout.activity_main);
int done = i * 10;
view.setProgressBar(R.id.progressBar1, 100, done, false);
view.setTextViewText(R.id.textView1,
"" + done + " %");
notification.contentView = view;
Intent intent = new Intent(this, TargetActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0,
intent, PendingIntent.FLAG_CANCEL_CURRENT);
notification.contentIntent = pendingIntent;
notificationManager.notify(0, notification);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
}
}
}
}
Y por ultimo la siguiente clase. TargetActivity


import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class TargetActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Mensaje al terminar la notificación
TextView textView = new TextView(this);
textView.setText("Tienes una notificacion");
setContentView(textView);
}
}

Con esto solo nos queda un paso mas. Y para ello nos dirigimos al directorio donde esta el archivo AndroidManifest.xml. Para que llamemos a nuestra clase CallNotificacion


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
 package="com.example.blackjack.example_notificacion" >
 <application android:icon="@drawable/icon" android:label="@string/app_name">
 <activity android:name=".CallNotification" android:label="@string/app_name">
 <intent-filter>
 <action android:name="android.intent.action.MAIN" />
 <category android:name="android.intent.category.LAUNCHER" />
 </intent-filter>
 </activity>
 <activity android:name="TargetActivity"></activity>
 </application>
 <uses-permission android:name="android.permission.VIBRATE"></uses-permission>
</manifest>
Con esto ya tendremos lista nuestra Notificacion. Vean que añadimos el permiso para que la aplicación active la vibración de nuestro móvil al recibir la Notificacion.

Creamos Emulador AVD. (Aquí)

Vamos a crear el emulador para ver nuestra Notificacion. Y comprobar que hemos creado correctamente el ejemplo y la Notificacion se recibe al ejecutar nuestro proyecto.

Android Studio - Notifiacion
Android Studio - Notifiacion
Android Studio - Notifiacion
Y este sera nuestro ejemplo para una Notificacion.

Gracias espero el contenido haya sido de tu agrado compártelo para promover el conocimiento.

Opcion 1
Opcion 2

Hoy en día programar es una carrera entre los ingenieros del software intentando construir mayores y mejores programas a prueba de idiotas, y el Universo tratando de producir mayores y mejores idiotas. Por ahora, el Universo va ganando.
- Rich Cook

No hay comentarios:

Publicar un comentario

x

Registrate!

Curso Android Español

Curso Kotlin Español

eBook Free Android Studio

Noticias y Eventos

¡Directamente a tu INBOX!

Le enviaremos nuestros recursos gratis. Para obtener nuestro contenido nuevo, únase a nuestra comunidad. No te molestaremos enviando información inútil. ¡No te pierdas ninguna actualización, mantente conectado! Recuerda verificar tu correo electronico.

Ingrese su dirección de correo electrónico:

Entregado por FeedBurner