个人介绍

信息

姓名 : 魏旺超

简介

原本以为自己一直想成为一个游戏开发工程师,但是难逃过需求的束缚,在公司游戏快要发布的时候,没人来来弄sdk, 然后主程说你去试试吧,你不是会点android吗,我当时想不都是学东西吗,怕啥,然后就开始了我的sdk之旅,其实什么东西都是开头很难,那段时间我几乎把百度里面sdk的东西都翻了遍,各种教程,各种源码都来尝试,花了一周时间,搞定android和Unity的通信,而且还接入了第一家sdk,我印象很深,oppo,从开发文档开始,我很认真的阅读,开始是跑他们的demo,但是demo跑通自己接入进去一样看不到,一直重启,我就奇怪了什么情况啊,后来想想重启不就是生命周期出现了问题了吗,里面看了oppo的什么周期是什么情况,看了看demo然后再对照着该,登录界面出来了,激动了好久,但是登录出来了,不算什么,还要登陆验证,我按照文档的要求,和服务端的同学,搭档起来了,我给它发相应的字段就是token,然后他校验了token,并且签名,然后成功就给我返回success,失败failed,就这样真正的登录就完成了,接下来就是支付,我一开始就和服务器端约定,该传什么必须的字段,然后传的顺序,格式,约定之后,我将这写字段发给他,然后去调oppo的支付接口,然后吊起来之后,我充值了第一笔,然后在回调成功的接口里面给服务器发送成功的标志,当我们服务器看到数据库里面存在我刚刚充值的信息时,意味着第一个sdk完成了,接下的时间总共接了34家sdk,耗费了我很大的精力,在弄sdk的时候,自己编写了一个框架,把所有的sdk都放在一个工程里面通过Editor来打包,这样很大程度上减轻了我的负担 和开发效率.
接sdk告别一个段落之后,我以为要开发游戏了,但是主程来了一句,弄了这么多sdk,是不是应该自己写一个了,我说不现实吧,sdk本来就是一个很复杂的过程,这样弄下去很难的,他说你试着去试试,套索一下,没办法,人在屋檐下,就这样开始了我写sdk的路程,路途是艰辛的,之前接人家sdk只是调用接口而已,一会儿的功夫就能看到界面了,自己写的sdk要能用就必须参考一下各家sdk的风格,然后我确定目标之后,解读sdk源码,设计sdk的模式,接口回调,完成之后,就是着手初始化了,其实没写之前,觉得初始化很简单,自己摸索了才发现,初始化真的很麻烦,什么都要考虑,而且和服务器交互的东西很多,关于sdk的所有东西都要在初始化的完成,感觉写着写着还有很多说不完的话,就一个字难,但是时间可以检验一切,花了半年的时间,第一个完成的sdk版本出来了,而且还应用到线了,mygod.


专业技能

• 熟练掌握php、Java、C#,OC了解后台开发(JavaWeb);
• 有良好的Java语言基础,良好的编程风格,熟悉面向对象编程思想,具有良好的代码规范;
• 熟悉C#、java的网络编程(Socket,TCP/IP,UDP);
• 能够有效避免APP运行过程中遇到的内存泄漏和内存溢出问题。
• 熟练掌握线程之间通过Handler传递消息的机制原理,Message,Looper,MessageQueue,Handler之间的关系,能够利用接口回调,广播,观察者模式等对数据的改变做出即时处理。
• 掌握APP应用开发框架结构的基本搭建,抽取activity,fragment,adapter,holder等公用代码,能够将常见的单例模式,代理模式,抽象工厂模式,观察者模式等设计模式灵活应用在APP开发中。
• 熟悉Android的数据存储方式(File,SharedPrefrence,Sqlite,ContentProvider,Net),JSON数据格式的解析(节点解析,Bean解析,泛型解析),远程服务的调用;
• 熟悉Android手机屏幕适配及屏幕适配的原则,提高应用的兼容性(解决不同尺寸手机显示图片大小问题);
• 熟练掌握Volley、AsyHttp、OkHttp、EventBus,并且封装使用网络请求库、图片缓存机制;
• 熟练应用网络通信协议,对数据交互模块有较高的运用水平;
• 熟练掌握主要设计模式(SOLID,MVC);
• 通过分析Crash信息修复线上Crash能力,通过上报异常信息,分析Crash的原因,快速定位问题;
• 掌握Eclipse、Android Studio的内存优化和调试功能;
• 熟练使用Gradle打包机制、签名机制、反编译能力(Apktool);
• 具有微信支付、支付宝支付、银联支付等SDK接入能力,客户端和服务端自己实现,处理请求,返回数据,联调支付SDK,保证支付的正常使用;
• 有较好的文档阅读能力以及翻译能力;
• 熟练掌握Linux命令和部署服务器;
• 熟练掌握Unity3d引擎,熟练掌握Android和Ios渠道接入,熟悉OC语言;

Web前端

Html5、XHtml、Javascript、Css3、JQuery、Mui、Ajax


Java

Spring、Hibernate、MyBatis、Java、Mina、Netty、Shell、MySQL、Tomcat、Memcache、Redis、MongoDB、Protocol buffer、Maven


##工作经验
2015-07-2015-12 掌域科技 •程序员
使用Unity3D引擎开发的3D游戏,游戏名鬼吹灯3D,已经正式上线了,这是一个MOMORGP游戏,支持平台有Android,IOS,我负责的模块是玩家的日常任务、讨伐任务、门派任务这几个模块,完善UI模块,在处理事务的时候和服务器端的对调,实现预期的结果,配合策划和主程解决相应的问题,后期游戏快上线了,接入了渠道Sdk。

2016-01-至今 上海火拉网络科技有限公司•SDK开发开发工程师
刚进入公司的时候负责游戏渠道SDK接入工作,总共接入了34家渠道,负责与渠道进行对接,自动化打包分发给渠道。其间还对接了友盟数据统计SDK、广告SDK、推送SDK。定制了一套支付宝支付、微信支付SDK,统一封装了,由于需求,需要开发一套公司自己的SDK,综合自己接入这么多SDK的经验,我分析和总结了设计SDK的流程,以下是我设计SDK的流程已经开发思路:
1、 使用lib的方式来开发。
2、 设计统一SDK对外接口、统一回调,对外接口分别是初始化、登录、支付、退出、注销、数据上报接口。
3、 定制工具类(资源加载、日志)、网络请求库、缓存库、图片加载库、支付接口。
4、 设计用户界面、公告界面、用户中心界面。
5、 设计用户名注册、短信注册、登录、找回密码接口。
6、 设计支付统一下单、签名机制。
7、 测试SDK,接入到游戏。

其他

Unity3D. C#. OC. php

联系我

欢迎各路大神一起交流
维护的QQ群:113659593
QQ:835114930
微信:wwflyme