本地通知和推送通知 iOS開發

2021-06-21 09:26:55 字數 1983 閱讀 5583

一、通知的型別:

1.橫幅(banner)

橫幅通知是在ios5中出現的新特性,是顯示在螢幕頂部的橫條,幾秒鐘後會自動消失。一條橫幅通知會顯示程式的小圖示(低分屏下顯示29×29的圖示,高分屏顯示58×58的圖示),程式的名字和通知的內容。小圖示可以幫助使用者一眼就看清楚是哪乙個應用程式在提醒他們。

2.提醒(alert)

提醒通知不會自動消失,需要使用者與之互動才能關閉。設計師需要設計通知的具體內容,有時還要action button(後面會談到)設計title。整個提醒通知的背景樣式,包括裡面的按鈕的樣式都是不可變的,所以設計師和開發者就不要在這裡發揮創意了。 android由於其開放性,我們是可以使用自己設計的控制項的,而ios這樣做可能是為了保持ui風格一致性。

3.標記(badge)

4.聲音(sound)

聲音提示也是ios的一種通知方式,支援自定義,可以與前面三種通知型別搭配使用。

總結:一般一條推送通知包含:橫幅、標記和聲音。

二、通知分類:本地通知和推送通知

1.本地通知應用程式的本地通知是由使用者的ios裝置生成並發布的,無論這個應用程式是否執行在前台。就像乙個日曆應用,或者是乙個to-do list應用,可以發出一條本地通知提醒使用者馬上有乙個會議要開始了。

本地通知**示例:

執行結果如下:

2. 推送通知

總結:如果使用本地通知的應用程式可以使用橫幅、提醒、標記、聲音,但是使用推送通知的應用程式需要先在蘋果的推送通知服務(apns)裡註冊要使用的通知型別

三、推送通知的工作流程和**實現

2.註冊推送通知型別後,接收從蘋果伺服器返回的唯一的裝置token,該token是推送伺服器傳送推送訊息的依據,所以需要傳送回推送伺服器儲存

總結:

通知的工作流程如下:

1. 首先是應用程式註冊訊息推送。

2. ios跟apns server要devicetoken。應用程式接受devicetoken。

3. 應用程式將devicetoken傳送給push服務端程式(provider)。

4. 服務端程式向apns服務傳送訊息。

5. apns服務將訊息傳送給iphone應用程式。

無論是iphone客戶端跟apns,還是provider和apns都需要通過證書進行連線的:

四、伺服器發給apns的通知資訊載體

載體(payload)是 json 字串(最長 256 位元組),封裝了你傳送給 ios 應用的資訊。這是乙個 payload 的例子:

,"acme1" : "bar",

"acme2" : 42

}五、在使用通知的時候需要注意以下幾點:

本地通知和推送通知

關於本地通知 在ios中如果點選乙個彈出通知 或者鎖屏介面滑動檢視通知 缺省會自動開啟當前應用。由於通知由系統排程那麼此時進入應用有兩種情況 關於推送通知 推送通知的過程可以分為以下幾步 應用服務提供商從伺服器端把要傳送的訊息和裝置令牌 device token 傳送給蘋果的訊息推送伺服器apns。...

iOS 本地推送(本地通知)

設定本地通知 void registerlocalnotification nsinteger alerttime else 執行通知註冊 本地通知 函式,當應用程式在前台時呼叫 nslog noti notification 這裡真實需要處理互動的地方 獲取通知所帶的資料 nsstring not...

iOS本地通知和遠端推送

本地通知 local notification 用於基於時間行為的通知。同時,如果程式不在前台執行,本地還是乙個有用的機制。比如,乙個應用程式在後台執行,向伺服器獲取訊息,當訊息到達時,通過本地通知機制通知使用者。本地通知uilocalnotification的例項,主要有三類屬性 1.schedu...