2 GinkWang

尚未进行身份认证

微信公众号:周诌

等级
TA的排名 14w+

2018 意犹未尽

2018年,我25岁,前两年有关于年龄带给我的一些困惑和不安在这一年里都一一给了我答案。「平庸而不自知」的我现在总算是进步了一些——自知了。站在2018的岁末,回望起这一年来所经历的种种,我深感庆幸并感激。这一年算是我人生路上最重要的一年,我不敢再懒,急着抢着我也要将这些可爱的经历记录下来。这一年,关于减肥的 flag 我又惨遭打脸。今年的一整个春天我都忙于此事,一度成绩斐然,入夏的时候瘦了快2...

2019-01-14 21:38:49

《群英传》读书记 —— Android 控件

控件架构Android 每个控件都会在界面中占据一块矩形区域,而在 Android 中,控件大致被分为两类 —— ViewGroup 和 View。ViewGroup 是 View 的父控件。View 的测量Android 在绘制 View 前,必须对 View 进行测量,即让系统知道要绘制一个多大的 View。这个过程在 onMeasure() 中执行。执行 View 测量的类是 —...

2018-11-05 23:29:48

Android 开发常用的 ADB (及 ADB Shell)命令汇总

ADB 命令查看连接的设备adb devices将system分区重新挂载为可读写分区adb remount重启设备adb reboot重启设备到 bootloader,即刷机模式adb reboot bootloader重启设备到 recovery,即恢复模式adb reboot recovery查看 logadb logcat清...

2018-11-05 22:30:47

Ubuntu 卸载并清理软件的命令

一、卸载软件如果知道软件具体名称,可以使用下面的命令:sudo apt-get remove --purge 软件名称 sudo apt-get autoremove --purge 软件名称 如果不知道软件具体名称,dpkg --get-selections | grep ‘软件相关名称’sudo apt-get purge 一个带core的package,如果没有带core的...

2018-11-04 22:42:31

Android APK 省心安装 —— 眼睁睁地看着它完成一切

项目的一个新需求。因为我们现在做的是一个服务于公共的产品,实施人员也不一定及时地去维护。所以为了方便,我们想要 APK 更新时静默更新,就是不需要人去主动触发或者同意,就能够实现软件更新。上网查资料,最终实现方法如下:网上关于静默更新的文章有很多,包括郭霖大神都介绍过相关技术。所以这块就不多卖关子了,静默安装 APK 有两种实现方式:静默安装省心安装效果更好的是静默安装,...

2018-03-25 00:40:04

今天是你的生日,妈妈

写于 2018/03/20 我妈 44 岁生日现在我们村里人都称呼我妈 “小老太太” ,顾名思义——我成家了,而我妈还未老。但家乡那面有这么个说法,儿女成家之后,父母自然就晋升为老爷子老太太。可我妈实在是不够老,75 年生人,属兔的,今天过 44 岁生日。平时她心态就够年轻,到哪都是话题中心,人们愿意跟她在一堆扯闲篇、拉家常,一些平凡琐事经她声情并茂的描绘之后,都能变得有...

2018-03-24 11:07:06

跟廖雪峰学Git 三 —— 分支管理

一、分支的创建与合并Git 的分支功能十分强大,并且 Git 十分鼓励你使用分支。这样既安全,又能保质保量完成工作。创建分支之前看一下 readme.txt 文档中的内容:创建分支$ git checkout -b devSwitched to a new branch 'dev'git checkout 命令加上 -b 参数表示创建并切换,相当于以下两条命令:...

2017-12-11 22:10:28

Android 隐藏状态栏和虚拟按键的通用方法

//隐藏虚拟按键,并且全屏if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api View v = this.getWindow().getDecorView(); v.setSystemUiVisibility(View.GONE);} els...

2017-12-11 17:10:15

Android px与dp真正的转换公式

直接上干货px = dp * (dpi / 160)其中,dpi 即密度,在 Android 领域,dpi 等价于 ppi。因此 dpi 值可以通过 ppi 计算公式得出: 参考:https://www.zhihu.com/question/33312136 http://www.jianshu.com/p/913943d25829 ...

2017-12-11 16:50:07

跟廖雪峰学Git 二 —— 基本操作

一、查看仓库状态使用 git status 命令查看当前仓库状态。接下来我们操作测试一下。首先,修改 GitSpace 目录下的 readme.txt 文件,在原有内容下,加入一句:Git status handler.保存后,关闭编辑器。然后在 git bash 中输入 git status 命令。$ git statusOn branch masterCha...

2017-11-24 22:20:30

跟廖雪峰学Git 一 —— 初始配置

一、安装1. Linux在终端敲入命令sudo apt-get install git即可安装 Git。2. Mac OS X在 Mac OS X 上,有两种安装 Git 的方法。一是安装 homebrew,然后通过 homebrew 安装 Git,具体方法请参考 homebrew 的文档:http://brew.sh/。第二种方法更简单,也是推荐的方法,就是直接从...

2017-11-23 17:14:49

Android String 值动态替换

今天在项目中看到同事在values-strings中定义了一个<stringname="v_seconds">(%1$s秒)</string>觉得有点奇怪,在代码中看到引用它是显示倒计时秒数的。不明觉厉。于是上网查了一下资料,了解了%n$ms%n$md%n$mf的用法。先上结论:%n$ms:代表输出的是字符串,n代表是第几个参数,...

2017-11-21 22:39:25

解决 Android Studio Debug 调试时一直卡在 waiting for debugger 界面

打开了多个 IDE,关闭其他的,只留下你想调试的工程所在的 IDE。重启 adb,cmd 下运行命令 adb kill-server 再 adb start-server。看 adb 端口是否被占用,如果被占用,关闭其占用的程序(如一些手机助手、安全软件之类的)。打开 As 的 setting,看 Plugins 下的 Android NDK Support 是否被关闭,如果是,打开。 ...

2017-10-26 09:30:27

Android Studio 使用魅族手机调试时,不显示 Log 的解决方法

今天用我的老 MX4 进行调试时,发现 log 信息缺失很多。重启 As 和进入 Device Moniter 都没解决。然后上网找发现可能是 Flyme 在搞事情,按照网上提供的方法设置之后,果然好了:设置——辅助功能——开发者选项——性能优化——高级日志输出将高级日志输出设置为全部输出。over. ...

2017-09-25 11:04:28

SQLiteOpenHelper 用单例模式实现后 onCreate 方法不执行的解决过程

前文介绍了过个进程访问数据库时数据库被锁的解决方法,就是用单例模式去实现 SQLiteOpenHelper 方法。详见 SQLiteDatabaseLockedException: database is locked 解决方法然后回过头来运行时,又出现了问题,如题:就是 SQLiteOpenHelper 初始化后,里面的 onCreate 方法不执行,它不执行,数据库就创建不出来。在网上看示...

2017-07-12 16:17:12

SQLiteDatabaseLockedException: database is locked 解决方法

bug复现两个Fragment对同一个数据库操作,然后是在这两个Fragment切换时出现的这个问题。当时觉得肯定是没有在第一个Fragment销毁时及时关闭数据库导致的。原理见此:文件数据库sqlite,同一时刻允许多个进程/线程读,但同一时刻只允许一个线程写。在操行写操作时,数据库文件被琐定,此时任何其他读/写操作都被阻塞,如果阻塞超过5秒钟(默认是5秒,能过重新编...

2017-07-11 21:52:47

前段入门——CSS3 基础记录

HTML 基础知识已经过了一遍了,按照顺序,开始看 CSS 相关知识。众所周知,现在 CSS 最新标准是 CSS3,所以我就直接从 CSS3 开始搞起。 为什么要用 CSS 呢?它的作用是什么呢? 因为刚学完 HTML 的知识,所以看到参考书上介绍这段时,心里对 HTML 的弊端清晰地映射出来: 维护困难。如果后期需要更改某特殊标记格式,会大费周章,浪费很...

2017-06-30 16:07:03

前端入门 —— HTML 基础知识一勺烩

公司最近人手极度空缺,领导一声令下,让我和另一个 Android 小伙去支援 Java 组开发。秉承着“一块砖”的精神,我完全服从领导安排。做什么都是做,就怕自己停滞不前。羽哥也安慰我说:“技不压身”。但赶鸭子上架做了一周之后,发现根本不行。这一周下来,我连自己做了什么、怎么做的、原理流程都是什么一点都不知道。这样不行,只会复制粘贴可不行,况且大多数时候,从哪复制粘贴到哪我都不清楚。 ...

2017-06-27 14:27:56

利用 Map 集合的 containsKey 方法,实现对象数组的去重以及重复对象的字段值累加

1. 前言公司的项目又加了一个新需求,打印发票增加详细收费方式以及每种收费收费金额。一开始没把它当回事,想着服务端返回的支付信息里包含着各种支付记录,在打印模块里将接收到的支付信息 List 遍历一下,然后打印出来就好了。后来做的时候发现,是我想得简单了。因为服务端返回的支付信息是按照每笔交易记录返回的,即如果支付总额为20元,如果使用者支付了两次10元完成的支付,那么服务端存储的这笔...

2017-06-17 16:19:27

java.lang.IllegalArgumentException: Illegal pattern character 'Y' 解决办法

检查系统属性setting.DISPLAYDATE,若为YYYY-MM-DD,则改为yyyy-MM-dd,其中yyyy和dd只能用小写参考:http://blog.csdn.net/zsllulu/article/details/9251847

2017-06-15 13:29:36

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!