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

Genymotion模拟器sd卡的路径位置

分析Genymotion模拟器sd卡外部存储数据的位置,以4.2.2、5.1、6.0、7.0这四个版本的模拟器为例,如图所示: 1、4.2.2模拟器 注意:s文件夹是笔者自己传的文件,如果所示: 模拟器加载出来的效果如下: 2、5.1模拟器 总结:以上两个版本...

2018-07-23 20:38:04

阅读数:62

评论数:0

Android坐标分析过程

Android中有两种坐标系,分别是Android坐标系和视图坐标系。 首先看一下屏幕区域划分 //获取状态栏高度 Rect rect= new Rect(); getWindow().getDecorView().getWindowVisibleDisplayFrame(rect); i...

2018-07-20 18:59:40

阅读数:59

评论数:0

Android系统6.0源代码编译过程分析(1)

1 绪论 Android是一种基于 Linux 内核、自由开放源代码的操作系统, 由 Google 公司和开放手机联盟共同领导及开发, 主要使用于移动设备。首先就从系统源代码下载与编译过程分析开始。 2 编译环境搭建准备工作 (1) UbuntuKylin 16.04 LTS 链接内...

2018-07-16 13:11:21

阅读数:118

评论数:1

Android6.0系统View事件分发

上篇文章《快速了解Android6.0系统触摸事件工作原理——InputManagerService》分析到dispatchTouchEvent()方法来做分发事件的处理,这个分发过程分为两种情况:(1)若目前的View是普通的View,就会调用View.java的dispatchTouchEve...

2018-07-15 16:30:28

阅读数:79

评论数:0

Android中使用Fragment与RadioGroup实现页面布局切换

现在的APP主页面界面设计,一般采用的是几个按钮加上不同的Fragment来切换页面,看起来层次很清晰,让用户一目了然,下面就用Fragment和RadioGroup来实现页面之间的切换,界面设计如下图所示: 代码如下: titlebar.xml(Titlebar标题栏) &am...

2018-07-14 20:42:33

阅读数:149

评论数:0

快速了解Android6.0系统触摸事件工作原理——InputManagerService

简介 Android的事件处理是在Linux基础上完成的。事件的最开始是由硬件监听到,然后通过硬件分到Kernel,Kernel在分到框架层,最后最后框架层把事件分布到应用程序的UI中。下面就以触摸事件为例进行分析。 当有事件发生的时候,硬件首先监听到,然后InputDriver起作用,而框架...

2018-07-14 15:47:53

阅读数:224

评论数:0

Android6.0输入系统之EventHub源码分析

上篇文章《Android6.0输入系统之InputManagerService构成分析》 完成了IMS的创建,接着就沿着输入系统这条路继续往下走。 在EventHub的构造函数中,它通过INotify与Epoll机制建立起对设备点增删事件及可读状态的监听。INotify是Linux内核所提供的一...

2018-07-10 20:18:45

阅读数:140

评论数:0

Android6.0输入系统之InputManagerService构成分析

初始化 epoll 与 inotify /frameworks/base/services/java/com/android/server/SystemServer.java private void startOtherServices() { ... Slog.i(TAG,...

2018-07-10 17:14:41

阅读数:142

评论数:0

Android中自定义封装ScrollView类,实现上拉、下拉功能

本篇文章,自定义ScrollView,完成上拉、下拉 ,是继承的父类是ViewGroup(ScrollView) 主要代码如下: public class MyScrollView extends ScrollView { private View childView; pu...

2018-07-08 14:38:50

阅读数:145

评论数:0

Android中使用MD5加密工具类加密数据

MD5属于单向加密算法,加密之后无法解密,主要用于客户端的用户密码加密。MD5加密串都是32位的十六进制字符串。 public class MD5Utils { public static String MD5(String sourceStr) { String res...

2018-07-08 13:34:10

阅读数:123

评论数:0

Android下Log工具的封装

为了开发调试的方面,程序员们经常在代码中添加日志打印,这样有利于发现bug,提高软件质量,但是调试信息过多特别容易泄露隐私信息,例如用户账号密码等等。从保密方面考虑,App在上线之前需要把多余的调试信息去掉,但上线模式不是简单的把一些调试代码删除就可以,而是要通过某一个按钮或者开关来控制是否显示调...

2018-07-08 13:06:24

阅读数:102

评论数:0

Android Handler实例分析过程

通过上篇文章《Android系统Message、Handler、Messagequeue、Looper之间关系的理论简介》 的概述,如果只有理论部分,读者看起来会比较的枯燥、乏味,因此本篇文章就通过一个上层应用的实例,来分析一下Handler用法。代码如下: 1、Message.java代码: ...

2018-07-08 10:06:30

阅读数:150

评论数:0

ubuntu16.04安装Source Insigh 3.5

Source Insight 是一个功能强劲的程序编辑器,内置对C/C++,Java和x86汇编语言程序的解析;有自己的动态数据库在你编程时提供有用的文本提示。使用Source Insight阅读和修改Android系统源码是个很好的工具,但是这个工具是 .exe 的文件,怎么在Linux上使用的...

2018-07-07 09:58:06

阅读数:119

评论数:0

Android系统6.0源代码编译过程分析(2)之编译SDK及内核

通过上篇文章《Android系统6.0源代码编译过程分析(1)》分析下载Android6.0系统源码和编译源码的过程,编译源码成功后运行模拟器,如图所示: 经过漫漫长路,终于把下载源码和编译源码搞定了,接下来,继续分析编译SDK和内核。 1 编译SDK 注意:编译SDK的时候会把之前...

2018-07-06 20:21:37

阅读数:214

评论数:0

Android系统Message、Handler、Messagequeue、Looper之间关系的理论简介

1 简介 Handler获取当前线程中的Looper对象,Looper用来从存放Message的MessageQueue中取出Message(消息)的,Handler进行Message的分发和处理。 2 概念介绍 (1)Messagequeue(消息队列):用来存放通过Handler发送的消...

2018-07-06 16:55:02

阅读数:201

评论数:0

Ubuntu 16.04 安装TPM-emulator

1 安装CMake sudo apt-get install cmake 2 安装GNU MP library 下载网址:链接内容,解压,然后进入该目录 #configure #make #make check #make install 下载网址:链接内容 cd tpm-emulat...

2018-07-06 09:16:41

阅读数:124

评论数:0

Android消息机制之Message分析

在整个消息机制中,message又称为task,它封装了任务携带的信息和处理该任务的handler。尽管Message有public的默认构造方式,但是读者应该通过Message.obtain()来从消息池中获取空消息对象,以节约资源;除非消息池中没有空消息对象,就先new()消息。下面分析下Me...

2018-07-05 11:43:54

阅读数:174

评论数:0

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