百度雲推送----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,如下圖:

Member Center

然后點擊下圖紅框中的任意條目,進入證書界面,如下圖:

certifiates select

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

Create App ID

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

select push notification

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

submit push notification

點擊submit后到確認頁面,如下圖:

done push notification

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

choose push addid

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

edit push mode

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

done push mode

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

7.2 創建及下載證書

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

Select Certificate Signing Request

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

Open keyChain

Open keyChain

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

generate certifate 現在證書制作已經完成。下載並雙擊用“鑰匙串訪問” 程序打開后,在左邊一欄,上面選擇登錄,下面選擇證書,然后選擇剛剛打開的證書,切記不要展開它,直接右擊導出p12,如下圖:

open certifate

將文件保存為 .p12 格式,輸入密碼,如圖所示:

save as 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

save as p12

選擇profile的環境

save as p12

選擇創建profile的appid和開發者證書,並選擇設備,最后生成profile

save as p12

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

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

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

8.之后就要說自定義的推送內容,根據高級設置里的key = value 跳轉到對應的點界面

 

demo里的方法

// 此方法是 用戶點擊了通知,應用被殺死狀態下  在后台  前台 都會調起
- (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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM