成长的味道

代码是程序员的朋友,虽然没有热情,但是非常忠实。

Android taskAffinity属性

Activity的归属,也就是Activity应该在哪个Task中,Activity与Task的吸附关系。我们知道,一般情况下在同一个应用中,启动的Activity都在同一个Task中,它们在该Task中度过自己的生命周期,这些Activity是从一而终的好榜样。 那么为什么我们创建的Activi...

2017-04-24 14:45:18

阅读数 441

评论数 0

Android日志系统探究

Android的日志系统是Kernel层实现了若干个环形Buffer实现的。系统各个日志读写操作都是针对这几个RingBuffer来实现的。那就来一窥Kernel是怎么做的。相关源码是位于driver/staging/android/下面的logger.c和logger.h两个文件 1,在整...

2016-12-07 10:03:53

阅读数 347

评论数 1

adb打印内核调试信息dmsg和kmsg说明

Android的log信息分为内核空间和用户空间中LOG,查看用户空间(也就是app等上层的log)的log直接用logcat就可以了,如果想过滤一些信息就用adb shell “logcat | grep -E ‘log_xxx|log_aaa’”命令,这样log只会显示含有log_aaa和lo...

2017-12-21 10:22:42

阅读数 3257

评论数 2

linux两种库:动态库和静态库(共享库)说明

linux下有两种库:动态库和静态库(共享库)二者的不同点在于代码被载入的时刻不同。静态库的代码在编译过程中已经被载入可执行程序,因此体积比较大。动态库(共享库)的代码在可执行程序运行时才载入内存,在编译过程中仅简单的引用,因此代码体积比较小。不同的应用程序如果调用相同的库,那么在内存中只需要有一...

2017-12-21 10:17:11

阅读数 1426

评论数 0

Android Interpolator属性动画解析

Interpolator的用法Interpolator这个东西很难进行翻译,直译过来的话是补间器的意思,它的主要作用是可以控制动画的变化速率,比如去实现一种非线性运动的动画效果。那么什么叫做非线性运动的动画效果呢?就是说动画改变的速率不是一成不变的,像加速运动以及减速运动都属于非线性运动。不过In...

2017-12-09 15:01:42

阅读数 291

评论数 1

Android webview使用漏洞案例解析

现在很多App里都内置了Web网页(Hyprid App),比如说很多电商平台,淘宝、京东、聚划算等等, 上述功能是由 Android的WebView 实现的,但是 WebView 使用过程中存在许多漏洞,容易造成用户数据泄露等等危险,而很多人往往会忽视这个问题 目录 1. 类型We...

2017-11-23 21:56:25

阅读数 465

评论数 1

java巧用软引用和弱引用避免OOM

很多人对OOM(OutOfMemory)这个错误不会陌生,而当遇到这种错误如何有效地解决这个问题呢?今天我们就来说一下如何利用软引用和弱引用来有效地解决程序中出现的OOM问题。下面是本文的目录大纲:  一.了解 强引用、软引用、弱引用、虚引用的概念  二.进一步理解软引用和弱引用  三.如何利用软...

2017-11-20 21:19:29

阅读数 320

评论数 1

Android UI性能优化案例

1、概述2015年初google发布了Android性能优化典范,发了16个小视频供大家欣赏,近期google又在udacity上开了系列类的相关课程。有了上述的参考,那么本性能优化实战教程就有了坚实的基础,本系列将结合实例为大家展示如何去识别、诊断、解决Android应用开发中存在的性能问题。那...

2017-11-18 10:01:26

阅读数 357

评论数 1

Java并发线程池,ThreadPoolExecutor解析

Executor存在的目的是提供一种将"任务提交"与"任务如何运行"分离开来的机制。虽然只有一个方法,但是却为灵活且强大的异步任务执行框架提供了基础。它提供了一种标准的方法将任务的提交过程与执行过程解耦开来,并用Runnable来表示任务。 **一、线程池*...

2017-11-16 17:34:30

阅读数 301

评论数 0

AS如何引用本地jar包问题解决方案

从Eclipse转Android Studio后,很多操作都不是很清楚,就包括jar包的使用,直到昨天出现了问题,才去找原因并解决。问题是这样的:自定义的控件打成jar包了,在其他工程中调用,在运行时出现错误,提示说在xml中的自定义控件无法填充。在xml中弹出错误,说NoClassDefFoun...

2017-10-12 15:12:13

阅读数 4058

评论数 0

android netd的工作流程解析

一、NETD解读1.1、NETD的作用Netd是Android系统中专门负责网络管理和控制的后台daemon程序,其功能主要分三大块:设置防火墙(Firewall)、网络地址转换(NAT)、带宽控制、无线网卡软接入点(Soft Access Point)控制,网络设备绑定(Tether)等。 A...

2017-09-14 18:50:25

阅读数 912

评论数 2

android netd和kernel&frameworks的通信逻辑

在应用到Linux内核之间需要一个桥梁,这个桥梁就是Netd守护进程,我们就从Netd守护进程开始去了解一些Android网络系统的工作流程。 Netd进程是通过init进程启动的,我们来看看它在init.rc中的定义: service netd /system/bin/netd c...

2017-09-13 09:29:03

阅读数 534

评论数 0

Java之Semaphore介绍

一个计数信号量。从概念上讲,信号量维护了一个许可集。如有必要,在许可可用前会阻塞每一个 acquire(),然后再获取该许可。每个 release() 添加一个许可,从而可能释放一个正在阻塞的获取者。但是,不使用实际的许可对象,Semaphore 只对可用许可的号码进行计数,并采取相应的行动。拿到...

2017-09-05 14:26:26

阅读数 299

评论数 1

android BLE蓝牙RSSI数据的读写

获取RSSI 无非就两种方法,一是在扫描回调时读取,二是在BLE连接之后读取,两种方法都比较简单,关键在于对蓝牙BLE的认识。那我首先就介绍下在 扫描回调时怎么去读。因为通常情况下,我们扫描时的设备及信息都是放在界面上,我就拿这个来说吧, 以呈现在列表上为例,首先 适配器的创建在创建适配器的时候...

2017-08-29 13:53:02

阅读数 3829

评论数 1

rsync命令排除文件和文件夹exclude

假设最开始的命令是这样的 rsync -e ‘ssh -p 30000’ -avl –delete –stats –progress demo@123.45.67.890:/home/demo /backup/ 一、排除单独的文件夹和文件 要排除sources文件夹,我们可以添加 ‘–excl...

2017-08-21 10:15:16

阅读数 1522

评论数 1

android 硬件加速 hardwareAccelerated

从Android3.0 (API level11)开始,Android的2D显示管道被被设计得更加支持硬加速了.硬加速使用GPU承担了所有在View的canvas上执行的绘制操作.   启用硬加速最简单的的方法是对整个应用启用硬件速.如果你的应用只使用标准的view和Drawable,全局启用硬...

2017-08-17 14:40:47

阅读数 337

评论数 1

android版本列表

代号、标记和细分版本 (Build) 号简要来说,Android 的开发是围绕着版本系列进行的,这些版本使用美味的点心名字(按字母顺序)作为代号。平台代号、版本、API 级别和 NDK 版本为方便起见,代号与以下版本号、API 级别和 NDK 版本相对应:代号 版本 API 级别 Nouga...

2017-08-14 09:37:40

阅读数 5167

评论数 0

有关logcat-b radio过滤的问题

在Android中不同的log写到不同的设备中,共有/dev/log/system, /dev/log/main, /dev/log/radion, /dev/log/events四中类型。其中默认Log.v等写入/dev/log/main中。Slog写入/dev/log/system中。 ...

2017-07-27 10:20:00

阅读数 496

评论数 1

android StackTraceElement的一些用法

本文简要介绍了StackTrace(堆栈轨迹)以及StackTraceElement的一些用法一、什么是StackTraceStackTrace(堆栈轨迹)可以认为是一系列方法调用过程的集合。异常处理中常用的printStackTrace()即为打印异常调用的堆栈信息。二、StackTraceEl...

2017-07-17 13:49:33

阅读数 502

评论数 1

libxxx.so has text relocations. This is wasting memory and prevents...解决方案

问题表现形式错误或警告日志当targetSdkVersion>=23且使用debug签名时,在6.0+的Android设备上运行App会输出以下错误Log:E/linker: /data/app/packagename/lib/arm/libxxx.so: has text relocati...

2017-07-14 14:13:34

阅读数 1623

评论数 2

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