.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 NOTICErequest.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通知Categoryrequest.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-100request.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-阿里云