1. 程式人生 > >Android N 通知概覽及example

Android N 通知概覽及example

概述

Android App的通知在維護你的App和使用者之間的互動起著舉足輕重的作用,為了提供更好的使用者體驗,Android N上的通知提供了視覺化重新整理,自定義檢視和直接回復等功能。另外還提出了MessagingStyle和捆綁通知的概念。

一樣的通知,不一樣的外觀

Android N上通知最直觀的變化就是其外觀,最新的設計使得通知更具可讀性。

在上圖中,新版通知的時間預設是被隱藏的,如果想顯示,則可以呼叫setShowWhen(true)

對自定義檢視更好的支援

在之前如果要想自定義通知檢視或者適配一些新的風格,都是比較麻煩的事情,但現在Android N提供了DecoratedCustomViewStyle

DecoratedMediaCustomViewStyle提供了header,expanding behaviour,actions和large icon這些元素。這樣就使得你可以更好的專注你的通知內容部分。

直接回復

大家都知道通知的actions目前已經可以用於啟動一個Activity或者使得一些服務或廣播在後臺工作,Direct Reply允許你構建一個可以直接獲得通知中文字輸入的action,類似於下圖:

MessagingStyle

Android N中優化了在通知中展現會話檢視的體驗,其用的是Direct Reply和MessagingStyle。

Bundled Notification

首先來看一下bundled notification是一個什麼樣子:

如上圖所示,如果你一下收到了十幾封郵件的話並且使用了bundled notification,那麼首先你看到的是上圖左邊的形式,當你展開這個通知後,它就會變成右邊的樣子。

舉例

下面簡單看看以上這些通知在實際中的使用
Direct reply

Custom view

Bundled notification

Messaging style

原始碼

相關推薦

Android N 通知概覽example

概述 Android App的通知在維護你的App和使用者之間的互動起著舉足輕重的作用,為了提供更好的使用者體驗,Android N上的通知提供了視覺化重新整理,自定義檢視和直接回復等功能。另外還提出了MessagingStyle和捆綁通知的概念。 一樣的通知,不一樣的外觀 Android N上通知最直觀的變

Android模擬傳送通知訊息取消通知

效果圖如下: 一、實驗環境 開發軟體:Android Studio 3.1.4 模擬器:Genymotion 二、實現 介面佈局檔案————activity_main.xml <?xml version="1.0" encoding="utf-8"?>

Android N以上版本應用安裝包下載完成自動彈出安裝介面的適配方法

Android N及以上版本應用安裝包下載完成自動彈出安裝介面的適配方法   在實現下載和安裝APP功能的時候在Android較高版本可能會遇到如下的問題: 安裝Apk時報錯:android.os.FileUriExposedException: file:///storag

Android程式設計之Listener偵聽的N種寫法實現原理

寫下這個題目時突然想起魯迅筆下的孔乙已,茴香豆的幾種寫法,頗有些咬文嚼字的味道。雖然從事手機程式設計多年,但一直使用的是C和C++程式設計,由於安卓早期只支援JAVA開發,所以對於時下如火如荼的安卓系統,我一直觀之而未入之。現在由於工作需要開始研究安卓程式設計,由於以前主要使

android 極光推送快速自動整合,自定義通知樣式雙指下拉通知欄顯示全部內容

一,整合步驟: 1.極光推送官網,註冊,登入,建立應用,用專案包名獲取AppKey: 注:包名必須與專案的包名一致 2.在 module 的 gradle 中新增依賴和支援: android { ...... defaultConfig {

Android7.0新特性,Android N適配

部落格園轉載Url:http://www.cnblogs.com/gccbuaa/p/7375272.html新特性部分Android 7.0 Nougat 提供新功能以提升效能、生產效率和安全性,主要新增了下面的新特性和優化:一、新的NotificationAndroid

Android O 自定義通知例項一個自定義自動適配縮放圖片至特定大小的田字格ImageView

        這一篇博文的思路很簡單,沒有什麼深入的理論,源由是最近在實習公司裡開發用到了Android O的通知,發現與以往有所不同,相關的資料是有,但是大部分都不適用於這個版本,這裡只是寫一個非常簡單的Demo,算是程式碼的儲存吧。另外,為什麼一個自定義View要和通知

Android looper、handlerHandlerThread

將在 log one 獲取 list 技術分享 線程 數據 類型 一、簡介   在Android開發中,使用消息隊列(message)完成線程間通信。而使用消息隊列的線程就是消息循環(message looper)。消息循環不斷的檢查消息隊列,是否有新消息。消息循環是由一

Android N 設置中語言列表介紹

列表 1-1 用戶 圖1 .cn 出現 oid 點擊 and Android N上語言列表與N之前有很大變化,進入語言列表,可看到如圖1所示,圖中上面的框框是系統用戶所選擇的語言(Android N上用戶可以選擇好幾種語言,排在第一個是系統的語言), 下面的框框是一個添加語

Android中apk動態載入技術研究(2)android插件化實現

name creat package path iss fontsize 調用 dex con 了解了android中類載入的前期知識點後,來看看android中DexClassLoader詳細的實現 詳細載入流程例如以下: 宿主程序會到文件系統比

android:layout_margin真實含義 自己定義復合控件 layout()運行無效的問題解決

== net 橫屏 應該 ima ont lan vbo protect 一、關於layout_margin 搞Android時間也不短了。對layout_margin也不陌生了,可近期遇到一個問題讓我發現,對它的認識還不夠深入全面。大量網絡資料上都說,layout_m

Android ListView滑動刪除響應事件詳解

源代碼下載 引用 example imp cor toast don float 發現 目標:實現類似QQ,微信的消息列表滑動刪除 具體操作: 1. 主頁面布局 首先在布局文件(本例是activity_main.xml)中引入ListView控件,並指定id(如下代

Android N 7.1.1】 ActivityManagerService 獲取cpu狀態

nts ota system sna ati andro ood imp use void updateCpuStatsNow() { synchronized (mProcessCpuTracker) { mProcessCpuM

Android自己定義矩形selector、shape的使用

文字 nor div wrap jsb 對話框 lin img get 【聲明】轉載請註明出處。此文出自指尖飛落的博客:http://blog.csdn.net/huntersnail ——每天寫一篇博客。每天做一點技術積累! Andro

ANDROID N 分屏設置

重新 單擊 高亮 star sage 周期 拖拽 橫豎 onpause 一 概述  android N的發布,最大的亮點有2個,原生系統對應用分屏的支持和快捷回復。現在只介紹分屏功能,目前最新的Android N系統支持橫屏時讓兩個APP並排,豎屏時上下排放,而在Andro

Linux運維之道之admin選項概覽顏色的代表

達內linux運維adminadmin選項及顏色的代表命令行的基本格式:命令字 【選項】 【參數1】【參數2】...ls:查看所有文件(當前目錄下);-l :以長格式顯示;-A :顯示所有,包含以.開頭的隱藏文件;-d :顯示目錄本身屬性(無法單獨使用,與l連用);-h :提供易讀的容量單位(

Android N分屏模式Activity生命周期的變化

preview .... 多任務 google tro reat pau 分屏 窗口大小 昨天Google發布了Android N Preview, balabala....我是用模擬器去驗證的, 通過長按多任務窗口(口)進入分屏模式, 這裏只進行了簡單的測試, 不排除通過

Android SDK下載安裝配置教程

搭建 roi 根據 空間 jre xtra 項目 lose android 最近Neo突發神經,想要將學過的一些計算機視覺、機器學習中的算法都放到移動設備上去跑跑,因為移動開發是大勢所趨嘛,希望能夠通過這樣一個實踐的過程,找到一些新的靈感(該不會是為了賺錢吧…),我自己目前

2018年Unity結合Android SDK下載安裝配置教程

Edito 安裝和配置 href csdn pack unity 存放位置 soft name 原文:2018年Unity結合Android SDK下載安裝及配置教程

android 桌面通知notify

https uil tco send uri scree www. .com intent private void sendNotify() { NotificationManager manager = (NotificationManager) getSystemS