/* * Copyright (C) 2007 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package android.app; import android.util.Log; /** * Class to notify the user of events that happen. This is how you tell * the user that something has happened in the background. {@more} * * Notifications can take different forms: * <ul> * <li>A persistent icon that goes in the status bar and is accessible * through the launcher, (when the user selects it, a designated Intent * can be launched),</li> * <li>Turning on or flashing LEDs on the device, or</li> * <li>Alerting the user by flashing the backlight, playing a sound, * or vibrating.</li> * </ul> * * <p> * Each of the notify methods takes an int id parameter and optionally a * {@link String} tag parameter, which may be {@code null}. These parameters * are used to form a pair (tag, id), or ({@code null}, id) if tag is * unspecified. This pair identifies this notification from your app to the * system, so that pair should be unique within your app. If you call one * of the notify methods with a (tag, id) pair that is currently active and * a new set of notification parameters, it will be updated. For example, * if you pass a new status bar icon, the old icon in the status bar will * be replaced with the new one. This is also the same tag and id you pass * to the {@link #cancel(int)} or {@link #cancel(String, int)} method to clear * this notification. * * <p> * You do not instantiate this class directly; instead, retrieve it through * {@link android.content.Context#getSystemService}. * * @see android.app.Notification * @see android.content.Context#getSystemService */ public class NotificationManager{ /** * Persistent notification on the status bar, * * @param id An identifier for this notification unique within your * application. * @param notification A {@link Notification} object describing how to * notify the user, other than the view you're providing. Must not be null. */ public void notify(int id, Notification notification) { notify(null, id, notification); } /** * Persistent notification on the status bar, * * @param tag A string identifier for this notification. May be {@code null}. * @param id An identifier for this notification. The pair (tag, id) must be unique * within your application. * @param notification A {@link Notification} object describing how to * notify the user, other than the view you're providing. Must not be null. */ public void notify(String tag, int id, Notification notification) { int[] idOut = new int[1]; } /** * Cancel a previously shown notification. If it's transient, the view * will be hidden. If it's persistent, it will be removed from the status * bar. */ public void cancel(int id) { cancel(null, id); } /** * Cancel a previously shown notification. If it's transient, the view * will be hidden. If it's persistent, it will be removed from the status * bar. */ public void cancel(String tag, int id) { } /** * Cancel all previously shown notifications. See {@link #cancel} for the * detailed behavior. */ public void cancelAll() { } }