Android 图片模糊 性能总结 | 家杰的博客 

作者:JerryXia | 发表于 , 阅读 (13)
总结将原图缩小后模糊,然后再放大显示。这样可以节省很多时间。推荐缩放到100像素左右需要渐变效果时可以用两个图层叠加改变透明度的方式。这样多占点内存,但是只需要计算一次我个人感觉最理想的应该还是用NDK来实现,可惜本人C只学了点皮毛,写不好啊啊啊算法很重要!参考资料均值模糊算法:http://blog.ivank.net/fastest-gaussian-blur.html二维高斯模糊算法:http://www.ruanyifeng.com/blog/2012/11/gaussian_blur.html一维高斯模糊算法:http://www.cnblogs.com/hoodlum1980/p/4528486.htmlAndroid NDK配置:http://blog.csdn.net/tyzlmjj/article/details/50725281RenderScript 配置和使用:http://blog.csdn.net/tyzlmjj/article/details/50747173
Demo下载[GitHub]
...阅读全文

 如何优雅地使用NDK | 家杰的博客 

作者:JerryXia | 发表于 , 阅读 (23)
配置常用命令NDK开发比较常用的命令就是生成头文件、构建so包,在android studio上我们可以先配置好命令,使用起来就很方便了,这是我感觉最赞的地方。
如下图所示,我添加了三个命令,按加号添加

其中一个命令的配置详情如下图:

命令配置参数:
javah用于生成头文件Program:$JDKPath$/bin/javahParameters: -encoding UTF-8 -d ../jni  -jni $FileClass$注意:这个命令我加上了-encoding UTF-8指定编码,你可以改成你工程的编码。Working directory: $SourcepathEntry$\..\java
ndk-build用于构建so包Program: 你的NDK目录\build\ndk-build.cmd注意:windows用ndk-build.cmd,MAC/Linux用ndk-buildParameters: 什么都不用填Working directory:$ModuleFileDir$\src\main
ndk-build clean清除so包Progr...阅读全文

 NDK实现的加密/解密库-Codec | 家杰的博客 

作者:JerryXia | 发表于 , 阅读 (7)
这两个是在安卓中较为常见的编码算法,所以先写了这两个,后面看情况逐步添加。
写这个库的主要原因是为了提高应用性能,原先一直用java代码实现,效果其实也还不错,但是用C实现可以使解码速度更快,为什么不呢?在我的手机上实测Base64解码速度比纯Java实现快3~7倍(一万个字符下测试),算法还有很大的优化空间,后续慢慢修改。
引入LibraryGitHub:https://github.com/tyzlmjj/Codec1compile 'me.majiajie:codec:1.1.0'
如何使用?这个库只做编码和解码,所以使用的时候只需要关注两个类Encode和Decode。 顾名思义,一个编码一个解码。
以Base64为例
编码1String str = Encode.Base64("string");
解码1String str = Decode.Base64("string");
很简单。
特别的部分的编码算法支持自定义一些规则,例如Base64。
调用Custom为前缀的方法进行规则设置,最后不要忘记调用doit();123String string = E...阅读全文

 建站小记 | luckymore的学习笔记 

作者:JerryXia | 发表于 , 阅读 (18)
这周公司酝酿了三个多月的项目要提交,开发组里忙的天昏地暗。最后一天居然忙里偷闲把Blog给挂了上去,虽然这个博客也已经是酝酿了有两个月了,之前很多次都因为各种各样的问题而搁置了。于是我也要开始玩博客了~
感觉大学水了两年,没有很深入地去钻研一门技术,杂七杂八的东西接触了不少,到大二下学期才真正开始专心弄iOS,跟着创业团队做了几个项目,然后现在在一家创业公司做实习生,虽然挂着实习生的名,但是干着正式员工的活。公司里有很Nice的队友,虽然工作很忙,但确实我是学到了很多以前从来没有接触过的东西。
暂时给小站起名叫做“XXX的学习笔记”吧,类似这样的名字其实很多,最近一段时间新学到很多有意思的东西,踩了不少坑,正好可以跟大家拿出来分享一下。
嗯,暂时就这样了
...阅读全文

 iOS填坑之路-UIScrollView中contentOffset的Bug | luckymore的学习笔记 

作者:JerryXia | 发表于 , 阅读 (21)
事情的经过是这样的,项目的主页是一个由一个xib定义的scrollView,设置的contentSize是屏幕宽度的1.75倍,一共分三屏。
这样的布局设计在很多应用中应该是很常见的,并且从业务需求的角度往往需要在scrollView的delegate中根据scrollView的滑动状态和contentOffset做一些切换和调整。那么问题就来了!!!
源代码是这样的12345678- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView {    if(_scrollView.contentOffset.x > 0){    //do something        if (_scrollView.contentOffset.x > kScreenWidth) {            //代表scrollView进入了第三屏,需要做某些事情        }    }}
但是这块业务在之后的测试中出现了一个很难复现的Bug。那就是当滑动到中间屏幕(即contentOffset.x = kScreenWid...阅读全文