- 博客(6)
- 资源 (6)
- 收藏
- 关注
原创 JAVA 中UUID 详解
UUID是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分。其目的,是让分布式系统中的所有元素,都能有唯一的辨识信息,而不需要通过中央控制端来做辨识信息的指定。如此一来,每个人都可以创建不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库创建时的名称重复问题。目前最广泛应用的UUID,是微软公司的全局唯一标识符。
2018-09-27 14:17:36 20870
转载 InputStream类的available()方法获取流的长度
前言:要一次读取多个字节时,经常用到InputStream.available()方法,这个方法可以在读写操作前先得知数据流里有多少个字节可以读取。需要注意的是,如果这个方法用在从本地文件读取数据时,一般不会遇到问题,但如果是用于网络操作,就经常会遇到一些麻烦。比如,Socket通讯时,对方明明发来了1000个字节,但是自己的程序调用available()方法却只得到900,或者100,甚...
2018-09-26 14:58:21 8036 1
原创 Android service 启动篇之 bindService
前言:前面几篇博文Android 中service 详解Android service 启动篇之 startServiceAndroid service 启动篇之 startForegroundService通过source code 分析了AMS 中service 的启动过程,bindService 相对复杂一点,主要是多了一些service 和app的绑定关系处理。本文继续...
2018-09-07 18:31:37 7958
原创 Context.startForegroundService() did not then call Service.startForeground()
从 Android 中service 详解 和Android service 启动篇之 startForegroundService 中我们知道在android 8.0 禁止启动后台服务。提出通过startForegroundService() 启动前台服务。但是必须要配合在service 中调用Service.startForeground(),不然就会出现ANR 或者crash。ANR l...
2018-09-07 17:34:57 12923
原创 Android service 启动篇之 startForegroundService
前言:在官方文档Android 8.0 行为变更中有这样一段话:Android 8.0 有一项复杂功能;系统不允许后台应用创建后台服务。 因此,Android 8.0 引入了一种全新的方法,即Context.startForegroundService(),以在前台启动新服务。在系统创建服务后,应用有五秒的时间来调用该服务的startForeground()方法以显示新服务的...
2018-09-07 16:37:03 71261 3
原创 protected-broadcast 规范使用(ERROR: Sending non-protected broadcast)
这是我在一次开发中出现的,系统中需要发送一个应用自定义的广播,send 之后会报出Sending non-protected broadcast 的异常。借此机会来解析protected broadcast 的使用,我们在中了解了broadcast 发送的整个过程,通过Context 的接口最终会调用到AMS 中broadcastIntent()。
2018-09-03 16:26:10 57318 13
基于main log 和event log 对内存问题分析脚本
2024-08-14
Android oom-adj 中trim Bservices 优化
2023-07-19
mxml 提炼公共接口
2019-08-16
gcc和g++详解
2017-10-25
Linux Shell脚本攻略(第2版).pdf
2017-09-05
Makefile.pdf
2017-09-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人