23. Разработка приложений для ОС Android. Уведомления

1) Добавляем в res/layout/main.xml кнопку.
2) В Main.java добавляем код:

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button but1 = (Button) findViewById(R.id.button1);
        but1.setOnClickListener(new OnClickListener() {
            
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                // будем использовать системный сервис для отправки notification-сообщений
                NotificationManager not1 = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
                Notification notification = new Notification(
                        android.R.drawable.stat_notify_more // картинка для статусной панели по умолчанию из android
                        , "new notification!"
                        , System.currentTimeMillis() // чтобы отображать сообщение сразу же по нажатию
                        );
                Context context = Main.this;
                CharSequence tit1 = "title"; // заглавие текста
                CharSequence det1 = "details"; // содержимое
                Intent intent = new Intent(context, Main.class);
                PendingIntent pen1 = PendingIntent.getActivity(context, 0, intent, 0);
                notification.setLatestEventInfo(context, tit1, det1, pen1);
                not1.notify(0, notification); // вывод сообщения
            }
        });
    }


Для того чтобы просмотреть картинки которые по умолчанию есть в системе нужно зайти в Android 2.3.3/android.jar/res/drawable-hdpi

  

3) Добавим звуковое оповещение. Добавим в /res/raw звуковой файл типа WAV. Добавим в код перед not1.notify(0, notification);

notification.sound = Uri.parse("android.resource://com.example.status" // ссылка на наш проект
        + R.raw.tada);