移动开发技术

Jason's Blog

Mobike体验

今天到上海出差,第一次来,想到处随意逛逛,单车是个很不错的选择,所以注册了mobike。

今天骑了三段:

第一段2km,耗时19m。这一段主要是在上海交大校园里,人少路况好,体验非常不错。

第二段3km,耗时22m。这一段是从酒店去外滩,在半路上被交警拦下,有一段路不准骑车,于是改乘地铁。这一段由于是在马路上,没有专门的自行车道,骑行感受一般。不过最难忍受的是这个车骑久了不舒服,座位对我来说比较偏矮,发不上力,且久了容易酸,下地铁台阶的时候感觉都快跪下去了。

第三段7km,耗时49m。从南京路步行街到酒店。跟第二段类似,没有专用自行车道,不停在人行道和马路边缘穿行,影响骑行速度。这次我骑得比较慢,也可能更适应了,腿酸的感受稍微弱一点。

总体感受: 1. 方便,随停真的是太方便了,完全不操心。 2. 用的人挺多的,上海和深圳都是这样。 3. lite版单车还比较少,一般附近难以找到,看起来可能会好骑一点,因为更轻,还没有体验过。 4. app做得不错,功能简洁易用,单车定位比较准。 5. 在北京这种有专用自行车道的城市,发展会更好,而对于没有骑行环境的城市,例如重庆,基本就搞不起来了。

经过今天的体验,总体来讲感觉不错,从最以前的完全不看好,到现在觉得稍微觉得有戏。以后有需要会继续用。

利用traceview优化Android应用流畅度

众所周知,屏幕刷新频率必须要达到60Hz,人眼才能感觉不到界面的卡顿。60Hz意味着界面每一帧的计算加渲染时间不能超过16ms,当某些业务逻辑比较耗时的时候,执行时间可能超过16ms的阈值,这时候给用户直观的感受就是界面卡顿。

traceview是安卓sdk提供的一个性能分析工具,能够收集函数的执行时间,以精确的分析系统的瓶颈所在。当我们遇到系统卡顿问题的时候,可以利用这个工具来进行分析。下边的篇幅就项目中一个真实的卡顿问题,来介绍traceview工具的使用。

DOM XSS

因为JavaScript脚本功能强大,我们可以利用它来更改整个页面内容,所以我们就可以制造出利用真的目标域名的假页面

CardView在API 21以下的圆角效果处理

CardView是Android5.0(API 21)加入的新控件,当然,在API 21以下也能用,在build.gradle的依赖里加入下边一行就可以用了

compile 'com.android.support:cardview-v7:23.1.1'

项目中要做一个卡片浏览的程序,卡片需要有5dp的圆角,圆角效果CardView自带属性就可以支持,加上app:cardCornerRadius属性就好了,如下:

1
2
3
4
5
6
7
8
9
<android.support.v7.widget.CardView
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:app="http://schemas.android.com/apk/res-auto"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  app:cardUseCompatPadding="true"
  app:cardCornerRadius="5dp">
  ...
</android.support.v7.widget.CardView>

如何用charles进行https抓包

项目由http转成了https,遇到个问题是用charles不能抓包的问题。按照抓取http包的方式搭好了环境后,在浏览器里出现了这样的提示。

用c++编写PHP扩展

背景

有时候老业务用的是C++接口,但是为了快速开发,Web类业务已经转移到PHP上,所以如何用PHP封装老业务的C++接口进行调用,就是这篇文章所要解决的问题。

Shadowsocks上网攻略

由于某些原因,某博士的KX上网快要停止服务了,平时离不开Google,离不开……,为了自己能够更方便的工作和娱乐,也不再求人,于是研究了下如何自己搭建KX上网服务。下边就说一下如何利用Shadowsocks来搭建KX上网服务。

greenDAO使用入门

ORM(Object Relational Mapping)可以帮我们减轻开发工作量,提高工作效率。之前做Java Web项目用过Hibernate,现在想在Android项目中用一下ORM。

之前上网查了一下目前主流的Android ORM,有如下几种:
* ORMLite
* SugarORM
* GreenDAO
* Active Android
* Realm

当这些库都没有用过的时候,如何进行技术选型呢,我用了个很简单的办法,看下Github上的star数就好了,greenDAO是其中最多的,并且初步横向比较了下,greenDAO的性能不错,下边是网上一张greeDAO和ORMLite的性能对比图

greenDAO的使用比较简单,下边就开始介绍下如何使用greenDAO吧。