在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MobPush iOS端SDK API推送配置方法

MobTech科技派 ? 來源:MobTech科技派 ? 作者:MobTech科技派 ? 2022-08-16 12:17 ? 次閱讀

概述

MobPush 注冊推送,獲取推送id等方法均可在SDK的"MobPush.h"中進行查看,也可以下載MobPush的Demo進行參考。

推送環境設置(setAPNsForProduction)

/**
 @param isProduction 是否生產環境。 如果為開發狀態,設置為 NO; 如果為生產狀態,應改為 YES。 Default 為 YES 生產狀態
 */
+ (void)setAPNsForProduction:(BOOL)isProduction;

示例代碼

// 設置推送環境
#ifdef DEBUG

    [MobPush setAPNsForProduction:NO];

#else

    [MobPush setAPNsForProduction:YES];

#endif

注冊推送配置(setupNotification)

/**
@param configuration 配置信息
 */
+ (void)setupNotification:(MPushNotificationConfiguration *)configuration;

示例代碼

//MobPush推送設置(獲得角標、聲音、彈框提醒權限),應用要收到推送(角標、聲音、彈框提醒)需要先申請權限,這個方法就是設置推送配置、申請權限的方法。用法可參考以下的例子。

MPushNotificationConfiguration *configuration = [[MPushNotificationConfiguration alloc] init];

configuration.types = MPushAuthorizationOptionsBadge | MPushAuthorizationOptionsSound | MPushAuthorizationOptionsAlert;

[MobPush setupNotification:configuration];

通知回調接口(MobPushDidReceiveMessageNotification)

/**
 收到消息通知(數據是MPushMessage對象,可能是推送數據、自定義消息數據,APNs、本地通知等的回調)
 */
extern NSString *const MobPushDidReceiveMessageNotification;   

說明:應用收到消息事,MobPush會發起一個通知,開發者只需要建立一個通知收聽 MobPushDidReceiveMessageNotification 并作相應處理即可。收到的數據是一個MPushMessage對象,可能是推送數據,也可能是自定義消息數據。如果是推送數據,開發者可以通過MobPush.h中的addLocalNotification:方法,讓消息以本地通知形式顯示(iOS 10之前的系統應用內是不會顯示通知的)。

示例代碼

// 注冊通知回調
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didReceiveMessage:) name:MobPushDidReceiveMessageNotification object:nil];

//查看通知參數可以打印notification
- (void)didReceiveMessage:(NSNotification *)notification{}

獲取推送RegistrationID (getRegistrationID)

獲取推送RegistrationID接口,RegistrationID可與用戶id綁定,實現向指定用戶推送消息,此接口必須在推送設置接口之后調用。

/**
 獲取注冊id(可與用戶id綁定,實現向指定用戶推送消息)

 @param handler 結果
 */
+ (void)getRegistrationID:(void(^)(NSString *registrationID, NSError *error))handler;

示例代碼

[MobPush getRegistrationID:^(NSString *registrationID, NSError *error) {

 NSLog(@"registrationID = %@--error = %@", registrationID, error);

}];

推送標簽API(addTags)

MobPush支持根據標簽進行推送,所以也提供了對標簽的相應操作。

/**
 獲取所有標簽
 @param handler 結果
 */
+ (void)getTagsWithResult:(void (^) (NSArray *tags, NSError *error))handler;/**

/**
 添加標簽
 @param tags 標簽組
 @param handler 結果
 */
+ (void)addTags:(NSArray *)tags result:(void (^) (NSError *error))handler;

/**
 刪除標簽
 @param tags 需要刪除的標簽
 @param handler 結果
 */
+ (void)deleteTags:(NSArray *)tags result:(void (^) (NSError *error))handler;

/**
 清空所有標簽
 @param handler 結果
 */
+ (void)cleanAllTags:(void (^) (NSError *error))handler;

示例代碼

[MobPush getTagsWithResult:^(NSArray *tags, NSError *error) {};

[MobPush addTags:[self tags] result:^(NSError *error) {};

[MobPush deleteTags:[self tags] result:^(NSError *error) {};

[MobPush cleanAllTags:^(NSError *error) {};

推送別名API(setAlias)

MobPush同樣支持根據別名推送,所以也提供了對別名的相應操作。

/**
 獲取別名
 @param handler 結果
 */
+ (void)getAliasWithResult:(void (^) (NSString *alias, NSError *error))handler;

/**
 設置別名
 @param alias 別名
 @param handler 結果
 */
+ (void)setAlias:(NSString *)alias result:(void (^) (NSError *error))handler;

/**
 刪除別名
 @param handler 結果
 */
+ (void)deleteAlias:(void (^) (NSError *error))handler;

示例代碼

[MobPush getAliasWithResult:^(NSString *alias, NSError *error) {

};

[MobPush deleteAlias:^(NSError *error) {

};

[MobPush setAlias:@"alias" result:^(NSError *error) {
  }];

添加本地推送接口(addLocalNotification)

/**
 添加本地推送通知
 @param request 消息請求(消息標識、消息具體信息、觸發方式)
 @param handler 結果,iOS10以上成功result為UNNotificationRequest對象、iOS10以下成功result為UILocalNotification對象,失敗result為nil
*/
+ (void)addLocalNotification:(MPushNotificationRequest *)request result:(void (^) (id result, NSError *error))handler;

示例代碼

#import 
[MobPush addLocalNotification:request result:^(id result, NSError *error) {};

設置角標(setBadge)

/**
 設置角標值到Mob服務器
 本地先調用setApplicationIconBadgeNumber函數來顯示角標,再將該角標值同步到Mob服務器,
 @param badge 新的角標值(會覆蓋服務器上保存的值)
 */
+ (void)setBadge:(NSInteger)badge;

/**
 清除角標,但不清空通知欄消息
 */
+ (void)clearBadge;

示例代碼

[MobPush setBadge:8];

[MobPush clearBadge];

打開和關閉遠程推送(stopPush)

/**
 關閉遠程推送(應用內推送和本地通知不受影響,只關閉遠程推送)
 */
+ (void)stopPush;

/**
 打開遠程推送
 */
+ (void)restartPush;

示例代碼

[MobPush stopPush];

[MobPush restartPush];

應用處于前臺時設置推送消息的提示類型(setAPNsShowForegroundType)

/**
 設置應用在前臺有 Badge、Sound、Alert 三種類型,默認3個選項都有,iOS 10 以后設置有效。
 如果不想前臺有 Badge、Sound、Alert,設置 MPushAuthorizationOptionsNone
 @param type 類型
 */
+ (void)setAPNsShowForegroundType:(MPushAuthorizationOptions)type;

示例代碼

//設置后,應用在前臺時不展示通知橫幅、角標、聲音。(iOS 10 以后有效,iOS 10 以前本來就不展示)
[MobPush setAPNsShowForegroundType:MPushAuthorizationOptionsNone];

指定刪除收到的本地推送(removeNotificationWithIdentifiers

/**
 刪除指定的推送通知(可以刪除未發送或者已經發送的本地通知)
 @param identifiers 推送請求標識數組,為nil,刪除所有通知
 */
+ (void)removeNotificationWithIdentifiers:(NSArray  *)identifiers;

示例代碼

[MobPush removeNotificationWithIdentifiers:nil];

推送打開指定應用內指定頁面(initWithMobPushScene)

后臺配置

如果開發者想要對通知消息進行點擊跳轉到app內指定頁面的操作,可以在開發者管理后臺打開配置開關和參數設置。

Scheme地址:為開發者自定義的控制器路徑。

傳遞參數:為跳轉控制器的初始化參數。

代碼配置

開發者需要在自己的應用內對所跳轉的控制器進行相關代碼設置。如下:(可參照demo中PushViewController.m) 參考鏈接(可參考示例代碼也可以參考鏈接去設置): https://www.jianshu.com/p/9abb125b5456

/**
 設置控制器路徑
 @return 控制器路徑
 */
+ (NSString *)MobPushPath;

/**
 初始化場景參數

 @param params 場景參數
 @return 控制器對象
 */
- (instancetype)initWithMobPushScene:(NSDictionary*)params;

示例代碼

#import 

// 還原標識ios可以自定義在對應vc中實現如下還原代碼
+ (NSString *)MobPushPath
{
    return @"mlink://com.mob.mobpush.link";
}

//點擊推送場景還原頁面參數
- (instancetype)initWithMobPushScene:(NSDictionary *)params
{
    if (self = [super init])
    {

    }
    return self;
}

富媒體推送使用(MobPushServiceExtension)

添加 MobPushServiceExtension 依賴庫

設置 Notification Service 最低運行版本為 10.0:

開啟富媒體地址Http訪問支持

使用 MobPushServiceExtension 進行富媒體推送

在 NotificationService.m 文件中,導入 MobPushServiceExtension 的頭文件:

#import 

進入MobPush開發者后臺通過url(帶有后綴格式的文件地址)或者文件的方式發送富媒體通知。(必須勾選mutable-content選項)

調用handelNotificationServiceRequestUrl方法。接收到 APNs 通知后,SDK 判斷是否有富媒體資源request.content.userInfo[@“attachment”],如果富媒體資源存在則SDK下載資源,下載完成后以 Block 方式回調返回 attachments 資源數組對象和error錯誤信息。

示例代碼

- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler {

self.contentHandler = contentHandler;

self.bestAttemptContent = [request.content mutableCopy];

#pragma mark ----將APNs信息交由MobPush處理----

NSString * attachUrl = request.content.userInfo[@“attachment”];

[MobPushServiceExtension handelNotificationServiceRequestUrl:attachUrl withAttachmentsComplete:^(NSArray *attachments, NSError *error) {

if (attachments.count > 0) {

self.bestAttemptContent.attachments = attachments; self.contentHandler(self.bestAttemptContent);

        }else
       {
 self.contentHandler(self.bestAttemptContent);

        }

    }];
}

多媒體大小限制

自定義推送聲音

將聲音文件拖入到項目中,在MobPush后臺或者接口傳入對應聲音文件名稱即可

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • API
    API
    +關注

    關注

    2

    文章

    1501

    瀏覽量

    62017
  • iOS
    iOS
    +關注

    關注

    8

    文章

    3395

    瀏覽量

    150607
  • SDK
    SDK
    +關注

    關注

    3

    文章

    1036

    瀏覽量

    45941
收藏 人收藏

    評論

    相關推薦

    Android自定義鈴聲 MobPush對安卓自定義鈴聲的教程

    如何為APP推送設置獨特的通知鈴聲呢?本次帶來的是MobPush對安卓自定義鈴聲的教程,快來看看吧~
    的頭像 發表于 10-21 15:34 ?1155次閱讀
    Android<b class='flag-5'>端</b>自定義鈴聲 <b class='flag-5'>MobPush</b>對安卓<b class='flag-5'>端</b>自定義鈴聲的教程

    iEST527車聯網OBD智能終端 SDK for iOS 說明

    iEST527車聯網OBD智能終端SDK for iOS 說明iEST527 車聯網OBD 智能終端支持iPhone4S、iPhone5、iPhone5S、iPad 等帶有BT4.0 藍牙功能
    發表于 01-11 17:31

    SDKAPI、Open API有什么區別(iot開發平臺)

    ,提高組成單元的內聚性,降低組成單元間的耦合程度,從而提高系統的維護性和擴展性。API是接口的一種,在程序交互中具有重要的作用,而SDKAPI有著密不可分的關系。[ SDK的概念]
    發表于 07-09 15:32

    OpenCV iOS應該如何配置詳細方法說明

    本文檔的主要內容詳細介紹的是OpenCV iOS應該如何配置詳細方法說明。
    發表于 10-29 17:49 ?12次下載
    OpenCV <b class='flag-5'>iOS</b>應該如何<b class='flag-5'>配置</b>詳細<b class='flag-5'>方法</b>說明

    蘋果ios15正式版推送時間

    蘋果ios15正式版什么時候推送ios15正式版什么時候才可以升級?蘋果往年幾乎都是下半年進行新版系統推送
    的頭像 發表于 06-09 14:30 ?1w次閱讀

    Respoke SDK for iOS Respoke的iOS SDKs

    ./oschina_soft/respoke-sdk-ios.zip
    發表于 06-28 11:14 ?0次下載
    Respoke <b class='flag-5'>SDK</b> for <b class='flag-5'>iOS</b> Respoke的<b class='flag-5'>iOS</b> SDKs

    MobPush丨AndroidSDK API

    描述:添加推送監聽,可監聽接收到的自定義消息(透傳消息)、通知消息、通知欄點擊事件、別名和標簽變更操作。
    的頭像 發表于 08-11 16:10 ?698次閱讀
    <b class='flag-5'>MobPush</b>丨Android<b class='flag-5'>端</b><b class='flag-5'>SDK</b> <b class='flag-5'>API</b>

    ESP8266 Non OS SDK API參考

    電子發燒友網站提供《ESP8266 Non OS SDK API參考.pdf》資料免費下載
    發表于 09-23 11:49 ?1次下載
    ESP8266 Non OS <b class='flag-5'>SDK</b> <b class='flag-5'>API</b>參考

    SDKAPI 在視頻環境中的區別

    現在,視頻API 或視頻SDK 不一定是每個工具本身的一個類別。相反,它們是創建的APISDK,旨在幫助您與并非從頭開始構建的視頻平臺進行交互和擴展。
    發表于 11-25 09:34 ?604次閱讀

    MobPush Android SDK 廠商推送限制

    概述 廠商推送限制 每個廠商通道都有對應的廠商配額和 QPS 限制,當請求超過限制且已配置廠商回執時,MobPush會采取以下措施: 當開發者推送請求超過廠商配額時,
    的頭像 發表于 08-02 12:24 ?751次閱讀
    <b class='flag-5'>MobPush</b> Android <b class='flag-5'>SDK</b> 廠商<b class='flag-5'>推送</b>限制

    MobPush iOS SDK iOS實時活動

    各種事情的進展, MobPushSDK iOS 4.0.3版本已完成適配,可根據文檔對應使用。 集成步驟 添加依賴庫 ActivityKit.fareworkSwiftUI.farework 配置?程?持
    的頭像 發表于 08-04 11:33 ?731次閱讀
    <b class='flag-5'>MobPush</b> <b class='flag-5'>iOS</b> <b class='flag-5'>SDK</b> <b class='flag-5'>iOS</b>實時活動

    Mobpush與A/B測試:覆蓋多應用場景下的精細化運營神器

    APP推送具有”直達用戶,實時互動“的特性,但如何選擇合適的推送頁面、推送文案、推送時間仍然困擾著一些APP運營者。Mobpush自帶的A/
    的頭像 發表于 09-14 10:46 ?304次閱讀
    <b class='flag-5'>Mobpush</b>與A/B測試:覆蓋多應用場景下的精細化運營神器

    Mobpush上線跨時區推送功能,助力中國開發者應用出海

    當前“不出海,就會出局”成為越來越多企業的共識,但出海應用如何實現跨時區推送長期以來困擾著應用開發者。因此MobPush智能推送服務于近期上線了全球多時區推送解決方案,支持多時區定時、
    的頭像 發表于 09-21 10:48 ?374次閱讀
    <b class='flag-5'>Mobpush</b>上線跨時區<b class='flag-5'>推送</b>功能,助力中國開發者應用出海

    Android推送問題排查技巧 針對MobPush安卓推送問題的解決辦法

    針對MobPush智能推送服務在使用過程中可能出現的問題,本文為各位開發者們帶來了針對MobPush安卓推送問題的解決辦法。 TCP在線
    的頭像 發表于 10-21 15:41 ?777次閱讀
    Android<b class='flag-5'>推送</b>問題排查技巧  針對<b class='flag-5'>MobPush</b>安卓<b class='flag-5'>端</b><b class='flag-5'>推送</b>問題的解決辦法

    MobPush:Android SDK 集成指南

    MobPush是一款旨在提供一站式解決方案的智能推送開發者工具,可以有效提高用戶參與度和粘性,從而帶來更多的業務效益,以下是最新版MobPush: Android SDK集成指南。
    的頭像 發表于 02-02 15:51 ?680次閱讀
    <b class='flag-5'>MobPush</b>:Android <b class='flag-5'>SDK</b> 集成指南
    主站蜘蛛池模板: 99久久精品99999久久| 亚洲人成网站在线| 国产成人午夜片在线观看| www.av日韩| 亚洲国内精品| 人人澡人人射| 国产精品17p| 翘臀白浆| 777色淫网站女女免费| www.爽| 三级欧美视频| 国产成人精品免费视频大全可播放的| 午夜大片免费完整在线看| 成年香蕉大黄美女美女| 男男np主受高h啪啪肉| 色噜噜狠狠狠综合曰曰曰| 黄的三级在线播放| 奇米影视久久| 最黄毛片| 久久99热狠狠色精品一区| 天天做日日爱| ggg成人| 深爱五月激情五月| 日本xxxxx黄区免费看动漫| 五月天婷婷基地| 日本aaaaa级片| 日本免费xxxx色视频| 99青草青草久热精品视频| 国产yin乱大巴视频| 手机在线看片你懂得| 天天躁天天狠天天透| 海棠高h粗暴调教双性男男| 欧美日韩无| 天天干夜啪| 日本视频一区在线观看免费| 色多多入口| 日日骑夜夜操| 在线免费观看毛片网站| 精品女视频在线观看免费| 深夜网站在线| 色妞网站|