使用Pattern与Matcher进行用户名与手机号校验

Pattern|Android API Matcher|Android API

UserName校验

这样的功能需求多用于账号注册,可以通过如下的正则表达式实现支持字母、数字、下划线的6~16位字符账号注册

public static boolean isValidUserName(String username){
       Pattern p = Pattern.compile("(^[a-zA-Z0-9_]{6,16})");
       Matcher m = p.matcher(username);
       return m.matches();
  }

APP分享功能的实现

  • 说起在APP中添加分享功能,也在项目开发中集成过第三方的社会化组件,功能做出来了之后就发现坑其实挺多的,比如APP体积增加3~4MB,微信、微博等社区集成都需要申请appkey等。当然,一般第三方的社会化组件往往不只是集成分享功能,还会集成账号授权登陆等,而系统的分享功能就比较单纯了。这两天学习了一下系统自带的分享功能,写一篇笔记记录一下。

Android序列化 Parcelable与Serializable

作用:

序列化是为了保存在内存中的各种对象的状态(也就是实例变量,不是方法),并且可以把保存的对象状态再读出来。即:序列化是一种能比较好的保存对象状态的机制。

优点:

  • 永久性的保存对象,保存对象的字节序列到本地文件中;
  • 通过序列化对象在网络中传递对象;
  • 通过序列化在进程中传递对象;