日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android官方开发文档Training系列课程中文版:通知用户之构建通知

發布時間:2025/6/15 Android 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android官方开发文档Training系列课程中文版:通知用户之构建通知 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文地址:http://android.xsoftlab.net/training/notify-user/index.html

引言

通知用于在有事件發生時,將事情以更便捷的方式展示給用戶。用戶可以在他們方便的時候直接與通知交互。

Notifications design guide課程講述了如何設計有效的通知以及何時去使用它們。這節課將會學習如何實現通用的通知設計。

構建通知

這節課的實現主要基于NotificationCompat.Builder類,NotificationCompat.Builder類屬于支持庫。開發者應該使用NotificationCompat及其子類,特別是NotificationCompat.Builder,以便支持更寬泛的平臺。

創建通知構建器

當創建通知時,需要指定通知的UI內容以及它的點擊行為。一個Builder對象至少要包含以下條件:

  • 一個小圖標,通過setSmallIcon()方法設置。
  • 通知標題,通過setContentTitle()方法設置。
  • 詳細文本,通過setContentText()方法設置。

比如:

NotificationCompat.Builder mBuilder =new NotificationCompat.Builder(this).setSmallIcon(R.drawable.notification_icon).setContentTitle("My notification").setContentText("Hello World!");

定義通知的行為

創建通知時,應當至少為通知添加一個行為。這個行為會將用戶帶到Activity中,這個Activity中詳細的展示了發生了什么事情,或者可以使用戶采取進一步的行動。在通知內部,行為由PendingIntent所包含的Intent指定,它可以用來啟動Activity.

如何構造PendingIntent取決于要啟動的Activity的類型。當由通知啟動Activity時,開發者必須考慮用戶所期待的導航體驗。在下面的代碼中,點擊通知會啟動一個新的Activity,這個Activity繼承了通知所產生的行為習慣。在這種情況下不需要創建人為的回退棧。

Intent resultIntent = new Intent(this, ResultActivity.class); ... // Because clicking the notification opens a new ("special") activity, there's // no need to create an artificial back stack. PendingIntent resultPendingIntent =PendingIntent.getActivity(this,0,resultIntent,PendingIntent.FLAG_UPDATE_CURRENT );

設置通知的點擊行為

為了使PendingIntent與手勢產生關聯,需要調用NotificationCompat.Builder的對應方法。比如要啟動一個Activity,則調用setContentIntent()方法添加PendingIntent即可。

發布通知

發布通知需要執行以下步驟:

  • 獲得NotificationManager的實例。
  • 使用notify()方法發布通知。在調用notify()方法時需要指定通知的ID,這個ID用于通知的稍后更新。
  • 調用build()方法,它會返回一個Notification對象。
NotificationCompat.Builder mBuilder; ... // Sets an ID for the notification int mNotificationId = 001; // Gets an instance of the NotificationManager service NotificationManager mNotifyMgr = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); // Builds the notification and issues it. mNotifyMgr.notify(mNotificationId, mBuilder.build());

總結

以上是生活随笔為你收集整理的Android官方开发文档Training系列课程中文版:通知用户之构建通知的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。