开发者社区> 问答> 正文

4 示例代码(替换成您的AccessKeyId、AccessKeySecret、appKey)

已解决

展开
收起
游客luaei4ohyotfo 2018-01-11 04:25:56 1351 0
1 条回答
写回答
取消 提交回答
  • 采纳回答

    详细解答可以参考官方帮助文档

    1. IClientProfile clientProfile = DefaultProfile.GetProfile("cn-hangzhou", "<your access key id>", "<your access key secret>");
    2. DefaultAcsClient client = new DefaultAcsClient(clientProfile);
    3. PushRequest request = new PushRequest();
    4. // 推送目标
    5. request.AppKey = <your appKey>;
    6. //推送目标: device:推送给设备; account:推送给指定帐号,tag:推送给自定义标签; all: 推送给全部
    7. request.Target = "all";
    8. //根据Target来设定,如Target=device, 则对应的值为 设备id1,设备id2. 多个值使用逗号分隔.(帐号与设备有一次最多100个的限制)
    9. request.TargetValue = "all";
    10. // 设备类型deviceType 取值范围为:0~3. iOS设备: 0; Android设备: 1; 全部: 3, 这是默认值.
    11. request.DeviceType = 1;
    12. // 推送配置
    13. // 0:表示消息(默认为0), 1:表示通知
    14. request.Type = 0;
    15. // 消息的标题
    16. request.Title = ".net Title";
    17. // 消息的内容
    18. request.Body = ".net body";
    19. // 通知的摘要
    20. request.Summary = ".net Summary";
    21. // 推送配置: iOS
    22. // iOS应用图标右上角角标
    23. request.IOSBadge = "1";
    24. // iOS通知声音
    25. request.IOSMusic = "default";
    26. //iOS通知标题(iOS 10+)
    27. request.IOSTitle = "iOS 10 Title";
    28. //iOS通知副标题(iOS 10+)
    29. request.IOSSubtitle = "iOS 10 Subtitle";
    30. //使能通知扩展处理(iOS 10+)
    31. request.IOSMutableContent = true;
    32. //设定通知Category
    33. request.IOSNotificationCategory = "test_category";
    34. //自定义的kv结构,开发者扩展用 针对iOS设备, iOS 10+ 可以用attachment关键字指定富媒体推送通知的资源Url
    35. request.IOSExtParameters = "{\"attachment\":\"https://xxxx.xxx/notification_pic.png\",\"key1\":\"value1\"}";
    36. request.ApnsEnv = "DEV";
    37. // 推送时设备不在线(既与移动推送的服务端的长连接通道不通),则这条推送会做为通知,通过苹果的APNs通道送达一次(发送通知时,Summary为通知的内容,Message不起作用)。注意:离线消息转通知仅适用于生产环境
    38. // request.Remind = false;
    39. // 推送配置: Android
    40. // 点击通知后动作,1:打开应用 2: 打开应用Activity 3:打开 url 4 :无跳转逻辑
    41. request.AndroidOpenType = "3";
    42. // Android收到推送后打开对应的url,仅仅当androidOpenType=3有效
    43. request.AndroidOpenUrl = "http://www.baidu.com";
    44. //设置该参数后启动小米托管弹窗功能,此处指定通知点击后跳转的Activity(托管弹窗的前提条件:1. 继承小米辅助通道;2. storeOffline设为true)
    45. //request.XiaomiActivity = "_Your_XiaoMi_Activity_";
    46. // 设定android类型设备通知的扩展属性
    47. request.AndroidExtParameters = "{\"k1\":\"android\",\"k2\":\"v2\"}";
    48. // 推送控制
    49. //String pushTime = DateTime.UtcNow.AddSeconds(3).ToString("yyyy-MM-ddTHH\\:mm\\:ssZ");
    50. //request.PushTime = pushTime;//延迟3秒发送
    51. //String expireTime = DateTime.UtcNow.AddDays(2).ToString("yyyy-MM-ddTHH\\:mm\\:ssZ");
    52. //request.ExpireTime = expireTime;//设置过期时间为2天
    53. //request.StoreOffline = false;
    54. try
    55. {
    56. PushResponse response = client.GetAcsResponse(request);
    57. Console.WriteLine("RequestId:" + response.RequestId);
    58. Console.WriteLine("ResponseId:"+response.ResponseId);
    59. Console.ReadLine();
    60. } catch (ServerException e)
    61. {
    62. Console.WriteLine(e.ErrorCode);
    63. Console.WriteLine(e.ErrorMessage);
    64. Console.ReadLine();
    65. } catch (ClientException e)
    66. {
    67. Console.WriteLine(e.ErrorCode);
    68. Console.WriteLine(e.ErrorMessage);
    69. Console.ReadLine();
    70. }
    2018-01-14 10:47:00
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载