将进酒

名不正则言不顺

排序:
默认
按更新时间
按访问量

Android杂的记下篇

Android应用与传统服务器应用系统整合【JSON、Web Service《XML》、网络请求、Token、心跳】 视图层—Android客户端 中间层—Struts 2 + Spring 4 + Hibernate 4 控制器层—Web层(Struts 2)或者Servle...

2018-05-06 16:32:26

阅读数:22

评论数:0

Android杂的记中篇

游戏开发 手机游戏开发需要开发者用面向对象的方式定义界面上的所有角色和能与玩家交互的元素,同时需要设计好游戏的动画管理、动画后台线程支持、游戏规则的判定、角色行为控制等。 框架搭建 通常情况下,游戏开发的基本框架中,一般包括以下模块: 窗口管理(Window management):该模...

2018-05-06 13:53:14

阅读数:58

评论数:0

Android开发中JavaBean不推荐写get/set方法原因

Android使用get/set方法会降低性能,因为内存是有限的,随着应用复杂度增加,后期的应用更倾向于模块化、插件化来尽量减少主程序的容量,一般会采用如下几种方式做优化: 使用so来封装共同模块,通过加载库的形式实现代码共享 使用jar形式跟so一样,不过容易被反编译 简化代码编写可以使用反...

2018-04-18 00:11:02

阅读数:138

评论数:0

Java编程学习笔记

最近在看Effective Java这本书,在这里简单记录下书中78条建议,因为有一定的编程经验,书中一大半条理规范都在践行中,还有一部分在用但是不知道为什么这么用,当然如枚举、并发等,还是需要多加以实践。 考虑用静态工厂方法代替构造器 遇到多个构造器参数时要考虑用构建器 用私有构造器或者枚举...

2018-03-31 17:25:24

阅读数:25

评论数:0

Kotlin、RxJava学习笔记

关于Kotlin kotlin关键字: object:定义静态类 lazy:懒属性(延迟加载) when:用于判断,相当于java中的switch()语句 try{…}catch(){…}:用于捕捉异常 let:默认当前这个对象作为闭包的it参数,返回值是函数里面最后一行,...

2018-03-17 17:17:59

阅读数:94

评论数:0

Kotlin传递可变长参数给Java可变参数方法

定义Java可变参数方法package com.tcl.john.studymvvm.utils;/** * 调用Java方法的工具类 * Created by ZhangJun on 2017/10/25. */public class CallJavaUtils { public ...

2017-10-25 11:15:47

阅读数:1246

评论数:0

Java中多线程通信实例:生产者消费者模式

线程间的通信:其实就是多个线程在操作同一个资源,但是操作的动作不同当某个线程进入synchronized块后,共享数据的状态不一定满足该线程的需要,需要其他线程改变共享数据的状态后才能运行,而由于当时线程对共享资源时独占的,它必须解除对共享资源的锁定的状态,通知其他线程可以使用该共享资源。Java...

2017-10-21 17:01:42

阅读数:380

评论数:0

DataBinding ObseravbleField实体类如何序列化对象

Android推荐序列化采用Parcelable,同时选择序列化的原则是:1)在使用内存的时候,Parcelable比Serializable性能高,所以推荐使用Parcelable;2)Serializable在序列化的时候会产生大量的临时变量,从而引起频繁的GC;3)Parcelable不能使...

2017-10-18 10:00:27

阅读数:272

评论数:0

Android调用Linux命令修改文件权限的两种实现方式

public class FileMode { public static void changeFileModeByCmd(String file) { String[] command = {"chmod", "777", fil...

2017-10-10 20:07:23

阅读数:414

评论数:2

Android开发小技巧系列(六)

setBackgroundResource(0)——可以移除View的背景色Resources.getSystem().getDisplayMetrics().density——可以不用Context也能获取屏幕密度通过重载ViewGroup的dispatchDraw可以实现一个简单的蒙版效果。例...

2017-09-02 16:27:31

阅读数:439

评论数:0

Android开发小技巧系列(五)

getResources().getIdentifier(String name, String defType, String defPackage)——根据资源名称获取资源 id。一个完整的资源名为package:type/entry,对应该方法的三个参数:资源名称、资源类型、应用包名。Typ...

2017-09-02 14:24:39

阅读数:262

评论数:0

Android开发小技巧系列(四)

Activity.isChangingConfigurations()——如果在Activity中configuration会经常改变的话,使用这个方法就可以不用手动做保存状态的工作了。SearchRecentSuggestionsProvider——可以创建最近提示效果的provider,是一个...

2017-09-02 13:59:45

阅读数:298

评论数:0

Android开发小技巧系列(三)

UrlQuerySanitizer——使用这个工具可以方便对URL进行检查。Fragment.setArguments——因为在构建Fragment的时候不能加参数,所以这是个很好的东西,可以在创建Fragment之前设置参数(即使在configuration改变的时候仍然会导致销毁/重建)。Di...

2017-09-02 13:40:17

阅读数:283

评论数:0

Android开发小技巧系列(二)

DateUtils.formatDateTime()——提供区域格式化时间/日期字符串的一站式服务。AlarmManager.setInexactRepeating——通过闹铃分组的方式来节省电量,即使你只调用一个alarm实例,它仍然比较好用(可以确保在使用完毕时自动调用AlarmManager...

2017-09-01 19:22:07

阅读数:136

评论数:0

Android开发小技巧系列(一)

Activity.startActivities()——对于从app流的中部启动会非常好。TextUtils.isEmpty()——一个普遍适用的简单工具类。Html.fromHtml()——格式化Html的快速方法,本人认为它也不是非常快,所以我不是经常用它(我说不经常用它是为了重点突出这句话:...

2017-09-01 15:16:26

阅读数:233

评论数:0

Android将Excel表格解析成json文件

Android TV开发,设置模块一般是一个菜单树,也即多级联动菜单,我们可以做成配置项文件,这样做的好处是,不需要根据每个客户需求去控制菜单列表里的菜单项显示隐藏,减少项目维护成本。那么这个配置项怎么去设计比较好呢?因为需求是产品控制的,我们希望配置项文件由产品来编写和维护,对于产品来说,我们让...

2017-08-19 18:33:47

阅读数:682

评论数:0

Android MVVM开发模式实践

MVVM模式相关概念 MVC:(VIew-Model-Controller)早期将VIew、Model、Controller代码块进行划分,使得程序大部分分离,降低耦合。 MVP:(VIew-Model-Presenter)由于MVC中View和Model之间的依赖太强,导致Activity中的代...

2017-06-24 15:45:24

阅读数:678

评论数:0

函数式编程和响应式编程

在程序开发中,a=b+c;赋值之后,b或者c的值变化后,a的值不会跟着变化。响应式编程目标就是,如果b或者c的数值发生变化,a的数值会同时发生变化。函数式编程函数式编程是一系列被不公平对待的编程思想的保护伞,它的核心思想是,它是一种将程序看成是数学方法的求值、不会改变状态、不会产生副作用(后面我们...

2017-06-12 21:37:57

阅读数:3467

评论数:0

Android跨进程通信

由于android系统中应用程序之间不能共享内存,因此,在不同应用程序之间交互数据(跨进程通讯)就稍微麻烦一些。在android SDK中提供了4种用于跨进程通讯的方式,这4种方式正好对应于android系统中4种应用程序组件:Activity、Content Provider、Broadcast...

2017-06-12 21:16:09

阅读数:371

评论数:0

Java锁机制--synchronized

在理解锁机制前,我们需要了解线程安全和并发相关的知识。Java内存模型 lock(锁定):作用于主内存的变量,它把一个变量标识为一个线程独占的状态; unlock(解锁):作用于主内存的变量,它把一个处于锁定状态的变量释放出来,释放后的变量才可以被其他线程锁定; read(读取):作用于主内存的变...

2017-06-09 22:37:29

阅读数:260

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭