375
汽車大全
.net__SDK手冊_OpenAPI 2.0_移動推送-阿裏雲
1 獲取AccessKeyId和AccessKeySecret
2 獲取appKey
>>前往移動推動控製台獲取 app列表->應用證書
3 引入SDK依賴
using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Exceptions;
using Aliyun.Acs.Core.Profile;
using Aliyun.Acs.Push.Model.V20160801;
using System;
4 示例代碼(替換成您的AccessKeyId、AccessKeySecret、appKey)
IClientProfile clientProfile = DefaultProfile.GetProfile("cn-hangzhou", "<your access key id>", "<your access key secret>");
DefaultAcsClient client = new DefaultAcsClient(clientProfile);
PushRequest request = new PushRequest();
// 推送目標
request.AppKey = <your appKey>;
//推送目標: DEVICE:按設備推送 ALIAS : 按別名推送 ACCOUNT:按帳號推送 TAG:按標簽推送; ALL: 廣播推送
request.Target = "ALL";
//根據Target來設定,如Target=DEVICE, 則對應的值為 設備id1,設備id2. 多個值使用逗號分隔.(帳號與設備有一次最多100個的限製)
request.TargetValue = "all";
//消息類型 MESSAGE NOTICE
request.PushType = "NOTICE";
//設備類型 ANDROID iOS ALL.
request.DeviceType = "ALL";
// 消息的標題
request.Title = "Push Title";
// 消息的內容
request.Body = "Push body";
// 推送配置: iOS
// iOS應用圖標右上角角標
request.IOSBadge = 50;
// iOS通知聲音
request.IOSMusic = "default";
//iOS10通知副標題的內容
request.IOSSubtitle = "iOS10 subtitle";
//指定iOS10通知Category
request.IOSNotificationCategory = "iOS10 Notification Category";
//是否允許擴展iOS通知內容
request.IOSMutableContent = true;
//iOS的通知是通過APNs中心來發送的,需要填寫對應的環境信息。"DEV" : 表示開發環境 "PRODUCT" : 表示生產環境
request.IOSApnsEnv = "DEV";
//消息推送時設備不在線(既與移動推送的服務端的長連接通道不通),則這條推送會做為通知,通過蘋果的APNs通道送達一次。注意:離線消息轉通知僅適用於生產環境
request.IOSRemind = true;
//iOS消息轉通知時使用的iOS通知內容,僅當iOSApnsEnv=PRODUCT && iOSRemind為true時有效
request.IOSRemindBody = "iOSRemindBody";
//自定義的kv結構,開發者擴展用 針對iOS設備
request.IOSExtParameters = "{"key1":"value1"}";
// 推送配置: Android
// 通知的提醒方式 "VIBRATE" : 震動 "SOUND" : 聲音 "BOTH" : 聲音和震動 NONE : 靜音
request.AndroidNotifyType = "BOTH";
//通知欄自定義樣式0-100
request.AndroidNotificationBarType = 3;
//通知欄顯示優先級
request.AndroidNotificationBarPriority = 0;
//點擊通知後動作 "APPLICATION" : 打開應用 "ACTIVITY" : 打開AndroidActivity "URL" : 打開URL "NONE" : 無跳轉
request.AndroidOpenType = "NONE";
//Android收到推送後打開對應的url,僅當AndroidOpenType="URL"有效
request.AndroidOpenUrl = "https://www.baidu.com";
//設定通知打開的activity,僅當AndroidOpenType="Activity"有效
request.AndroidActivity = "com.alibaba.push2.demo.XiaoMiPushActivity";
//Android通知音樂
request.AndroidMusic = "default";
//設置該參數後啟動小米托管彈窗功能,此處指定通知點擊後跳轉的Activity(托管彈窗的前提條件:1. 繼承小米輔助通道;2. storeOffline設為true)
request.AndroidXiaoMiActivity = "com.ali.demo.MiActivity";
//小米彈窗標題
request.AndroidXiaoMiNotifyTitle = "Mi Title";
//小米彈窗內容
request.AndroidXiaoMiNotifyBody = "MiActivity Body";
// 設定android類型設備通知的擴展屬性
request.AndroidExtParameters = "{"k1":"android","k2":"v2"}";
// 推送控製
String pushTime = DateTime.UtcNow.AddSeconds(3).ToString("yyyy-MM-ddTHH\:mm\:ssZ");
request.PushTime = pushTime;//延遲3秒發送
String expireTime = DateTime.UtcNow.AddDays(2).ToString("yyyy-MM-ddTHH\:mm\:ssZ");
request.ExpireTime = expireTime;//設置過期時間為2天
request.StoreOffline = false;
try
{
PushResponse response = client.GetAcsResponse(request);
Console.WriteLine("RequestId:" + response.RequestId);
Console.WriteLine("ResponseId:"+response.MessageId);
Console.ReadLine();
} catch (ServerException e)
{
Console.WriteLine(e.ErrorCode);
Console.WriteLine(e.ErrorMessage);
Console.ReadLine();
} catch (ClientException e)
{
Console.WriteLine(e.ErrorCode);
Console.WriteLine(e.ErrorMessage);
Console.ReadLine();
}
最後更新:2016-12-20 21:19:58
上一篇:
解綁別名__alias相關_API 列表_OpenAPI 2.0_移動推送-阿裏雲
下一篇:
鑒權Action__OpenAPI RAM鑒權_OpenAPI 2.0_移動推送-阿裏雲
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲