zoukankan      html  css  js  c++  java
  • C#利用极光进行APP推送

    看了他的sdk,然后自己写的几个方法。需要引入极光的SDK中的DLL 

       private static JPushClient client = new JPushClient("自己的key", "自己的MasterSecret");
    
            public static void Main(string[] args)
            {
               
                //ExecutePustByTags(new List<string>{"北京","上海"}, "aa", "abb");
                ExecutePushByUserId(new List<string> { "120c83f760079951806", "上海" }, "我是标题",$"当前时间:{DateTime.Now.ToString()}");
    
                Console.ReadLine();
            }
    
            /// <summary>
            /// 根据Tags推送(根据角色推送)
            /// </summary>
            /// <param name="tags"></param>
            /// <param name="title"></param>
            /// <param name="countent"></param>
            public static void ExecutePustByTags(List<string> tags, string title, string content)
            {
                //audience : { "tag" : [ "tag1", "tag2" ]} 
                var pushPayload = new PushPayload()
                {
                    Platform = new List<string> { "android" },
                    Audience = "{\"tag\" :" + Newtonsoft.Json.JsonConvert.SerializeObject(tags) + "}",
                    Notification = new Notification
                    {
                        Android = new Android
                        {
                            Alert = content,
                            Title = title
                        },
                    },
                    Options = new Options {
                        TimeToLive = 864000//单位秒,最大值10天
                    }
                    
                };
                var response = client.SendPush(pushPayload);
                Console.WriteLine(response.Content);
            }
            /// <summary>
            /// 推送所有人
            /// </summary>
            /// <param name="title"></param>
            /// <param name="content"></param>
            public static void ExecutePushByALL(string title, string content)
            {
                var pushPayload = new PushPayload()
                {
                    Platform = new List<string> { "android" },
                    Audience = "all",
                    Notification = new Notification
                    {
                        Android = new Android
                        {
                            Alert = content,
                            Title = title
                        },
                    },
                     Options = new Options
                     {
                         TimeToLive = 864000//单位秒,最大值10天
                     }
                };
                var response = client.SendPush(pushPayload);
                Console.WriteLine(response.Content);
            }
            /// <summary>
            /// 推送到个人,每次推送最多1000人
            /// </summary>
            /// <param name="userId"></param>
            /// <param name="title"></param>
            /// <param name="content"></param>
            public static void ExecutePushByUserId(List<string> registration_id, string title, string content)
            {
                //audience : { "registration_id" : [ "111", "22" ]}  设备标识。一次推送最多 1000 个。
                var pushPayload = new PushPayload()
                {
                    Platform = new List<string> { "android" },
                    Audience = "{\"registration_id\" :" + Newtonsoft.Json.JsonConvert.SerializeObject(registration_id) + "}",
                    Notification = new Notification
                    {
                        Android = new Android
                        {
                            Alert = content,
                            Title = title
                        },
                    },
                     Options = new Options
                     {
                         TimeToLive = 864000//单位秒,最大值10天
                     }
                };
                var response = client.SendPush(pushPayload);
                Console.WriteLine(response.Content);
            }
  • 相关阅读:
    Java笔记(十六)……内部类
    pmm系列~基础函数
    redis基础篇~性能问题
    redis基础篇~big-key
    mysql基础~经典题目二
    (转)STORM启动与部署TOPOLOGY
    (转)项目经理怎么当
    专注力的一点体会
    163源报错Hash Sum mismatch 解决方法
    mapreduce.framework.name
  • 原文地址:https://www.cnblogs.com/HandLoong/p/8607909.html
Copyright © 2011-2022 走看看