net__SDK手冊_OpenAPI 1.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.V20150827;
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:推送給設備; account:推送給指定帳號,tag:推送給自定義標簽; all: 推送給全部
request.Target = "all";
//根據Target來設定,如Target=device, 則對應的值為 設備id1,設備id2. 多個值使用逗號分隔.(帳號與設備有一次最多100個的限製)
request.TargetValue = "all";
// 設備類型deviceType 取值範圍為:0~3. iOS設備: 0; Android設備: 1; 全部: 3, 這是默認值.
request.DeviceType = 1;
// 推送配置
// 0:表示消息(默認為0), 1:表示通知
request.Type = 0;
// 消息的標題
request.Title = ".net Title";
// 消息的內容
request.Body = ".net body";
// 通知的摘要
request.Summary = ".net Summary";
// 推送配置: iOS
// iOS應用圖標右上角角標
request.IOSBadge = "1";
// iOS通知聲音
request.IOSMusic = "default";
//iOS通知標題(iOS 10+)
request.IOSTitle = "iOS 10 Title";
//iOS通知副標題(iOS 10+)
request.IOSSubtitle = "iOS 10 Subtitle";
//使能通知擴展處理(iOS 10+)
request.IOSMutableContent = true;
//設定通知Category
request.IOSNotificationCategory = "test_category";
//自定義的kv結構,開發者擴展用 針對iOS設備, iOS 10+ 可以用attachment關鍵字指定富媒體推送通知的資源Url
request.IOSExtParameters = "{"attachment":"https://xxxx.xxx/notification_pic.png","key1":"value1"}";
request.ApnsEnv = "DEV";
// 推送時設備不在線(既與移動推送的服務端的長連接通道不通),則這條推送會做為通知,通過蘋果的APNs通道送達一次(發送通知時,Summary為通知的內容,Message不起作用)。注意:離線消息轉通知僅適用於生產環境
// request.Remind = false;
// 推送配置: Android
// 點擊通知後動作,1:打開應用 2: 打開應用Activity 3:打開 url 4 :無跳轉邏輯
request.AndroidOpenType = "3";
// Android收到推送後打開對應的url,僅僅當androidOpenType=3有效
request.AndroidOpenUrl = "https://www.baidu.com";
//設置該參數後啟動小米托管彈窗功能,此處指定通知點擊後跳轉的Activity(托管彈窗的前提條件:1. 繼承小米輔助通道;2. storeOffline設為true)
//request.XiaomiActivity = "_Your_XiaoMi_Activity_";
// 設定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.ResponseId);
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:48
上一篇:
Java__SDK手冊_OpenAPI 1.0_移動推送-阿裏雲
下一篇:
nodejs__SDK手冊_OpenAPI 1.0_移動推送-阿裏雲
Logstash收集csv日誌__常見日誌格式_用戶指南_日誌服務-阿裏雲
專題&關鍵詞配置__輿情分析_快速開始_公眾趨勢分析-阿裏雲
RegionType__數據類型_API 參考_雲服務器 ECS-阿裏雲
監控、診斷和故障排除__監控服務_開發人員指南_對象存儲 OSS-阿裏雲
智能客服__阿裏雲ET介紹-阿裏雲
切換SQL采集狀態__日誌管理_API 參考_雲數據庫 RDS 版-阿裏雲
能 ping 通但端口不通時端口可用性探測說明__ECS常見問題_產品使用問題_雲服務器 ECS-阿裏雲
查詢推送列表__查詢相關_API 列表_OpenAPI 2.0_移動推送-阿裏雲
查看編排模板列表__鏡像與模板管理_用戶指南_容器服務-阿裏雲
添加雲產品指標__Dashboard_用戶指南_雲監控-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲