android开发中做数据埋点一般都是直接写在方法里面,这样做虽说是能够完成功能,但是代码的入侵性太强,整体埋点通用性也不强。在后台开发中,对系统可以采用aop进行日志和性能监控,于是搜了下android中也是可以采用aop的方式进行日志记录和性能监控的。
探究Android网络请求库
android网络请求从最初的手写HttpUrlConnection或httpclient,到使用Volley、async-httpclient、retrofit框架,使得在开发中请求网络数据操作变得越来越简单,代码也变得越来越简洁。这里我会主要分析两个具有代表性的开源库volley和retrofit实现机制,然后谈谈如何在Volley基本上封装一个简单的类Retrofit请求库。
构建一个用webpack打包的前端项目
目前github上面的大部分前端开源项目都是用到了webpack打包工具,本文将讨论从零开始构建一个用webpack打包的基础前端项目。
vue开发规约
为了让vue项目代码更好的组织和架构,我们在开发vue前端项目时,我们最好在开发工具和代码书写方式上遵循一些基本的约定。
自定义vue-lite-popup组件
在移动端开发时,经常会用到popupwindow这样的弹窗控件,给用户进行选项操作,android和ios中原生提供了这类控件,而在移动端前端中这类控件需要自己定义。我这里采用webpack+vue自定一个popup控件,可以在其他vue项目中直接使用。
移动端app开发技术方案选择
目前移动端app开发大体的技术方案有:
- 纯原生
- 混合模式(主体原生+部分h5页面)
- 运用react native或weex开发
- 混合模式(部分原生+主体前端spa页面)
我个人比较看好前端的发展,因此在项目中用的就是是混合模式(部分原生+主体前端spa页面),采用此方案时原生代码只负责书写webview和js桥接层,其它的全部由前端方式书写。
自定义数据和视图相互绑定库DataBind
写这个数据绑定库的灵感源于公司的项目开发遇到的问题:app中有些页面有许多需要展示、输入的字段,如果每个字段都去手动复制、手动取值,这就意味着增加大量的冗余代码,也增加了开发的工作量。解决这个问题其实很简单,只需要数据字段和控价进行一一绑定即可。
Android数据库开发库对比
项目中难免会对数据库进行操作,现在开源的数据操作库有许多,如Litepal、GreenDao等等,我也用过这其中的几个。一直也没有专门的对它们去做下对比。趁着工作闲暇时间,我专门选择了Litepal、GreenDao、Ormlite库进行对比,选择出一款api比较友好的、性能佳的数据库操作库。
android自定义图片选择器
当需要用户选择图片的时候,可以调用系统相机或相册。如果需要用户进行多图选择就需要自定义图片选择器。这里介绍我自己封装的图片选择器。
android调用系统相机和相册选择图片
项目中有一个功能让用户选择图片并上传服务器,在网上看了一些人写的工具类库,有点不符合自己的心意,于是自己写了一个调用系统相机或相册选择图片的工具类。