思路:

  1、公司有项目需要做android和ios手机端推送消息的功能;

  2、没有接触过这方面的知识,一头雾水,开始在网上一顿搜,网上倒是有不少解决方案,首先搜的是android的解决方案,因为ios我们自己搭的有服务了(Java),见其中一篇文章 《[移动] Android推送方案分析(MQTT/XMPP/GCM)》,使用MQTT倒是不错的选择,但是服务端是PHP的,我只会C#...由于时间比较急,只好作罢,看来以后得多学点语言了;

  3、然后就把精力集中到C#的服务端,倒是找到一个开源的项目PushSharp,项目也下载下来了,就开始学习怎么用,网上关于这个项目的资料很少,没办法只能硬着头皮看他们的官方文档(英文的,真心D疼啊),还有少的可怜的相关资料,后来了解到这个项目推送Android的是采用google的GCM技术,这个需要经过google的服务器才能推送,在天朝你懂得,不过这个项目也有ios、kindle等一些其他终端的推送,感觉挺不错的,以后有时间得研究一下;

  4、实在没办法就问同事之前的项目是怎样推送的,同事说之前的项目都是使用第三方提供的服务。其实我不太愿意使用第三方的,很多东西都有限制,不过现在也没辙了,只怨技术不精了。在网上找了几个推荐的推送服务:百度推送、个推、极光推送,比较来比较去,最终还是选择了百度推送,首先感觉百度在网上提供的文档内容还是相对丰富的,最重要的是有c#服务端SDK,在这里特别感谢 郭振-子易 提供的代码https://github.com/xiariqingquan/BaiduPushAspxServer,我就是在这个上面修改完成项目所需;

  5、废话不多说,进入正题。

 实现代码:

  1、因为项目需要,在郭振-子易提供的代码基础上,改版成WebService服务的形式,对外提供接口;

  2、除了推送消息的原有功能外,又添加了设置标签、删除标签两个功能;

  3、使用log4net进行错误日志的记录;

  4、目前已完成android的测试,可以正常推送消息,ios因在百度推送上传证书验证失败,没有测试,代码放在github上 https://github.com/hdkn235/BaiduPush,就不在这里展示了,有盗用版权嫌疑(版权归郭振-子易 所有)。

注意事项:

  1、要使用本项目,首先需要注册百度的开发者服务(需要手机验证,而且手机只能验证一次,我想申请个公司用的都不行,擦),然后创建一个应用,获得API key 和Secret key后,修改web.config对应的值就可以使用了。

  2、测试时手机端使用的是百度云推送生成的一个Demo,这个可以在推送设置中添加应用名即可获得测试的示例。

总结:

  经过这几天的折腾,感觉百度的东西不是很难用,免费的做成这样已经很不错了,有点遗憾的是ios的证书认证太不靠谱,我同事按照百度的教程一步步的制作证书,死活是验证不过,我同事之前也说过用百度的推送从来没成功过。。。,网上这方面的资料也很少,不知道是不是很少人用。以后有时间自己搭建一个服务心里才踏实点。

  

百度云推送-服务端 C# SDK的更多相关文章

  1. android开发(25) - 推送的实现,使用百度云推送

    什么叫推送? 中文名称:推送 英文名称:push 定义:描述因特网内容提供者和因特网用户之间工作方式的术语.“推送”指因特网内容提供者定期向预订用户“提供”数据. 项目中有可能会用到推送.如果自己写一 ...

  2. Android推送服务——百度云推送

    一.推送服务简介 消息推送,顾名思义,是由一方主动发起,而另一方与发起方以某一种方式建立连接并接收消息.在Android开发中,这里的发起方我们把它叫做推送服务器(Push Server),接收方叫做 ...

  3. 使用【百度云推送】第三方SDK实现推送功能具体解释

    之前介绍过怎样使用shareSDK实现新浪微博分享功能,今天介绍怎样使用百度云推送SDK实现Android手机后台推送功能. 执行效果例如以下 第一步,假设使用百度的SDK,当然要先成为百度的开发人员 ...

  4. 改写百度云推送SDK,PHP PEAR 包:Services_Baidu_Push

    iPhone使用apple push很方便,而Android很多厂商删除了google push,而且google在大陆连不上,所以要用别的办法. Android常见的推送服务商有:极光推送(http ...

  5. Java端百度云推送消息Demo

    因为在做Java服务器有用到推送消息机制,于是到网上找了一下,就自己试着敲了一个demo.这个demo主要是简单的一个对app消息推送. jar:百度云消息推送Java端的jar. package x ...

  6. App之百度云推送

    集成SDK 下载最新的Android SDK压缩包并解压,在新建工程或已有工程中增加百度云推送功能. 我下载的是 ,里面有一个同名的文件夹,文件夹中有 导入云推送jar包和so文件: 将解压后的lib ...

  7. 百度云推送的Java实现

    推送现在基本APP都有,项目中要通知和消息,所以综合考虑用了百度云推送 Java实现步骤: 1. 下载 http://push.baidu.com/sdk/push_server_sdk_for_ja ...

  8. Android推送 百度云推送 入门篇

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/27231237 现在app基本都有推送的功能,于是看了下百度云的推送,官方文档和D ...

  9. 消息推送之百度云推送Android集成与使用方法

    这两天由于项目需要,研究了一下百度云推送,本来这事没什么多大工作量的,但注册百度开发者账户创建应用令我蛋疼菊紧了好一阵,这些东西做了对技术没啥提升,不做又不行,必经之路.好在我耗费了N多个毫毫秒秒后稀 ...

随机推荐

  1. node.js小结 2

    下载node安装npm什么的就不说了 入门总结 http://www.cnblogs.com/Darren_code/archive/2011/10/31/nodejs.html 进入node_HOM ...

  2. fir.im Weekly - 如何打造真正的工程师文化

    好的工程师,无法忍受低效且无趣的工作.优秀的技术团队应该自上而下的地推进技术平台化建设.DevOps.自动化构建.测试和部署流程,积极采用合适的第三方工具或创造工具,进行周期性的前沿技术分享等等. 先 ...

  3. gulp学习笔记4

    gulp系列学习笔记: 1.gulp学习笔记1 2.gulp学习笔记2 3.gulp学习笔记3 4.gulp学习笔记4 之前的任务都是单个的,比较简单.接下去我们开始引用多个插件,一次性把任务搞定,省 ...

  4. 深入理解PHP内核(二)概览-PHP生命周期与Zend引擎

    本文参考自<深入理解PHP内核>,地址:https://github.com/reeze/tipi 本文链接:http://www.orlion.ml/232/ 1.SAPI接口 SAPI ...

  5. js中关于value的一个小知识点(value既是属性也是变量)

    今天在学习input的value值时,发现这么一个小知识点,以前理解不太透彻. [1]以下这种情况是常见情况,会弹出“测试内容” <input type="button" v ...

  6. javascript运算符——逻辑运算符

    × 目录 [1]逻辑非 [2]逻辑与 [3]逻辑或 前面的话 逻辑运算符对操作数进行布尔运算,经常和关系运算符一样配合使用.逻辑运算符将多个关系表达式组合起来组成一个更复杂的表达式.逻辑运算符分为逻辑 ...

  7. IE浏览器下常见的CSS兼容问题

    目录 [1]宽高bug [2]边框bug [3]盒模型bug[4]列表项bug [5]浮动bug [6]定位bug [7]表单bug 宽高bug [1]IE6-浏览器下子元素能撑开父级设置好的宽高 & ...

  8. RMAN备份注意事项

    1.建议最好打开控制文件的自动备份. 2.如果没有打开控制文件的自动备份,一定注意备份的顺序,无论之前有无备份控制文件,备份全库以及归档之后,在最后一定要再次备份控制文件. 3.使用%U,或者%d%T ...

  9. Winform(C#.NET)自动更新组件的使用及部分功能实现

    声明:核心功能的实现是由园子里圣殿骑士大哥写的,本人是基于他核心代码,按照自己需求进行修改的.   而AutoUpdaterService.xml文件生成工具是基于评论#215楼 ptangbao的代 ...

  10. [python 译] 基于面向对象的分析和设计

    [python 译] 基于面向对象的分析和设计 // */ // ]]>   [python 译] 基于面向对象的分析和设计 Table of Contents 1 原文地址 2 引言 2.1 ...