1. 程式人生 > >百度雲推送----iOS

百度雲推送----iOS

前言

記錄一下這幾天學習的百度推送,覺得這個東西弄的還挺糟心的,好多注意的地方

正文

1.先申請一個百度開發者賬號 http://push.baidu.com/fc

2.建立一個新應用,並應用配置

3.選擇蘋果的圖示,開發用就選擇開發狀態,上線就可以選擇生產狀態

4.此時就讓你上傳開發證書,這個上傳的檔案需要時pem形式的,下面介紹,這個證書怎麼配置

    *建立APP ID,同一個公司可能會使用類似於 com.example.* 這樣通用的 App ID,但是如果要在 App 中加入訊息推送功能,那麼是不能使用通用 ID 的,需要為之單獨建立一個。

首先登陸 iOS Dev Center ,然後進入 Member Center,然後選擇 Certificates,Identifiers & profiles,如下圖:

然後點選下圖紅框中的任意條目,進入證書介面,如下圖:

在進入證書介面後,在左邊的Identifiers選擇中選定App IDs,點右上角加號建立Appid,如下圖:

在建立 App ID 的過程中,需要勾選 Push 服務,如下圖:

進入提交頁面,push服務處於configurable狀態,如下圖:

點選submit後到確認頁面,如下圖:

點選done後到初始頁面,然後再次選擇自己建立的appid,如下圖:

在下圖中選擇edit按鈕,配置推送的環境,如圖:

然後配置好對應的推送環境,個人版和企業版的開發環境都是選擇建立Development SSL Certificate型別的。個人版和企業版的釋出環境。釋出環境分以下三種:1. in-house必須是企業開發賬戶(企業內)(299美金) 2.ad-hoc個人賬戶或公司Company賬戶(99美金),但只用於內部測試(總共100個裝置).3.上線Appstore只能是個人賬戶或公司Company賬戶(99美金))如下圖:

如果你是為已有的 App 增加訊息推送功能,那麼開啟原有的 App ID,開啟 Push Notification 選項即可。流程跟上面的一樣。

7.2 建立及下載證書

點選 Create Certificate按鈕後會出現“About Creating a Certificate Signing Request (CSR)”,如下圖:

到了這裡,需要停下製作 CSR 檔案,製作過程比較簡單,下面是製作的過程。開啟 Mac 系統軟體'鑰匙串訪問',選擇 '證書助理' 及 '從證書頒發機構請求證書',製作 CSR 檔案,如下圖:

生成證書後,返回到 “About Creating a Certificate Signing Request (CSR)” 的介面,點選 continue,然後在 “Choose File” 選擇生成的CSR檔案,最後點選 Generate,生成證書。如下圖:

 現在證書製作已經完成。下載並雙擊用“鑰匙串訪問” 程式開啟後,在左邊一欄,上面選擇登入,下面選擇證書,然後選擇剛剛開啟的證書,切記不要展開它,直接右擊匯出p12,如下圖:

將檔案儲存為 .p12 格式,輸入密碼,如圖所示:

最後進入終端,到證書目錄下,執行以下命令將p12檔案轉換為pem證書檔案:

openssl pkcs12 -in MyApnsCert.p12 -out MyApnsCert.pem -nodes

提示需要輸入密碼,輸入剛才匯出 p12 時的密碼即可。

此時你要配置的證書就配置完成了,上傳這個證書就可以了。

5 就是在官方下載demo,開啟開發的demo,把你剛剛申請的應用的API KEY新增到工程裡

6. 開始更改工程裡的東西

   1)bundle identifier 改成你配置的bundle identifier

   2)plish檔案裡的bundle identifier也改了

   3) build setting ---coding signing----provisioning profile  描述檔案 去配置一個

Provisioning Profile的建立 點選下圖的+按鈕開始建立profile

選擇profile的環境

選擇建立profile的appid和開發者證書,並選擇裝置,最後生成profile

最後下載profile配置到xcode中進行開發測試

 注意。看看你這個描述檔案好使不,不好使就收不到推送

7.執行,基本的推送就可以了

8.之後就要說自定義的推送內容,根據高階設定裡的key = value 跳轉到對應的點介面

demo裡的方法

1 2 // 此方法是 使用者點選了通知,應用被殺死狀態下  在後臺  前臺 都會調起 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler

可以在這個方法裡面獲得userInfo,就是我們高階設定裡面傳過來的字典,用userInfo[@"key"]傳一個值,

@interface AppDelegate ()<UIAlertViewDelegate>
{
    UITabBarController *_tabBarCtr;
    NSString * _str;
}
//傳值
        _str = userInfo[@"key"];

這個方法就是點選確定和取消的響應

- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{}

可以在這裡面填寫你想要跳轉的介面

複製程式碼
 if (buttonIndex == 1) {
        if ([_str isEqualToString:@"BookViewController"]) {
            BookViewController *bookVC = [[BookViewController alloc ] init];
            [_tabBarCtr.selectedViewController presentViewController:bookVC animated:YES completion:^{
                
                
            }];
        }
複製程式碼

9.可以自己設定提醒的聲音

放工程裡面一個音訊檔案,

必須為以下幾種資料格式:

  • Linear PCM
  • MA4(IMA/ADPCM)
  • μLaw
  • aLaw

你可以將它們打包為 aiffwav 或caf檔案。自定義的聲音檔案時間必須小於 30 秒,如果超過了這個時間,將被系統聲音代替。

在高階設定裡面的音訊檔案填上音訊檔案的名字就可以了(我用的MP3是可以的)

參考

http://push.baidu.com/doc/ios/api

相關推薦

----iOS

前言 記錄一下這幾天學習的百度推送,覺得這個東西弄的還挺糟心的,好多注意的地方 正文 1.先申請一個百度開發者賬號 http://push.baidu.com/fc 2.建立一個新應用,並應用配置 3.選擇蘋果的圖示,開發用就選擇開發狀態,上線就可以選擇生產狀態 4.此時就讓你上傳開發證書,這個上傳的檔案需

iOS使用總結

由於專案中用到百度雲推送,這裡把填坑過程整理一下,以免別人也多走彎路。參考資料:百度Push服務SDK使用者手冊(iOS版) 百度雲推送SDK環境搭建 首先下載最新的SDK,下載地址 選擇iOS客戶端下載,這裡用的版本是1.5.4,需要先註冊一個百度賬戶才能下載的。 把標頭檔案B

Java後端實現安卓/IOS移動端訊息

本文主要介紹Java伺服器端如何藉助第三方推送平臺(百度雲推送)推送給移動端訊息。 使用案例介紹: 根據客戶的需求,需要做一個類似淘寶訊息推送的功能,客戶下訂單、訂單付款、訂單商品已發貨,以及客戶完成評論,都需要以訊息推送提示的方式告知商家和賣家這麼一個功能,由於之前沒有實現過這方面的功

iOS開發-環境搭建

1.新增到SDK到工程中的步驟如下: • 將libBPush.a和BPush.h BPushCerResource.bundle新增到自己的工程下,新增時需要注意勾選當前Target • SDK需要以下庫:Foundation.framework、CoreTelephony.framework、lib

Android 入門篇

cep 控制臺 通過 esc port key 開發 manage class 轉載請標明出處:http://blog.csdn.net/lmj623565791/article/details/27231237如今app基本都有推送的功能。於是看了下百度雲的推送,官方文

伺服器端(php版)

<?php namespace Admin\Controller; use Think\Controller; use Org\Net; class AppController extends Controller{ private $appService;

--分析與開發詳解

一:優勢分析 百度雲推送,極光推送和個推各自的優勢是什麼? 極光推送功能優勢: 1、高效穩定的推送通知 為合作伙伴提供長連線SDK,開發者的服務訊息可以推送到其客戶端。使你的應用程式保持高注意力,即使使用者沒有開啟應用程式,也能夠推送通知到達使用者手機。您可以即時向用戶推

API---AndroidDemo

雖然還沒有搞懂檔案上傳、下載、刪除的問題,先來學習一波下一次迭代可能會用到的百度雲推送API使用方式。測試截圖開發準備1:登陸百度雲賬號,註冊成為開發者賬號2:建立一個應用用於測試依次需要填寫的資訊有:應用名稱、應用包名、適配的機器(安卓或者ios)Tips:應用包名將會是你

Android 利用REST API實現從客戶端

隨著谷歌開發者大會在中國的成功舉行,也帶來激動人心的訊息,2016年12月8日Google Developers中文網站正式釋出了。以後學習Android,獲取Android Studio、安卓最新版SDK等最新開發資源也變得更加輕鬆了。直接訪問Google Develop

javaSDK demo

百度雲推送巴拉巴拉巴拉 近階段由於PM同學的強烈要求,我們app服務端準備接入百度雲推送工程,那麼現在開始demo走起,本Demo主要是針對標籤推送。 下載百度雲推送SDK 網址:http://push.baidu.com/doc/j

整合之Maven方式

現在自己的產品沒有推送功能都不好意思出門啊! 前段時間做推送需求的時候,經過幾輪測試最後敲定的用百度雲推送。 百度雲推送整合非常方便,端上大概半天不到就搞定了,官網給的教程非常給力,詳細而又全面。 服務端的sdk也有非常詳細的示例,直接匯入相關jar就可以了,不過對於少部分

所需要注意的點

最近專案整合百度雲推送,整合很簡單但是用起來和其他推送有點不一樣。 控制檯推送和後臺推送有點不一樣。 ******需要我們自己自定義行為: 先看看安卓推送通知格式; Android通知格式 {"title":"hello","description":"hello w

Android第三方——極光,個

現在Android有不少的第三方推送介面,大大節省了我們的時間,讓我們專注於軟體本身的編寫。 極光推送 極光推送作為一個比較成熟的推送API,用起來是非常便利的,今天就來總結一下。 註冊賬號之後,首先建立一個應用,如下圖: 應用建立完成之後,會生成應用標識(AppKey)

cordova3.5整合PushNotification(1)

http://blog.csdn.net/mansai/article/details/19073913 選擇百度雲推送理由:專業、穩定、免費(Google GCM在國內有時無法正常使用) 第1步:註冊開發者賬戶並登入。 http://developer.baidu.com/

android客戶端的使用總結

在之前的一個專案中使用到了百度推送,以前對推送一無瞭解,現在把學習到的關於Android客戶端百度雲推送的知識分享一下 1.在配置檔案裡application中新增的程式碼: <!-- 此處Receiver名字修改為當前包名路徑 --> &l

自有賬戶體系對接必須要弄懂的問題

 同一個裝置上的同一個APP多次繫結返回的user_id相同,channel_id也相同。 同一個APP在不同的裝置上繫結user_id是不相同的,channel_id也不相同。 同一臺裝置對應唯一一個channel_id。(多個APP共用一條通道),所

楊澤業:給你的網站添加自動頁面代碼

復制 push 自動 https rap width HP 百度 分享圖片 最近我的 博客添加了360的自動推送頁面代碼,今天瀏覽百度的官方文件裏面,也發現了,其實百度也是可以把你自己的網站內容自動推送到百度搜索引擎裏面,以方便更快的收錄。 看完了百度官方的介紹,也是和36

織夢加入主動程式碼

今天和大家分享的是關於織夢建站的連結推送例項,例如:你釋出了一篇新文章,等著百度來抓取,那就很被動,不知道什麼時候才能被收錄;但是我們可以主動去推送,下邊我們具體來操作說明。  第一步:首先在織夢的後臺新增2個變數。 1.新增cfg_badutoken系統變數 說明:這個

使用ASP語言向主動網址的方法和經驗分享

最近在網站SEO優化中接觸到了百度站長平臺中的向百度主動推送網址的功能。百度開放了API介面給站長,以便廣大站長進行呼叫,主動推送網址。可是百度給出的API呼叫示例沒有ASP語言的,經過搜尋相關文章,找到了前人探索出的用ASP呼叫API主動推送網址的方法,不過在按照網友分享的

[Push]訊息的應用

推送技術是指通過客戶端與伺服器端建立長連結,客戶端可以接收由伺服器端不定時傳送的訊息,在客戶機/伺服器的應用程式中,推送技術能夠向客戶機傳送資料而無需其發出請求,例如傳送電子郵件。相比較而言,全球資訊網卻是基於拉技術(Pull Technology),因此客戶機瀏覽器必須