Skip to content

Instantly share code, notes, and snippets.

@realdm
Created January 27, 2015 08:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save realdm/d80ad12e9af70632b2fa to your computer and use it in GitHub Desktop.
Save realdm/d80ad12e9af70632b2fa to your computer and use it in GitHub Desktop.
package app.co.ke.ciclodevidaactivity;
import android.app.NotificationManager;
import android.support.annotation.DrawableRes;
import android.support.v4.app.NotificationCompat;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends ActionBarActivity {
/** Utilizada para criar uma notificacao e definir atributos como titulo,icon etc.*/
private NotificationCompat.Builder mNotificationBuilder;
/**Utilizada para emitir as notificacoes
* */
private NotificationManager mNotificationManager;
/**
* Cria a activity e apresenta-se como o melhor lugar para instanciar variaveis utilizadas globalmente
* ou algum outro componente que se queira utilizar na aplicacao.
* @param savedInstanceState
*/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Inicializa o Notification Builder
mNotificationBuilder = new NotificationCompat.Builder(this);
//inicializa o NotificationManager
mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
emiteNotificacao(R.drawable.ic_launcher,"OnCreate","Criando Activity. Activity Invisivel",001);
}
@Override
protected void onStart() {
super.onStart();
emiteNotificacao(R.drawable.ic_launcher,"OnStart","Iniciando Activity. Activity Visivel",002);
}
@Override
protected void onResume() {
super.onResume();
emiteNotificacao(R.drawable.ic_launcher,"OnResume","Voltando a Activity. Activity Visivel",003);
}
@Override
protected void onPause() {
super.onPause();
emiteNotificacao(R.drawable.ic_launcher,"OnPause","Parando Activity. Activity parcialmente visivel",004);
}
@Override
protected void onStop() {
super.onStop();
emiteNotificacao(R.drawable.ic_launcher,"onStop","Parando Activity. Activity Invisivel para o Utilizador",005);
}
@Override
protected void onDestroy() {
super.onDestroy();
emiteNotificacao(R.drawable.ic_launcher,"onDestroy","Activity Destruida",006);
}
/**
* Metodo auxiliar para criar e emitir notificacao.
* @param icon -> A anotacao @DrawableRes e uma das novas funcionalidades do android studio que permite que o int passado so e valido caso seja do tipo DrawableResource.
* @param titulo
* @param texto
*/
public void emiteNotificacao(@DrawableRes int icon, String titulo, String texto,int id)
{
//Define o icon
mNotificationBuilder.setSmallIcon(icon);
//Define o titulo
mNotificationBuilder.setContentTitle(titulo);
//Define o texto
mNotificationBuilder.setContentText(texto);
//Emite Notificacao
mNotificationManager.notify(id, mNotificationBuilder.build());
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment