八十岁生日,微信邀请,html5.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
八十岁生日,微信邀请,html5

八十岁生日,微信邀请,html5 篇一:微信开发HTML5轻游戏中的几个坑 成都嗡嗡文化传媒有限公司 微信开发HTML5轻游戏中的几个坑 摘要:基于微信开发的HTML5游戏,开发者需要克服哪些坑呢?又该如何推广呢?本文转自深海的博客,他分享了具体开发实现过程中,基于微信的Html5 WebApp需要注意哪些细节以及如何用代码实现。 现如今微信为各种移动Web的小应用提供了肥沃的土壤,于是乎形形色色的应用孕育而出。人人都可以做开发,但不是每个人都能开发出好的应用,在开发过程中开发者会应注意哪些“坑”呢? 不同于传统的手游商店下载模式,HTML5 手机网页游戏是可以直接运行在微信内置的浏览器里。 这段时间团队一直在做微信端的一些产品设计和开发,当然也包含一定的运营工作。做过的东西也不少,微名片、微抢票、微活动、微招聘等一些小case。 今天想说的是我们在微信中被玩的最活跃的轻游戏--微刮奖,这东西可以被用来刮书、刮门票、刮套餐,还有客户要用来刮电话费。 先上图,感知一下具体样子: 成都嗡嗡文化传媒有限公司 而我想分享的是我们在具体开发实现过程中,基于微信的Html5 WebApp需要去克服的一些坑:这个小游戏的基本规则是:限定用户每天刮书次数是2次 (自由刮一次和分享后再刮一次),每天都可刮奖为此,我们希望实现的思路首先是限定在只能使用微信中玩,实现代码如下: [js] view plaincopy 1. 2. 3. 4. 5. 6. 7. if (!HttpContext.Current.Request.Browser.IsMobileDevice){ var result = new RedirectResult(quot;urlquot;, true); filterContext.Result = result; return;}if (string.IsNullOrEmpty(HttpContext.Current.Request.UserAgent)) { var result = new RedirectResult(quot;urlquot;, true); filterContext.Result = result; return; } 8. 9. 10. 11. 12. 13. 成都嗡嗡文化传媒有限公司 14. 15. 16. 17. 18. 19. if (HttpContext.Current.Request.UserAgent.IndexOf(quot;MicroMessenge{ var result = new RedirectResult(quot;urlquot;, true); filterContext.Result = result; return;}rquot;) == -1) 这招通过UserAgent的判断思路貌似网上大家也用的比较多,不用却依然存在挺多坑: 1. 初级问题:iOS和主流Android机器没问题,但碰到Windows Phone,就直接在微信中跳出去无法玩。原因是微信中默认的UserAgent是MicroMessenger,在这些机器的微信版本中不存在,所以为了解决Windows Phone,我们加入了如下代码: [js] view plaincopy 1. 2. 3. 4. 5. 6. var useragent = HttpContext.Current.Request.UserAgent.ToLower(); if (useragent.IndexOf(quot;Windows Phonequot;.ToLower()) != -1) {base.OnActionExecuting(filterContext);return; } 2. 高级问题:有高人直接使用一些插件工具,伪造MicroMessenger的UserAgent,这样理论上就可以在任何可以打开网页的浏览器中玩了,解决此问题,我们利用的是微信的sdk中接口:仅当用户在微信中使用时执行控件初始化刮奖操作,否则其他终端浏览就会一直处于loading状态。 [js] view plaincopy 1. 2. 3. dataForWeixin.callback = function () { //一些初始化的操作 } 关于微信的接口大家直接阅读原文,这边不直接贴代码出来了,不然贴不下。 上面的思路做了很多事,但对我们的业务规则来说还有一个很致命的bug没有解决。 成都嗡嗡文化传媒有限公司 这个bug就是只要用户手动清除微信中的cookie和缓存信息,然后重新进入活动,就能无限次刮奖,理论上是百分百中奖了。

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档