![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android系统
VaderZhang
大学生
展开
-
Android10 高通平台 softap热点基本流程2
上一篇讲到SoftApManager.IdleState状态中处理CMD_START消息,这个消息用来打开热点功能。我们从这里继续看热点功能基本流程。public boolean processMessage(Message message) { switch (message.what) { case CMD_START: WifiConfiguration config = (WifiConfiguration) message.obj;原创 2020-10-13 10:50:50 · 2667 阅读 · 1 评论 -
Android10 高通平台 softap热点基本流程1
softap的入口在ConnectivityManager.java中,作为连接的一部分。老版本Android的入口在WifiManager.java中。应用启动softap时,调用ConnectivityManager.startTethering()开始。 @SystemApi @RequiresPermission(android.Manifest.permission.TETHER_PRIVILEGED) public void startTethering(int type原创 2020-10-13 10:49:43 · 3387 阅读 · 0 评论 -
android4.4 自动休眠简介(1)
在分析电源管理时,提到设备休眠时,由应用写/sys/power/state来实现休眠。在Android系统中,当系统因为一次网络包唤醒后,将会很快再次进入休眠,已达到节省电量目的,这次休眠是系统自动发起的。我们现在分析这次自动休眠的流程。在PowerManagerService.java中,有检测亮灭屏的一个类DisplayBlankerImpl。在DisplayBlankerImpl中,通过检...原创 2019-10-23 16:36:05 · 848 阅读 · 0 评论 -
Android固件firmware使用方法
1.kernel/drivers/base/firmware_class.c@@ -299,6 +299,8 @@ static void fw_free_buf(struct firmware_buf *buf) static char fw_path_para[256]; static const char * const fw_path[] = { fw_path_pa...原创 2019-02-14 17:24:09 · 7557 阅读 · 0 评论 -
ConnectivityService处理wifi连接
ConnectivityService用来管理系统中所有网络,谁能连接,谁需要断开。在连接一个网络是,收集网络信息,通过ConnetivityManager提供给应用使用。在WIFI连接过程中,到链路层L2ConnectedState状态时,有:class L2ConnectedState extends State { @Override public void en...原创 2019-03-17 19:25:50 · 2655 阅读 · 0 评论 -
Android源码和Linux内核源码在线浏览地址
一个实时更新的Android&Linux源码在线浏览地址,支持函数跳转等功能。看源码时,配合使用挺方便,以下为地址:http://androidxref.com/原创 2018-08-08 21:04:47 · 815 阅读 · 0 评论 -
高通WCNSS驱动简析
在加载WIFI驱动之前,首先需要把WCNSS(Wireless connectivity subsystem)运行起来,这就需要wcn驱动的帮助,通过wcn驱动来启动wncss,让wcn chip和和ccpu工作起来。wcn驱动程序在kernel目录/kernel/driver/net/wireless/wcnss/wcnss_wlan.c。驱动入口:static int __init wcn...原创 2019-07-17 17:07:09 · 7721 阅读 · 2 评论 -
Android临时和永久关闭selinux
当我们想要临时关闭selinux时,如果可以获得root权限,通过adb如下指令可以临时关闭selinux:setenforce 0如果需要长期关闭,则需要用其他方法,先看slinue启动的位置:Android启selinux从init开始。在init.cpp中有:static void selinux_initialize(bool in_kernel_domain) { Ti...原创 2019-08-02 21:42:35 · 23871 阅读 · 1 评论 -
Android没有图标的APK打开方法
在安装完成一个APK后,发现没有生产图标,但是需要马上使用,要如何而处理呢?以下所有指令在adb shell中完成。1.找到APK的包pm list packages执行该指令,找到APK的包,比如我安装的是一个指南针应用,通过该指令找到这个包:memsic.compass_rev42.找到APK包的MainActivitydumpsys package | grep "compa...原创 2019-09-19 12:01:57 · 6757 阅读 · 0 评论