- 博客(28)
- 资源 (2)
- 收藏
- 关注
原创 2018 意犹未尽
2018年,我25岁,前两年有关于年龄带给我的一些困惑和不安在这一年里都一一给了我答案。「平庸而不自知」的我现在总算是进步了一些——自知了。站在2018的岁末,回望起这一年来所经历的种种,我深感庆幸并感激。这一年算是我人生路上最重要的一年,我不敢再懒,急着抢着我也要将这些可爱的经历记录下来。这一年,关于减肥的 flag 我又惨遭打脸。今年的一整个春天我都忙于此事,一度成绩斐然,入夏的时候瘦了快2...
2019-01-14 21:38:49
264
原创 《群英传》读书记 —— Android 控件
控件架构Android 每个控件都会在界面中占据一块矩形区域,而在 Android 中,控件大致被分为两类 —— ViewGroup 和 View。ViewGroup 是 View 的父控件。View 的测量Android 在绘制 View 前,必须对 View 进行测量,即让系统知道要绘制一个多大的 View。这个过程在 onMeasure() 中执行。执行 View 测量的类是 —...
2018-11-05 23:29:48
371
原创 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
413
原创 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
1383
原创 Android APK 省心安装 —— 眼睁睁地看着它完成一切
项目的一个新需求。因为我们现在做的是一个服务于公共的产品,实施人员也不一定及时地去维护。所以为了方便,我们想要 APK 更新时静默更新,就是不需要人去主动触发或者同意,就能够实现软件更新。上网查资料,最终实现方法如下:网上关于静默更新的文章有很多,包括郭霖大神都介绍过相关技术。所以这块就不多卖关子了,静默安装 APK 有两种实现方式:静默安装省心安装效果更好的是静默安装,...
2018-03-25 00:40:04
2123
2
原创 今天是你的生日,妈妈
写于 2018/03/20 我妈 44 岁生日现在我们村里人都称呼我妈 “小老太太” ,顾名思义——我成家了,而我妈还未老。但家乡那面有这么个说法,儿女成家之后,父母自然就晋升为老爷子老太太。可我妈实在是不够老,75 年生人,属兔的,今天过 44 岁生日。平时她心态就够年轻,到哪都是话题中心,人们愿意跟她在一堆扯闲篇、拉家常,一些平凡琐事经她声情并茂的描绘之后,都能变得有...
2018-03-24 11:07:06
1022
原创 跟廖雪峰学Git 三 —— 分支管理
一、分支的创建与合并Git 的分支功能十分强大,并且 Git 十分鼓励你使用分支。这样既安全,又能保质保量完成工作。创建分支之前看一下 readme.txt 文档中的内容:创建分支$ git checkout -b devSwitched to a new branch 'dev'git checkout 命令加上 -b 参数表示创建并切换,相当于以下两条命令:...
2017-12-11 22:10:28
449
原创 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
1082
原创 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
1206
原创 跟廖雪峰学Git 二 —— 基本操作
一、查看仓库状态使用 git status 命令查看当前仓库状态。接下来我们操作测试一下。首先,修改 GitSpace 目录下的 readme.txt 文件,在原有内容下,加入一句:Git status handler.保存后,关闭编辑器。然后在 git bash 中输入 git status 命令。$ git statusOn branch masterCha...
2017-11-24 22:20:30
367
原创 跟廖雪峰学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
488
原创 Android String 值动态替换
今天在项目中看到同事在 values-strings 中定义了一个<string name="v_seconds">(%1$s秒)</string>觉得有点奇怪,在代码中看到引用它是显示倒计时秒数的。不明觉厉。于是上网查了一下资料,了解了 %n$ms %n$md %n$mf 的用法。先上结论:%n$ms:代表输出的是字符串,n代表是第几个参数,...
2017-11-21 22:39:25
3434
原创 解决 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
8136
原创 Android Studio 使用魅族手机调试时,不显示 Log 的解决方法
今天用我的老 MX4 进行调试时,发现 log 信息缺失很多。重启 As 和进入 Device Moniter 都没解决。然后上网找发现可能是 Flyme 在搞事情,按照网上提供的方法设置之后,果然好了:设置——辅助功能——开发者选项——性能优化——高级日志输出将高级日志输出设置为全部输出。over. ...
2017-09-25 11:04:28
2119
原创 SQLiteOpenHelper 用单例模式实现后 onCreate 方法不执行的解决过程
前文介绍了过个进程访问数据库时数据库被锁的解决方法,就是用单例模式去实现 SQLiteOpenHelper 方法。详见 SQLiteDatabaseLockedException: database is locked 解决方法然后回过头来运行时,又出现了问题,如题:就是 SQLiteOpenHelper 初始化后,里面的 onCreate 方法不执行,它不执行,数据库就创建不出来。在网上看示...
2017-07-12 16:17:12
2902
1
原创 SQLiteDatabaseLockedException: database is locked 解决方法
bug 复现两个 Fragment 对同一个数据库操作,然后是在这两个 Fragment 切换时出现的这个问题。当时觉得肯定是没有在第一个 Fragment 销毁时及时关闭数据库导致的。原理见此: 文件数据库sqlite,同一时刻允许多个进程/线程读,但同一时刻只允许一个线程写。在操行写操作时,数据库文件被琐定,此时任何其他读/写操作都被阻塞,如果阻塞超过5秒钟(默认是5秒,能过重新编...
2017-07-11 21:52:47
2571
原创 前段入门——CSS3 基础记录
HTML 基础知识已经过了一遍了,按照顺序,开始看 CSS 相关知识。众所周知,现在 CSS 最新标准是 CSS3,所以我就直接从 CSS3 开始搞起。 为什么要用 CSS 呢?它的作用是什么呢? 因为刚学完 HTML 的知识,所以看到参考书上介绍这段时,心里对 HTML 的弊端清晰地映射出来: 维护困难。如果后期需要更改某特殊标记格式,会大费周章,浪费很...
2017-06-30 16:07:03
815
原创 前端入门 —— HTML 基础知识一勺烩
公司最近人手极度空缺,领导一声令下,让我和另一个 Android 小伙去支援 Java 组开发。秉承着“一块砖”的精神,我完全服从领导安排。做什么都是做,就怕自己停滞不前。羽哥也安慰我说:“技不压身”。但赶鸭子上架做了一周之后,发现根本不行。这一周下来,我连自己做了什么、怎么做的、原理流程都是什么一点都不知道。这样不行,只会复制粘贴可不行,况且大多数时候,从哪复制粘贴到哪我都不清楚。 ...
2017-06-27 14:27:56
718
原创 利用 Map 集合的 containsKey 方法,实现对象数组的去重以及重复对象的字段值累加
1. 前言公司的项目又加了一个新需求,打印发票增加详细收费方式以及每种收费收费金额。一开始没把它当回事,想着服务端返回的支付信息里包含着各种支付记录,在打印模块里将接收到的支付信息 List 遍历一下,然后打印出来就好了。后来做的时候发现,是我想得简单了。因为服务端返回的支付信息是按照每笔交易记录返回的,即如果支付总额为20元,如果使用者支付了两次10元完成的支付,那么服务端存储的这笔...
2017-06-17 16:19:27
2002
转载 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
9861
原创 24岁小朋友,生日快乐!
上周末我们回你的学校玩,天儿热,加上刚上了一周班身体欠歇,到那在食堂吃了顿饭,然后去以前经常玩的地方转了转就匆匆忙忙地赶回来了。到家往床上一躺就开始感慨,“常吃的那家盖饭换炒菜师傅了,不是之前的味道了”“图书馆里坐满了备考的学弟学妹们,现在到那连个坐的地方都没有”“物非人非,再也回不去了”……我看你郁郁寡欢的说了好多,便轻轻地安慰你:“我不是一直都在嘛。”转瞬之间,你都毕业...
2017-06-14 18:45:24
499
1
原创 Fragment 使用方式及进阶
在一些特定 UI 实现需求中,比如滑动切换视图、或者横屏左 item 右 message 的信息展示界面,使用 Fragment 作为视图的载体就比用 Activity 去实现要更为合理。 之前对于 Fragment 的知识点掌握得不够全面,不系统。用到的时候就临时抱佛脚去查一下。今天我要从头到尾全面的剖析一下它。1. Fragment 简介Fragment 直译“碎...
2017-06-14 09:22:40
455
原创 探索Activity 的启动模式
Activity 有四种启动模式,分别为 standard、singleTop、singleTask 和 singleInstance。 启动模式可以在项目的清单文件中的 activity 标签下填写 android:launchMode 属性进行配置。1. standardstandard 应该是我们打交道最多的一种启动模式了,它是 Activity 的默认启动模式...
2017-06-05 14:37:01
368
原创 Android Activity 中 Intent 的使用总结
1、何为 IntentIntent(意图)主要用于 Android 各组件之间的交互,它可以指明当前组件想要执行的动作,也可以传递数据。一般来说,Intent 常被用来启动 Activity、Service 以及 BroadCastReceiver。Intent 分为显式 Intent 和隐式 Intent,先来了解一下显示 Intent。2、显式 Intent在 Intent...
2017-06-02 16:55:15
757
原创 Android5.0 DatePicker 和 TimePicker 恢复至低版本滚动选择模式
现在做的项目是运行在甲方采购的特定设备上的,5.0系统。在调用系统的日期和时间选择控件时,发现全部是 Material Design 风格。怕给客户演示时说使用不习惯,故稳妥起见,改为 4.x 版本的 spinner 滚动选择模式。恢复成低版本滚动模式只需要是xml文件加上一句即可:android:datePickerMode="spinner"...android:tim...
2017-05-25 14:53:22
2052
原创 Android Http 网络探索
一、Http 请求及相应1.1 请求包结构示例:POST /meme.php/home/user/login HTTP/1.1Host: 114.215.86.90Cache-Control: no-cachePostman-Token: bd243d6b-da03-902f-0a2c-8e9377f6f6edContent-Type: application/x-...
2017-05-16 15:27:53
809
原创 Android 侧滑菜单(抽屉)的使用总结
侧滑菜单这种设计,在很多 APP 上面都有看到,例如大版本3.0之前的知乎、网易新闻、滴滴打车等。有些热衷于 Android Material Design 的开发者,甚至将一些 IOS 化的 Android 应用改头换面,将其 MD 化。这过程中,基本上都会给这些“改版”应用装上“抽屉”,例如 Xposed 上面的经典插件——“WechatUI ”、Github 上面的“Material ...
2017-05-15 17:14:04
3168
2
原创 Android Toolbar 使用总结
Toolbar 是在 Android5.0 推出的一款 MD 风格的导航控件,主要是为了替换 Actionbar 的。与 Actionbar 相比,Toolbar 非常灵活,我们可以自由地在 Toolbar 内添加子控件。使用 Toolbar由于 Toolbar 是在 Android5.0 才开始加上的,低版本要使用的话,需要引入 support-v7 兼容包,使用 andro...
2017-05-14 17:14:41
1135
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人