- 博客(15)
- 资源 (4)
- 收藏
- 关注
原创 二叉树广义表的序列化反序列化
今天突然想起来大学时候遗留的一个关于二叉树的问题,甚是挂怀,于是葛优瘫中惊坐起,怒而码之,所谓老·不码不舒服司机是也。定义二叉树结构:struct Node{ int data; Node* left; Node* right;};typedef struct Node *BiTree;随机生成二叉树:BiTree randomCrea
2016-09-09 21:19:33
473
原创 关于Robolectric对JNI的支持问题
首先明确,目前最新版Robolectric3是不支持任何JNI lib和调用的,可以参见:http://stackoverflow.com/questions/10425591/robolectric-tanks-on-application-objects-that-load-jni-libraries-can-i-get-a-wo和官方github issue:https://
2016-08-02 15:13:51
863
原创 成功在Android上运行node和npm,hooray!!
下载官方的tarball,按照官方的build wiki编译就行(其实核心是利用ndk交叉编译v8而已),感觉棒极了,可以直接在手机上建站了哈哈。(未完待续)
2016-07-30 14:31:34
4063
原创 Realm-java的重大问题,慎用!
Realm数据库如果存储内容多了可能会引致OOM问题,直接抛出RealmError(注意是Error级别的,子线程和try catch通通拦不住),请各位一定小心使用。github上有相关的issue:https://github.com/realm/realm-java/issues/1680官方的建议给出的居然是要做好内容优化。这个...这个Realm在底层的实现原理有很大关系,底
2016-07-29 11:23:33
2815
1
原创 Android Gradle插件之最新TransfomAPI解析
Android的Gradle构建插件在1.5版本之后增加了Transform API,提供统一的接口用于方便开发者对构建材料进行中间处理,可是这方面资料较少,学习成本相对较高,笔者经过长时间的探索获得一些心得,在此分享给大家。(未完待续)
2016-07-28 23:13:59
411
原创 望穿秋水:基于实例纵深解析Okhttp3源码
Okhttp现在几乎已经是Android在java层进行网络请求的不二选择了,然而其实除了demo级别的演示使用外,OkHttp还有很多可以拓展使用的功能,如果不了解其源码是无法物尽其用的。所以本文将从请求实例入手,由浅入深地对OkHttp3的源码进行解析,力图描绘出其中的设计和架构关系。
2016-07-28 23:07:01
391
原创 要上线了,面对一大堆要上线的新代码,质量控制方面应该做什么
对于代码质量控制,在开发过程中,充分的理解业务逻辑和自我测试,是必不可少的,但是本次主要谈的是,一轮的开发已经结束,即将上线了,这个时候在质量控制方面应该做什么。首先,明确所有的在这轮开发中所作出的修改(这个要基于分支的管理,每次发起feature/release分支向stable/master分支的pr来merge,详见下图),可以以文件为单位,列出一个表格,本次修改了那些文件,修改的比例为
2016-07-28 19:28:30
920
原创 开发切记:欲速则不达
今天目睹别人出了一个bug导致了一次线上事故,因为是我的好朋友,所以格外感同身受,大致情况如下:这个朋友刚刚接手了前任的烂代码不久,打算发起一次重构,精神抖擞地忙了一个月,总算搞完了,上线后出现了问题,是因为对业务逻辑的控制上还是有遗漏,仅仅一个小小的瑕疵,但产品从来都是宁缺勿滥,故而紧急重新上线,酿成一起小事故。这个狗血的故事充分说明,开发一定是语速则不达,一定不要有线上的bug,哪怕先
2016-07-27 21:59:49
406
原创 关于proguard配置文件的一个笨办法,一次性排除大部分外部依赖
关于proguard这个东西,感觉做的一般般,很多配置很不人性化,容错性差,像个事妈一样总报错,屁大点事就把整个流程挂掉,搞得学习成本很高,实在难以称道。比如,proguard配置中的keep class 和dontwarn就很变扭,为什么不提供一个only include class或者only warn之类的配置,其实针对大多数app,我们只需要对我们关心的一些类进行混淆就可以了,所以这不
2016-07-09 13:01:21
1364
1
原创 关于移动端技术团队管理
认为移动端开发不重要,显然是很愚蠢的。移动端开发也许从某种角度来说不如服务器端开发重要,但是丝毫不能懈怠。犹记得之前把某同行的app破解了,从而解密了他们api的加密方式,后面写爬虫爬数据就很方便了。这个例子也许并不是很有说服力。但是,不可否认的是,技术这种事,和很多无聊的事一样遵从木桶规律,其所构建系统的稳定性由短板决定。从这个意义上讲,技术的任何一个环节都很重要。更不要提,客户端开发是整个系统的
2016-03-25 16:45:33
1084
原创 FastJson源码解析:序列化(1.1.45.android)
本解析主要以JSON.toJSONString(Object)这个方法作为入口。以HashSet《POJO》作为例子。
2016-03-17 12:49:30
1414
原创 AndroidApp开发组件化:基于Nexus和Gradle
因为公司开发的AndroidApp项目比较多,在业务层和基础功能层都有一定的相似性,组件化开发就变得非常有意义,相同的逻辑跨App复用,不仅有利于减少重复劳动,也有利于逻辑的打磨和提升,逐渐达成最佳实践。(未完待续)
2016-03-17 09:36:06
764
原创 Android网络:封装自用网络层的心得体会
淘宝上买了一套国外教程,花了20多块,太超值了,资料整理的很齐整,学下来受益匪浅,而且乐趣无穷,对计算机的概念认识越发深入,怎一个爽字了得!(感觉比现在的一些在线的所谓MOOC靠谱多了) 不管多难的学科,一定要找到正确的方法,千万不要循规蹈矩,此路不通就换条路,兴趣和快乐非常重要。有些概念并不是多难懂,而是需要背景知识和了解知识的应用场景,知其然而知其所以然,更要知其所以然之所
2016-01-26 17:02:55
1573
转载 欢迎使用CSDN-markdown编辑器
欢迎使用Markdown编辑器写博客很好的功能,很好的例子,必须Mark&Support本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜
2016-01-26 15:15:24
270
极光推送服务器端代码
2015-09-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人