我試圖讓我的應用程序在右上角的時鐘和電池圖標旁邊顯示一個圖標,like this。將圖標添加到Android主屏幕右上角
我無法找到關於此問題的任何文檔。如果它是無證的,即「API可以隨時更改」,那麼我不認爲我會使用它。但除此之外,表明我的服務是活躍的將是非常整潔的。
我試圖讓我的應用程序在右上角的時鐘和電池圖標旁邊顯示一個圖標,like this。將圖標添加到Android主屏幕右上角
我無法找到關於此問題的任何文檔。如果它是無證的,即「API可以隨時更改」,那麼我不認爲我會使用它。但除此之外,表明我的服務是活躍的將是非常整潔的。
這是無法完成的。
但是,您可以在通知區域的左上角添加一個圖標。
只需創建一個Notification
並設置FLAG_ONGOING_EVENT
標誌。
當然,你可以(至少在Android 4.3以上)
(我知道這是一個老的文章,但以防萬一有人仍然不知道...)
1 - 創建一個圖標(例如my_notif_icon.png,使用文件/新建/其它/安卓/ Android的圖標集在Eclipse)
2 - 在你的服務活動,增加一個常數(如MyServicenotifId),以能夠刪除您的通知圖標,當你的服務被殺害:
private static final int MyServicenotifId = 1;
3 - 添加必要的進口:
import android.app.NotificationManager;
import android.support.v4.app.NotificationCompat;
4 - 在您的onStartCommand方法創建通知建設者和管理者:
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this);mBuilder.setSmallIcon(R.drawable.my_notif_icon);
mBuilder.setContentTitle("Notification Alert");
mBuilder.setContentText("Detailed Notification");
NotificationManager mNotificationManager = (NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(MyServicenotifId, mBuilder.build());
這應該顯示圖標,當你推出的服務。
要刪除服務被殺時的圖標添加這些行在您的服務onDestroy方法:
NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.cancel(GLiBnotificationID);