自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(137)
  • 收藏
  • 关注

原创 经济理解

不是存款创造贷款,而是贷款创造存款,货币啊,主要就是贷款创造的。

2020-09-22 10:10:16 26

原创 代码段收藏与阅读有感

android 代码更新有感:1. Android O的Settings引入了PreferenceController这个包装类来实现对Preference的精细化控制,让代码结构更加地鲜明,很好地体现了单一职责原则。1.Android 名企面试题及涉及知识点整理 https://www.jianshu.com/p/735be5ece9e81.Java关键字final有“这是无法改...

2020-09-22 10:06:35 8

原创 Java的学习积累

看之前,先记录一下理解“WifiManager.java IWifiManager mService; //这里定义了一个成员变量mService, 它需要被赋值一个引用对象:这个引用对象是实现了IWifiManager 这个接口的类的一个实例-----这就解释了接口是不能有对象的;但是接口可以像“父类对象引用子类对象Father f = new Son();”的方式来引用实现了该接口的类...

2018-08-30 16:38:22 48

原创 makefile.am_make与makefile的区别_makefile编写

Makefile.am将指明工程需要哪些源文件,建造的是什么,如何安装它们。具体语法如下:option_where_PRIMARY = targets …targets是要建造的目标PRIMARY可以是下面的一个:可能值 解释where 表示目标被安装那里,可以是下面的值:可能项 解释详细的文件结构看以前的文章。[Autotools 使用一,文件结构]()在where前面还可以有一个可选项optiondist_ 分发目标(默认)。nodist_ 不分发。

2020-12-09 17:34:02 8

原创 grep文本搜索工具详解

############grep命令############这个命令属于文本处理三大命令之一,强大的文本搜索工具(贪婪模式)全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。用于过滤/搜索的特定字符。可使用正则表达式能多种命令配合使用,使用上十分灵活语法:grep [options] PATTERN [FILE...]选项:-a --text # 不要忽略二进制数据。-A <显示行数> --after-context

2020-09-22 11:03:06 21

原创 ffos:init,b2g 启动过程

try to analyze b2g ,nuwa and content process.自我疑惑问题记录与解答。。。系统物理按键按下,固件(firmware)bootloader按需加载文件到内存?(加载内核进内存),kernel run脚本?启动init进程,解析init.rc,init.b2g.rc, init进程启动b2g进程,init同时?启动一些守护进程(deamon :rild ,vold)(init启动的?),b2g?init?启动系统服务(system service)对核心服务进

2020-07-09 17:32:23 48

原创 AndroidManifest--详细理解

以6.0系统中的Settings模块源码为例讲解。<manifest/>标签层:这是整个清单文件的最上层,用来做一些最基本的声明,如(包名,权限,资源命名空间等)。老规矩,通过栗子来讲解:<manifest coreApp="true" package="com.android.settings" xmlns:android="http://schemas.android.com/apk/res/android" .

2020-06-19 15:59:58 147

原创 Framework基础:Android系统进程android.uid.system是如何来的?

Android的系统进程是SystemServer,他是怎么来的呢?init进程###Andriod的内核是linux,手机首先启动linux内核,内核第一个进程是init进程,为1号进程。如下图Paste_Image.pngapp_process 进程###/frameworks/base/cmds/app_process/app_main.cppapp_process 是init进程后进入java世界的入口,他是init进程通过解释下面的rc文件,来启动一个bin文件产生的.

2020-06-19 15:01:42 87

原创 开启服务startservice和绑定服务biindservice

Service什么是Service在后台长期运行的没有界面的组件。其他组件可以启动Service让他在后台运行,或者绑定Service与它进行交互,甚至实现进程间通信(IPC)。例如,可以让服务在后台处理网络交互,播放音乐,文件I/O,或者与ContentProvider交互。创建一个Service新建一个类,继承Service,重写相关方法,如onBind,onUnBind,onCreate,onDestorey。在AndroidManifest.xml中配置Service和相关权限。&lt

2020-06-13 17:36:10 85

原创 Android WiFi调试常用标签文件

WifiServiceWiFi的核心服务,是启动整个WiFi服务的,它在我们的logcat关注范围内WifiScanningServiceWiFi的扫描服务,一般我点开或者进入到WiFi列表页面里,这个服务在后台帮我们刷新热点,同样在logcat关注的范围内ConnectivityService关于有线与WiFi的切换,以及系统关于网络的链接,它帮忙在管着事呢,所以也在logc...

2020-04-26 10:20:46 111

原创 Android HIDL学习(6)---Fast Message Queue

快速消息队列 (FMQ)HIDL 的远程过程调用 (RPC) 基础架构使用 Binder 机制,这意味着调用涉及开销、需要内核操作,并且可以触发调度程序操作。不过,对于必须在开销较小且无内核参与的进程之间传输数据的情况,则使用快速消息队列 (FMQ) 系统。FMQ 会创建具有所需属性的消息队列。MQDescriptorSync 或 MQDescriptorUnsync 对象可通过 HI...

2020-04-08 18:23:42 76

原创 Android HIDL学习(5) ---- 设计要素

前面我们学习了如何使用HIDL来设计或者重构之前在HAL层的代码,而且也对比了一些高性能的编程方式,这里我们在来一下Android的HIDL在设计上的一些考虑。HIDL指定了数据结构和方法的命名,这些命名类似于JAVA中的类,所以HIDL的语法对于C++和JAVA程序员来说是非常熟悉的,尽管有些关键字不怎么相同,HIDL还使用JAVA的注释方式。HIDL设计目标HIDL的设计目标是为以...

2020-04-08 18:20:36 53

原创 Android HIDL学习(4) ---- 高性能比较(HIDL, FMQ, MMAP)

写在前面公司一些方案,在Andoird P上架构必须要修改成HIDL,不然会遇到一系列的Selinux的问题,所以决定还是按照标准的Android HIDL的架构重新写了方案(因为比较机密,所以不透露具体方案代码)。但是我们的这个模块对性能的要求非常高,不然咱们的设备怎么能打败竞争对手呢,怎么屹立在世界500强呢,对吧。_因为我们做的工业设备,对实时性要求比较高,但是HIDL的设计毕竟是需要...

2020-04-08 18:18:58 98

原创 Android HIDL学习(3) --- 注册回调

Android HIDL学习[3] --- 注册回调 三、回调函数 3.1 实战演练 三、回调函数我们把HAL 独立为一个单独的进程,Client 也是一个单独的进程,那么对于一般的模块而言,都是需要从底层(HAL 及 以下)获取数据,比如sensor需要获取sensor 数据,Camera需要获取 Camera的raw/yuv 等数据流。那么对于软件设计而...

2020-04-08 18:15:50 197

原创 Android HIDL学习(2) --- HelloWorld

ndroid HIDL学习[2] --- HelloWorld二、HelloWorld 2.1 准备工作 2.2 hidl_daemon 2.2.1 HIDL 接口文件定义 2.2.2 生成 HAL 相关文件 2.2.3 实现HAL实现端的共享库 2.2.4 代码调用流程 2.2.5 启动binder server端进程 2.2.6 HIDL Cli...

2020-04-08 18:13:07 158

原创 Android HIDL学习(1) --- 简介

Android HIDL学习 [1] --- 简介 一、简介 1.1 HIDL 1.2 HIDL设计 一、简介1.1 HIDLHAL接口定义语言(简称HIDL)适用于指定HAL和其用户之间的接口的一种接口描述语言(IDL)。HIDL允许指定类型和方法调用。从更更烦的意义上来说HIDL适用于在独立编程的代码库之间通信的系统。HIDL旨在用于进程...

2020-04-08 18:09:02 59

原创 Android init.rc文件简单介绍

Android init.rc文件简单介绍init.rc脚本是由Android中linux的第一个用户级进程init进行解析的。init.rc 文件并不是普通的配置文件,而是由一种被称为“Android初始化语言”(Android Init Language,这里简称为AIL)的脚本写成的文件。该文件在ROM中是只读的,即使有了root权限,可以修改该文件也没有。因为我们在根目录看到的...

2020-03-25 16:30:20 101

原创 Linux的总线-设备-驱动三者之间的关系和框架的理解(非常棒的文章---zgs)

Linux的设备驱动框架,即某类设备对应的驱动的框架。这里是“Linux总线设备驱动框架”,应该这样理解,(Linux的总线设备)驱动框架,即总线式设备对应的驱动的框架。(个人理解)1、总线总线代表着同类设备需要共同遵守的工作时序,不同的总线对于物理电平的要求是不一样的,对于每个比特的电平维持宽度也是不一样,而总线上传递的命令也会有自己的格式约束。 如I2C总线、USB总线、PCI总...

2020-02-24 11:07:05 87

原创 Kconfig文件详解

1、Kconfig的格式(1)Kconfig按照一定的格式来书写,menuconfig程序可以识别这种格式,然后从中提取出有效信息组成menuconfig中的菜单项。(2)将来在做驱动移植等工作时,有时需要自己添加Kconfig中的一个配置项来将某个设备驱动添加到内核的配置项目中,这时候就需要对Kconfig的配置项格式有所了解。(3)#开头的行是注释行。(4)menuconf...

2020-02-21 16:44:03 37

原创 android adb命令 抓取系统各种 log

getLog.bat:adb rootadb remountadb wait-for-deviceadb logcat -v time > C:\log.txt在Android中不同的log写到不同的设备中,共有/dev/log/system, /dev/log/main, /dev/log/radion, /dev/log/events四中类型。其中默认Log.v等写...

2020-01-02 14:03:11 646

原创 mtk_wlan_driver_code_analyse

1. kernel_modules/connectivity/wlan/gen4m/os/linux/gl_init.cmtk_wcn_wlan_gen2_init-> initWlan();initWlan(); ---------------wifi driver start !#if DBG //defult closed; you can open it w...

2019-12-05 13:29:20 290

原创 深入MTK平台bootloader启动之【 Pre-loader -> Lk】分析笔记

https://blog.csdn.net/forever_2015/article/details/530006431、bootloader到kernel启动总逻辑流程图ARM架构中,EL0/EL1是必须实现,EL2/EL3是选配,ELx跟层级对应关系:EL0 -- appEL1 -- Linux kernel 、lkEL2 -- hypervisor(虚拟化)EL3 -...

2019-11-12 11:48:43 67 1

原创 TEE是Trusted Execution Environment 的解释

TEE是Trusted Execution Environment的缩写简称,是可信执行环境的简称,在目前移动安全领域,TEE默认就是指的基于ARM trustzone技术的TEE,其实在芯片架构层面,TEE应该包含下面三部分:1.利用intel TXT或AMD的SVM均可提供TEE,即基于处理器CPU的特殊指令,提供动态信任根DRTM服务,为敏感应用或数据提供可信执行环境;2.利用AR...

2019-10-11 16:59:49 262

原创 Android WLAN 架构

概览Android 提供默认 Android 框架实现,其中包括对各种 WLAN 协议和模式的支持,这些协议和模式包括:WLAN 基础架构 (STA) 网络共享模式或仅限本地模式下的 WLAN 热点 (Soft AP) WLAN 直连(点对点) WLAN 感知 (NAN) WLAN RTT (IEEE 802.11mc FTM)使用 WLAN 服务的应用通过 Binder 直接与...

2019-09-06 16:39:47 182 1

原创 绑定服务Bound Service

绑定ServiceService的启动方式startServicebindService:生命周期受调用者的影响onCreate 创建onBind 绑定onUnbind 解除绑定onDestroy 销毁bindService(intent, ServiceConnection, Context.BIND_AUTO_CREATE);ServiceConnection:on...

2019-08-01 19:36:26 62

原创 扫描到AP添加AP信号弱移除该AP的LOG

Line 11456: 07-17 14:23:17.205723 1264 1264 D WifiSettings: zgs AP list is attwifi Line 11539: 07-17 14:23:18.988039 915 1007 E WifiConfigManager: Cannot find network with networkId -1 or...

2019-07-20 10:27:42 530

原创 开启WIFI的StateMachine&WifiController的LOG

StateMachine.java (z:\home\android\work\304\android\frameworks\base\core\java\com\android\internal\util): if (mDbg && mSm != null) mSm.log("handleMessage: X");StateMachine.jav...

2019-07-20 10:25:03 162

转载 Java的接口总结

Java最基本的封装是class,除此之外还有接口interface。这段时间一直在想接口有什么作用呢,有了接口有哪些好处呢。结合网络上各位大神的文章,接口的作用大概体现在以下几个方面。1.回调2.方法参数3.多态对于上面的结论,笔者自己也做了思考,并且概括为:接口是一种能力的声明或者说是一种能力的约束。从接口能力的引用方面来看,这个是能力的声明。要想被这个接口引用指向,你就必须具备某...

2019-07-20 09:46:01 32

转载 android状态机statemachine详解

原始地址:https://blog.csdn.net/maybe_windleave/article/details/9881991先说两句题外话,很感谢android,在这里能看到很多优秀的代码。同时也感觉到外面的工程师真的很厉害,都是java人家就能写出这么牛的东西。感慨之下就有了些思考:我们绝大多数人只要把那些牛人已经创造出来的牛逼的东西,记住并且弄懂就是一件非常不错的事情,至少能衣食无...

2019-07-19 18:30:37 57

转载 Android进程管理三部曲[1]-进程的创建

原始地址:https://www.jianshu.com/p/96f43244f754对于操作系统来说,进程管理是其最重要的职责之一。考虑到这部分的内容较多,因此会拆分成几篇文章来讲解。本文是进程管理系统文章的第一篇,会讲解Android系统中的进程创建。本文适合Android平台的应用程序开发者,也适合对于Android系统内部实现感兴趣的读者。概述Android系统以L...

2019-07-19 16:01:30 39

转载 Android多进程总结一:生成多进程(android:process属性)

前言正常情况下,一个apk启动后只会运行在一个进程中,其进程名为apk的包名,所有的组件都会在这个进程中运行,以下为DDMS的进程截屏:com.biyou.multiprocess为进程名,也是apk的包名,但是如果需要将某些组件(如Service,Activity等)运行在单独的进程中,就需要用到android:process属性了。我们可以给android的组件设置android:p...

2019-07-19 14:14:13 42

转载 wifi 4次握手

不管是用WEP加密,还是用WPA,一般如果我们要和AP建立一个连接,要经过两个阶段认证(Authentic)和关联(Association)的过程,下面我只说说WEP加密的情况下,是如何和AP建立连接的(WPA的基本原理是差不多的,但加密算法比WEP的复杂)。如果采用WEP加密,我们会有两种选择(开放式和共享式),如果选择开放式,那AP和客户端的认证过程是在关联过程之后的,也就是说,不需要正确的...

2019-07-17 17:21:22 318

转载 Android 之 Looper、MessageQueue、Handler 与消息循环

在android的activity中有各种各样的事件,而这些事件最终是转换为消息来处理的。android中的消息系统涉及到:*消息发送*消息队列*消息循环*消息分发*消息读取消息对应的重要类有MessageQueue、Looper、Handler,它们分别对应着消息队列、消息循环和消息处理。Handler类:Handler主要用来发送消息和...

2019-07-10 15:57:18 24

转载 android的消息机制——Handler机制

https://www.jianshu.com/p/9e4d1fab0f36能简单说得我们尽量不复杂:为了避免ANR,我们会通常把 耗时操作放在子线程里面去执行,因为子线程不能更新UI,所以当子线程需要更新的UI的时候就需要借助到安卓的消息机制,也就是Handler机制了。注意:在安卓的世界里面,当 子线程 在执行耗时操作的时候,不是说你的主线程就阻塞在那里等待子线程的完成——也不是...

2019-07-05 18:46:39 34

转载 Android GPS原理分析《手机就是开发板》

原文:https://blog.csdn.net/aggresss/article/details/54318662GPS(Global Positioning System), 即全球定位系统,它是一个由覆盖全球的24颗卫星组成的卫星系统。其目的是在全球范围内对地面和空中目标进行准确定位和监测。随着全球性空间定位信息应用的日益广泛,GPS提供的全时域、全天候、高精度定位服务将给空间技术、地...

2019-04-18 10:55:59 210

转载 [Android从头再来] App启动过程

App启动方式如何启动App呢?说到底就是点击屏幕的App图标。但是点击的时候会发现有时进入App首页很快,有时很慢,有时中间还有个白屏。有时中间还有个黑屏。造成这样的情况,是什么原因呢?我们先从App启动的方式开始说起。冷启动热启动 冷启动冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用。冷启动的特点:因为系统会重新创建一个新...

2019-02-14 14:31:31 91

转载 android 7.0中Settings新功能全面解析

https://blog.csdn.net/h_gao/article/details/58201121   //建议看原文, 原文有图片Settings N预览android N 在Settings中作了一些调整,如上面的截图。增加了侧滑菜单,采用v4下的DrawerLayout来实现;在Settings主界面增加了Condition,能够在设置列表中显示状态;在Setting...

2019-01-05 11:47:38 281

原创 NotificationCopat.Builder全部设置

https://www.cnblogs.com/kexing/p/8371051.html1.方法:setContentTitle(CharSequence title)     功能:设置通知栏标题。     例子:setContentTitle("测试标题")。  2.方法:setContentText(CharSequence text)     功能:设置通知栏显示内容。  ...

2018-12-21 14:03:37 140

转载 Android wpa_supplicant源码分析--启动之全局初始化

1. wpa_supplicant简介wpa_supplicant是用来用来支持无线中各种加密方式的,包括WEP、WPA/WPA2和WAPI(中国特有)、EAP(8021x)。wpa_s通过socket与上层(framework)和底层(driver)通信,向上接收命令和传递当前状态,向下发送命令到驱动并接收驱动上传的各种event,严格来讲wap_s和driver中还有一层cfg80211,c...

2018-10-17 20:36:16 180

转载 wpa_supplicant 常用操作

wpa_supplicant是一个连接、配置WIFI的工具,它主要包含wpa_supplicant与wpa_cli两个程序. 可以通过wpa_cli来进行WIFI的配置与连接,前提要保证wpa_supplicant正常启动启动wpa_supplicant应用 wpa_supplicant -D nl80211 -i wlan0 -c /etc/wpa_supplicant.conf -B1...

2018-10-17 20:14:20 14185

空空如也

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

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