友盟推送 .NET (C#) 服务端 SDK rest api 调用库
该版本是基于友盟推送2.3版本封装的,网上查询了下发现没有.NET版本的调用库,官方也没有封装.NET的版本,只有python、java、php版本,您这又让.NET情何以堪啊,故分享一个简单易调用的版本分享给大家,本次封装的代码相比我封装的【信鸽推送】 简单很多,而且自由度很高,参数基本都是直接转json的实体,,需要根据友盟REST API http://dev.umeng.com/push/android/api-doc 去具体赋值,所以拿到源码的同学也很容易修改josn对象实体,调用对象只有2个方法
//同步提交
public ReturnJsonClass SendMessage(PostUMengJson paramsJsonObj)
//异步提交
public void AsynSendMessage(PostUMengJson paramsJsonObj, Action<ReturnJsonClass> callback)
怎么样够简单吧!!
调用推送之前首先得实例化主体推送对象
UMengMessagePush umPush = new UMengMessagePush("你的appkey", "你的appMasterSecret");
这样您可以把必须的2个配置放到web.config里面,或者其他配置,赋值给对象后,后续所有的推送都无需添加此2项参数
/// <summary>
/// 推送给所有用户
/// </summary>
[TestMethod]
public void TestPushByAllUser()
{
PostUMengJson postJson = new PostUMengJson();
postJson.type = "broadcast";
postJson.payload = new Payload();
postJson.payload.display_type = "notification";
postJson.payload.body = new ContentBody();
postJson.payload.body.ticker = "评论提醒";
postJson.payload.body.title = "您的评论有回复";
postJson.payload.body.text = "您的评论有回复咯。。。。。";
postJson.payload.body.after_open = "go_custom";
postJson.payload.body.custom = "comment-notify"; postJson.description = "评论提醒-UID:" + 123; postJson.thirdparty_id = "COMMENT"; ReturnJsonClass resu = umPush.SendMessage(postJson); //umPush.SendMessage(postJson, callBack); Assert.AreEqual(resu.ret, "SUCCESS", true);
}
/// <summary>
/// 根据自定义用户ID推送
/// </summary>
[TestMethod]
public void TestPushByAlias()
{
PostUMengJson postJson = new PostUMengJson();
postJson.type = "customizedcast";
postJson.alias_type = "USER_ID";
postJson.alias = "";
postJson.payload = new Payload();
postJson.payload.display_type = "notification";
postJson.payload.body = new ContentBody();
postJson.payload.body.ticker = "评论提醒Alias";
postJson.payload.body.title = "您的评论有回复";
postJson.payload.body.text = "Alias您的评论有回复咯。。。。。";
postJson.payload.body.after_open = "go_custom";
postJson.payload.body.custom = "comment-notify"; postJson.thirdparty_id = "COMMENT"; postJson.description = "评论提醒-UID:" + ; //ReturnJsonClass resu = umPush.SendMessage(postJson); umPush.AsynSendMessage(postJson, callBack);
} private void callBack(ReturnJsonClass result)
{
ReturnJsonClass a1 = result;
}
https://github.com/jasnature/NSTool.UMengPush 源码对你有帮助的话,请给星星哟。
友盟推送 .NET (C#) 服务端 SDK rest api 调用库的更多相关文章
- 信鸽推送 .NET (C#) 服务端 SDK rest api 调用库(v1.2)
信鸽推送 .NET 服务端 SDK rest api 调用库-介绍 该版本是基于信鸽推送v2版本的时候封装的,先拿出来与大家分享,封装还还凑合,不依赖其他http调用件,唯一依赖json序列化dll ...
- 极光推送和友盟推送,ios端和安卓端的后端调试设置
我是最后端的,这两天搞了一个app项目,前端安卓使用友盟很方便,调试比较顺利,然后ios就遇到各种问题了,证书.发送成功推送不成功,测试时用的TestMode(),ios上架之后就必须用product ...
- 友盟推送里面的Alias怎么用?可以理解成账号吗?
友盟推送里面的Alias怎么用?可以理解成账号吗? 我们的App有自己的账号体系的,想在每次用户登陆的时候,给用户发一个欢迎消息. 看了一下友盟推送,里面有一个概念叫做Alias(别名),但是官方文档 ...
- java 集成友盟推送
原文:https://blog.csdn.net/Athena072213/article/details/83414743 最近应公司业务需求需要完善友盟推送,认真看了官方文档后其实很简单,只需要细 ...
- 使用极光/友盟推送,APP进程杀死后为什么收不到推送(转)
为什么会存在这样的 问题,刚开始的时候我也搞不清楚,之前用极光的时候杀死程序后也会收到推送,但最近重新再去集成时就完全不好使了,这我就纳闷了,虽然Google在高版本上的android上面不建议线程守 ...
- iOS集成友盟推送
之前有写过利用Python自己写一个推送服务器, 今天说下如果集成友盟的推送服务 在这之前我们需要做一些准备动作 #1. 注册一个App ID #2. Enable Push Notification ...
- 友盟推送SDK集成测试、常见问题以及注意事项总结
最近为了解决公司APP在一些手机出现的推送问题重新集成了最新版的友盟推送SDK,花费了几天时间终于把集成和测试工作完成,最终在华为,Nexus,三星,小米,HTC,魅族等10多部手机上测试并达到了预想 ...
- iOS app 集成友盟推送问题
之前做app推送主要是集成友盟SDK,在程序获取deviceToken时,老是提示如下错误: Error Domain=NSCocoaErrorDomain Code=3000 "未找到应用 ...
- AppDelegate减负之常用三方封装 - 友盟推送篇
之前分享过集成友盟推送的方法, 需要的朋友可以查看一下链接: http://www.cnblogs.com/zhouxihi/p/6533058.html 一般开发中我们比较多使用的三方有友盟推送, ...
随机推荐
- 用R做逻辑回归之汽车贷款违约模型
数据说明 本数据是一份汽车贷款违约数据 application_id 申请者ID account_number 账户号 bad_ind 是否违约 vehicle_year ...
- SSH正反向隧道
正向隧道 拓扑如下: 说明: CLIENT不能直接访问WEB服务器,AGENT可访问WEB服务器: 在AGENT上通过创建ssh正向隧道,使CLIENT可以通过AGENT间接访问WEB服务器: AGE ...
- Android之下拉刷新的ListView
不废话,代码里面注释很详细,直接上代码: 自定义的RefreshableListView代码: public class RefreshableListView extends ListView im ...
- JavaScript 智能社 拖拽
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title> ...
- JS 函数的柯里化与反柯里化
===================================== 函数的柯里化与反柯里化 ===================================== [这是一篇比较久之前的总 ...
- html5第二天
哎..以为自己能每天坚持写呢.前面8天一直在D3的东西..都没有时间研究html5.草草的翻了一下HTML5和CSS3权威指南.对整个页面设计有了一个大概的把握,但是让自己做肯定还会有写问题.暂时ht ...
- 动态令牌-(OTP,HOTP,TOTP)-基本原理
名词解释和基本介绍 OTP 是 One-Time Password的简写,表示一次性密码. HOTP 是HMAC-based One-Time Password的简写,表示基于HMAC算法加密的一次性 ...
- 深入理解android:id以及@+id/name和@id/name的区别联系
今天为了好好研究了下@+id/name和@id/name的区别以及联系,又翻了翻文档/guide/topics/resources/layout-resource.html中关于 android:id ...
- Delphi XE7中各种字符串与字符类型的内存结构
1. ShortString 类型 定义:type ShortString = string[255]; 内存结构与大小:ShortString 是每个字符为单字节的字符串.ShortString 的 ...
- Orchard 模块开发学习笔记 (1)
创建模块 首先,打开Bin目录下的Orchard.exe 等到出现orchard>后, 看看命令列表中是否存在 codegen module 如果不存在,则需要先执行:feature enabl ...