ios极光推送demo使用流程怎么走,求ios极光推送demo的使用方法?

你的位置: &&
.net平台借助第三方推送服务在推送Android消息(极光推送)
.net平台借助第三方推送服务在推送Android消息(极光推送)
最近做的.net项目(Windows Service)需要向Android手机发送推送消息,真是有点困难,没有搞过就不停的搜文档,最后看到了一个开源项目PushSharp,可以在.net平台推送IOS,Android,Windows Phone等设备消息,大喜,然后先做了IOS的,成功了,但是做Android的时候遇到了问题,一直推送不成功,程序执行了,但是推送一直出不来,后来费劲的在网上搜,没有找到,最后放弃使用这种推送Android,另寻出路,随后找到了一种C2DM云端推送功能,但是问题又出现了,(1)C2DM内置于Android的2.2系统上,无法兼容老的1.6到2.1系统;(2)C2DM需要依赖于Google官方提供的C2DM服务器,由于国内的网络环境,这个服务经常不可用,如果想要很好的使用,我们的App Server必须也在国外,这个恐怕不是每个开发者都能够实现的;(3)不像在iPhone中,他们把硬件系统集成在一块了。所以对于我们开发者来说,如果要在我们的应用程序中使用C2DM的推送功能,因为对于不同的这种硬件厂商平台,比如摩托罗拉、华为、中兴做一个手机,他们可能会把Google的这种服务去掉,尤其像在国内就很多这种,把Google这种原生的服务去掉。买了一些像什么山寨机或者是华为这种国产机,可能Google的服务就没有了。而像在国外出的那些可能会内置。没办法了,最后转到了第三方推送服务平台,极光推送,下面将介绍怎么使用极光推送。1,首先需要将你的app在极光官网上进行注册,获取一个ApiKey,一个APIMasterSecret(密码),将这两个值保存在配置文件(app/web.config)中,具体手机开发端需要做什么操作我们.net平台不管&appSettings& & &&add key=&ApiKey& value=&**********&/& & &&add key=&APIMasterSecret& value=&*******&/& &/appSettings&2,读取配置中的值private readonly string ApiKey = &&;private readonly string APIMasterSecret = &&;ApiKey = ConfigurationManager.AppSettings[&ApiKey&].ToString();//Android ApiKeyAPIMasterSecret = ConfigurationManager.AppSettings[&APIMasterSecret&].ToString();//Android密码3,开始推送方法/// &summary&
/// Android极光推送
/// &/summary&
/// &param name="RegistrationID"&设备号&/param&
public void PushAndroid(string RegistrationID)
Random ran = new Random();
int sendno = ran.Next(1, );//随机生成的一个编号
string app_key = ApiK
string masterSecret = APIMasterS
int receiver_type = 5;//接收者类型。2、指定的 tag。3、指定的 alias。4、广播:对 app_key 下的所有用户推送消息。5、根据 RegistrationID 进行推送。当前只是 Android SDK r1.6.0 版本支持
string receiver_value = RegistrationID;
int msg_type = 1;//1、通知2、自定义消息(只有 Android 支持)
string msg_content = "{"n_builder_id":"00","n_title":"" + Title + "","n_content":"" + Content + ""}";//消息内容
string platform = "android";//目标用户终端手机的平台类型,如: android, ios 多个请使用逗号分隔。
string verification_code = GetMD5Str(sendno.ToString(), receiver_type.ToString(), receiver_value,masterSecret);//验证串,用于校验发送的合法性。MD5
string postData = "sendno=" +
postData += ("&app_key=" + app_key);
postData += ("&masterSecret=" + masterSecret);
postData += ("&receiver_type=" + receiver_type);
postData += ("&receiver_value=" + receiver_value);
postData += ("&msg_type=" + msg_type);
postData += ("&msg_content=" + msg_content);
postData += ("&platform=" + platform);
postData += ("&verification_code=" + verification_code);
//byte[] data = encoding.GetBytes(postData);
byte[] data = Encoding.UTF8.GetBytes(postData);
string resCode = GetPostRequest(data);//调用极光的接口获取返回值
JpushMsg msg = Newtonsoft.Json.JsonConvert.DeserializeObject&JpushMsg&(resCode);//定义一个JpushMsg类,包含返回值信息,将返回的json格式字符串转成JpushMsg对象
catch (Exception ex)
}4,MD5加密验证字符串,用于调用接口的时候,极光将做验证使用/// &summary&
/// MD5字符串
/// &/summary&
/// &param name="paras"&参数数组&/param&
/// &returns&MD5字符串&/returns&
public string GetMD5Str(params string [] paras)
string str = "";
for(int i=0;i&paras.Li++)
str += paras[i];
byte[] buffer = MD5.Create().ComputeHash(Encoding.UTF8.GetBytes(str));
string md5Str = string.E
for (int i = 0; i & buffer.L i++)
md5Str = md5Str + buffer[i].ToString("X2");
return md5S
}5,http Post方式调用极光的推送服务/// &summary&
/// Post方式请求获取返回值
/// &/summary&
/// &param name="data"&&/param&
/// &returns&&/returns&
public string GetPostRequest(byte[] data)
HttpWebRequest myRequest = (HttpWebRequest)WebRequest.Create(":8800/v2/push");
myRequest.Method = "POST";//极光http请求方式为post
myRequest.ContentType = "application/x-www-form-urlencoded";//按照极光的要求
myRequest.ContentLength = data.L
Stream newStream = myRequest.GetRequestStream();
// Send the data.
newStream.Write(data, 0, data.Length);
newStream.Close();
// Get response
var response = (HttpWebResponse)myRequest.GetResponse();
using (var reader = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("UTF-8")))
string result = reader.ReadToEnd();
reader.Close();
response.Close();
}6,定义一个类,接收返回值public class JpushMsg
public string Sendno
set { sendno = }
private string msg_//信息编号
public string Msg_id
get { return msg_ }
set { msg_id = }
pr//返回码
public string Errcode
set { errcode = }
p//错误信息
public string Errmsg
set { errmsg = }
}好了,OK了,有什么不对的地方希望大家指出,谢谢!
&&作者:shixudong &&
最新热门tag极光推送发布富媒体推送功能:超强原创性 - 推酷
极光推送发布富媒体推送功能:超强原创性
极光推送(JPUSH)今天宣布开放具有更高性能和效率的富媒体推送功能。该功能的推出不仅便于开发者推送样式和设计更为丰富美观的页面,比如优惠券、图片新闻、活动说明、推荐文章等;同时对于此前基于 JPush 做 IM 聊天的开发者,也可以使用该功能来推送语音和图片。
JPush 此次体现出极强的原创性,其富媒体推送服务相对于其他推送服务有着很大区别。始终坚持以开发者需求为导向,从开发者的角度去思考最终用户体验,从而提升推送的效果和价值。
设计思路上,富媒体推送一般的做法是,开发者编辑一个自己设计的Web页面,推送到达客户端后点击通知直接打开该页面展示出来。测试时一般一切正常。但是,当开发者将富媒体推送给各个角落的用户时,问题就出现了:
1、很多用户根本打不开这个页面(中国大部分用户还在使用 2G网络),或者很慢;2、勉强打开这个页面了,里边链接的某个资源因为请求量太大展示不出来,页面残缺不全。事实上,出现以上情况的比例还相当大,其造成的结果就是,开发者不仅浪费了这次推送机会,还让用户对其&App的评价降低。相比之下,JPush推出的富媒体推送在基本流程上看起来并没有太大差别,但在云端却有一套优化机制能最大化避免上述问题,从而提升了用户的体验。
透过上述JPUSH富媒体推送功能的原创性不难看出,对客户而言的简单背后却是系统诸多细节的设计,而且需要消耗大量的服务器端资源。JPush何以做到这些?极光推送产品总监方家文表示:“一方面是因为我们JPush团队专注于推送领域,致力于为开发者提供最优质的推送服务;另一方面则是JPush团队拥有丰富的海量用户Apps开发及维护经验,对客户的关注和需求有着深刻的理解。”
已发表评论数()
&&登&&&陆&&
已收藏到推刊!
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见【大神进】极光推送SDK的程序怎么用啊?求解,_联想a298t吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:5,230贴子:
【大神进】极光推送SDK的程序怎么用啊?求解,收藏
好高端,多谢LZ提醒,我刚看了下,好像目前这种推送还处在开发阶段,只能自己修改应用之后,在网站给app推送消息。。。必须跟app服务器对接之后才能实现自动推送吧。。。我也是第一次听说,不过这个技术很赞,如果各个软件都有了这个功能就像IOS的push一样,不用愁后台在线和费流量了——当你觉得天要塌下来时,有可能是你站歪了~~
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或百度知道搜索_ios极光推送api

我要回帖

更多关于 极光推送官网 的文章

 

随机推荐