之前了解android的消息处理机制,但是源码看的少,现在把Looper,Handler,Message这几个类的源码分析一哈android的消息处理有三个核心类:Looper,Handler和Message。其实还有一个Message Queue(消息队列),但是MQ被封装到Looper里面了,我们不会直接与MQ打交道,因此我没将其作为核心类Looper源码:Looper的字面意思是“循环者”,
# 如何实现"android cutils" ## 流程图 ```mermaid flowchart TD A(开始) B(了解android cutils) C(导入android cutils库) D(编写代码) E(调试) F(完成) A --> B B --> C C --> D D --> E E
原创 2024-05-15 05:10:00
158阅读
# 在 Android Studio 中使用 CMake 添加 cutils 的科普文章 ## 介绍 在 Android 开发中,CMake 是一个强大的构建工具,帮助开发者以更简洁的方法管理 C/C++ 代码。`cutils` 是 Android 提供的一个实用程序库,通常用于处理常用的功能,如字符串操作、文件I/O 等。将 `cutils` 集成到 Android Studio 项目中,可
原创 2024-08-01 09:53:25
163阅读
1. 根目录instruction:文件夹名内容art全新的ART运行环境bionic系统C库bootable系统启动引导代码build存放Android系统编译规则,以及generic等基础开发配置包。ctsAndroid 兼容性测试套件标准dalvikDalvik虚拟机developers开发者目录,包含构建App和一些demo代码development与应用成虚开发相关device设备相关配
转载 2023-08-23 12:11:09
153阅读
一、首先我是在win7下通过wubi安装的Ubuntu10.04 64位,wubi安装最多只能分配30g空间,如果需要编译Android则空间不够,可以参照https://help.ubuntu.com/community/ResizeandDuplicateWubiDisk 来分配更多的空间,需要注意的是一开始使用wubi安装可以只分配它默认的最小空间给Ubuntu,然后再根据上面的方
转载 2023-07-24 13:20:07
102阅读
Android编译完成后,会在out文件夹中产生一个Android代码结构,我们将会详细为大家讲解这一代码结构,以方便大家学习。当我们在对Android操作系统进行编程后,会产生一个结构严密的Android代码结构,那么大家可以从这篇文章中对这一结构进行详细的分析,以此为参考,来加深大家对这一操作系统的认识,方便大家今后的开发。Android编译完成后,将在根目录中生成一个out文件夹,所有生成
Looper不会停止的消息处理机Reference 4 Looper Source 4 Looper从字面上了解是“循环者”,也就是在不停的循环状态。所谓Looper线程就是循环工作的线程。在程序开发中我们经常会需要一个线程不断循环,一旦有新任务则执行,执行完继续等待下一个任务,这就是Looper。 这里请不要把Looper与线程之间的概念相混淆,Looper其实可以看作线程的一个功能。一个普通
handler是我们android开发一定会用到的,如果说你没用到,那你还说是做android开发的,谁都不信,上帝也不会相信的,但是如果只停留在使用上,而不去分析内部实现,如果你去面试问你这个都不会,估计不太好吧,至少在面试官的影响中肯定是减分的.我们知道Handler里面会涉及到几个类,都说轮询也就是Looper,还有什么消息队列,就是MessageQueue,那么他们之间是什么关系呢? 那就
转载 2023-11-20 08:03:08
29阅读
背景Invalidate() 是 Android 中 View 的方法,通常我们使用它来完成UI的刷新,作用如果这个 View 可见那么 onDraw() 方法将在未来某个时间点被调用。问题invalidate() 会触发那些 view 的重绘,invalidate() 绘制流程是如何实现的?我们带着问题来从源码开始分析:源码分析一、View 与 ViewGroup 的层级在 Android
android源码结构分析 frameworks 目录 (核心框架——java及C++语言).|-- base    (基本内容)|   |-- api   (?都是xml文件,定义了java的api?)|   |-- awt   (AWT库)|   |-- buil
在顺序表中,每个结点的存储地址是该结点在表中的位置的线性函数,是一种随机存取结构。顺序表是用向量实现的线性表,向量的下标可以看作结点的相对地址。在linux下,配置多个IP的话,通常是eth0.0.. eth0.1 ..eth0.x等等, 那么如果要配置大量的IP呢,这么配置也是可以的,但是繁琐,虽说这种情况很少。graph.h#pragma once #include"UFs
一、概述对于每个安卓程序猿来说,图片的加载是最常见问题,不管是简单的单一图片还是炫酷的gif图片,大家都应注意的问题OOM,当然对于有点经验的人来说,在开发阶段就会注意这个问题了,解决措施也很简单,利用缓存策略LruCache和DisLruCash,在内存不足时清除缓存,当然这个方法需要自己去写一些ImageLoader,现在没人回自己去写这个了,因为有大神的杰作,就是本文的主人公Glide;二、
转载 2023-06-26 15:49:58
112阅读
有时候我们需要在源码环境中增加自己的应用或模块,随ROM一起发布。 下面讲述相关步骤: 1. 首先可以在SDK环境下进行编码设计(如果你的APP不涉及到emulator无法模拟的硬件的话) 2. 在SDK环境基本调试OK 3. 将源代码复制到 $Android_Src/packages/apps/目录下,假设你的模块为 MyApplication 4. 在MyApplication目录下新
转载 2023-09-12 20:02:19
165阅读
前言:在Android源码中最常用到的Builder模式,就是AlertDialog.Builder,使用该Builder来构建复杂的AlertDialog对象。 首先来看使用方法:AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Title").setMessage("Messa
转载 2023-09-08 09:35:35
86阅读
1、360新版特性界面源代码实现了360新版特性界面的效果,主要涉及到Qt的一些事件处理与自定义控件。但源码好像是c++。 2、aidl跨进程调用服务端onBind暴露,然后客户端bindService得到aidl对象 3、UI设计之 仿做蘑菇街UI设计 源码包含viewflipper 用来显示一个展示幻灯片banner 用到了OnGestureListener,OnTouch
转载 2024-08-30 17:03:16
43阅读
在上篇文章中,介绍ANR产生的原因、ANR的分类以及ANR问题的分析。本篇文章接下来将从源码的角度来分析ANR产生的过程,首先介绍InputDispatcher Timeout产生的过程。在ANR产生时,最终都会调用到appNotResponding()方法,该方法在Android 7.0以前定义在ActivityManagerService.java类中,在Android 7.0中定义在AppE
文章目录1 源码下载2 源码编译、导入Studio3 遇到的问题1 mac 默认是不区分大小写的,所以需要分区去下载源码。2 解决 repo sync error: Exited sync due to fetch errors3 error: in `sync -f`: revision refs/tags/android-8.1.0_r1 in platform/art not found4
Android 常用工具类源码大全 1、HttpUtils Http网络工具类,主要包括httpGet、httpPost以及http参数相关方法,以httpGet为例: static HttpResponse httpGet(HttpRequest request) static HttpResponse httpGet(java.lang.String httpUrl) static St
转载 2024-01-24 22:29:00
43阅读
前言之前用Android Studio开发了各式各样的APP,但那基本都是应用层应用,即便是通过设置android:sharedUserId="android.uid.system"将应用设为系统级应用,也始终有些美中不足,于是就有了本文正文aosp的源码根目录packages里面收录了设备出厂自带的各系统级应用 这里,新建一个dev文件夹作为外部开发的系统级应用项目存放目录,接下来就是开发一个A
转载 2023-06-26 11:10:00
106阅读
(JamsMusicPlayer)非常棒的音乐播放器(new)  (F8)日程安排的软件   (Conversations)基于XMPP的应用   (Bitocle)能够在手机上查看自己github上的项目   (Amphitheatre)Android TV应用,数据来源于TMDb,没看执行效果,但感觉有JakeWhart
转载 2023-11-22 09:23:27
94阅读
  • 1
  • 2
  • 3
  • 4
  • 5