
Android
文章平均质量分 82
xhBruce
黑夜
双城
|
加法
减法
断舍离
展开
-
IME关于输入法横屏全屏显示问题-Android14
或者代码设置mEdtView.setImeOptions(EditorInfo.IME_FLAG_NO_FULLSCREEN);属性是framework内部使用。即xml布局中 android:imeOptions="flagNoFullscreen"覆盖onEvaluateFullscreenMode方法,返false就可以了。如Android14上google输入法。属性并不一定生效,假如输入法应用覆盖了 onEvaluateFullscreenMode。设置 imeOptions。原创 2025-01-26 11:43:18 · 1142 阅读 · 0 评论 -
Android 镜像模式和扩展模式区别探讨-Android14
当前LogicalDisplay是否有内容显示DisplayContent.java#mLastHasContent。有Activity启动到扩展屏上,就表示扩展屏上有显示内容,即 mHasContent=true。当前DisplayContent是否有内容显示。上默认扩展屏没有显示内容。上默认扩展屏没有显示内容。,扩展屏显示的是主屏。,扩展屏显示的是主屏。原创 2024-12-07 23:32:52 · 1109 阅读 · 0 评论 -
IMS添加实体按键流程 - Android14
IMS添加实体按键流程 - Android141、实体按键信息(Mi 9 左侧实体按键)2、硬件添加2.1 内核添加设备节点2.2 Generic.kl映射文件2.3 映射文件文件加载loadKeyMapLocked2.4 addDeviceLocked 添加设备相关对象3、keycode对应scankode4、KeyEvent.java 添加对应keycodeInputReader线程获取输入事件-Android121、实体按键信息(Mi 9 左侧实体按键)getevent 获取按键节点/de原创 2024-10-06 01:09:08 · 1219 阅读 · 0 评论 -
Android主副屏显示-Android14
获取 DisplayDeviceInfo。获取 DisplayDevice。原创 2024-09-09 21:17:07 · 3033 阅读 · 0 评论 -
DisplayManagerService启动及主屏添加-Android13
DisplayManagerService启动-Android131、DisplayManagerService启动1.1 简要时序图二级目录三级目录1、DisplayManagerService启动1.1 简要时序图二级目录三级目录原创 2024-09-06 01:09:28 · 843 阅读 · 0 评论 -
旧手机NAS方案
套娃,所以需要映射ssh的22端口,开机完成后,手指在软件的左上方向右滑,会出现菜单,如下图所示;然后映射ssh的22端口到手机的2222端口,选择 [1]QEMU,输入 hostfwd_add tcp::2222-:22。如果想要修改root密码, 输入 passwd ,需要输入两次新密码。查看路由器连接ip地址链接 ssh root@ip -p 8022。然后切换到root账户,输入sudo -s 密码:alpine。开机后,登录系统,用户 alpine 密码: alpine。原创 2024-08-12 01:26:58 · 1749 阅读 · 0 评论 -
【Android Compose】ListView效果
Compose 中的三个基本标准布局元素是 Column、Row 和 Box 可组合项。原创 2024-07-22 05:26:10 · 694 阅读 · 0 评论 -
Android最近任务显示的图片
实际截图缓存 SurfaceControl.captureLayersExcluding -> ScreenshotClient::captureLayers -> SurfaceFlinger::captureLayers。:不允许截图真实的屏幕截图,但我们应该尝试使用应用程序主题来创建应用程序的虚假表示。:截图一张真实的屏幕截图作为快照。应用设置导航栏可避免图片底部黑条。原创 2024-07-07 07:04:38 · 840 阅读 · 0 评论 -
SystemUIService启动-Android13
【代码】SystemUIService启动-Android13。原创 2024-07-07 02:07:41 · 800 阅读 · 0 评论 -
【IVI】car_service 命令行工具
如需将档位设置为“行驶”,而使速度仍为 0(模拟指向。如需将速度设为每秒 30 米(模拟指向。如需将档位设置为“停车”(模拟指向。原创 2024-07-01 01:17:03 · 1614 阅读 · 4 评论 -
【IVI】CarService启动-Android13
【IVI】CarService启动中绑定CarServiceICarImpl初始化各种服务。原创 2024-06-30 17:47:35 · 499 阅读 · 0 评论 -
Window上ubuntu子系统编译Android
build/soong/ui/build/build.go 修改限制。原创 2024-06-16 18:25:52 · 645 阅读 · 0 评论 -
AOSP : Android编译记录
Android.bp 或 Android.mk。frameworks/base下编译: mm。原创 2024-06-16 02:34:08 · 636 阅读 · 1 评论 -
Android获取CPU的使用率
日志:avc: denied { getattr } for path=“/proc/stat” dev=“proc” ino=4026532043 scontext=u:r:system_app:s0 tcontext=u:object_r:proc_stat:s0 tclass=file permissive=1。 a)把第一次的所有cpu使用情况求和,得到cpu1;idle对应第四列的数据,用第二次的第四列 - 第一次的第四列即可。这里读取一行,就是总的CPU使用率计算;原创 2024-06-15 10:07:30 · 998 阅读 · 0 评论 -
Android SELinux
在/dev/中加载sepolicy并发布关键的restorecons,小心避免从/system读取任何内容。- 设备处于SELinux的宽容模式,出厂设备都是强制模式Enforcing(即。3、mk添加编译:BOARD_SEPOLICY_DIRS += device/1、通常情况下,添加或修改自己的设备专用SELinux文件(/device/结尾的文件是 SELinux 政策源代码文件,用于定义域及其标签。- 要访问的对象(例如,文件、套接字)的类型。- 要执行的操作(或一组操作,例如读取、写入)。原创 2024-05-26 12:13:19 · 1201 阅读 · 0 评论 -
WifiConfigStore初始化读取-Android13
【代码】WifiConfigStore初始化读取-Android13。原创 2024-02-07 10:59:50 · 1103 阅读 · 0 评论 -
STA双WiFi连接
Android 12 引入了 Wi-Fi STA/STA 并发功能,使设备可同时连接到两个 Wi-Fi 网络。原创 2024-02-06 15:12:54 · 1440 阅读 · 0 评论 -
Android WiFi Service启动-Android13
启动过程不在赘述,主要处理类。,主要WiFi连接处理。原创 2024-01-14 03:10:26 · 1623 阅读 · 0 评论 -
Android WiFi 连接
【代码】Android WiFi 连接。原创 2024-01-07 22:45:21 · 3229 阅读 · 0 评论 -
Android WiFi基础概览
2.4GHz 频段支持以下标准(802.11b/g/n/ax),5GHz 频段支持以下标准(802.11a/n/ac/ax),由此可见,802.11n/ax 同时工作在 2.4GHz 和 5GHz 频段,所以这两个标准是兼容双频工作。API 与 WLAN 框架和硬件进行交互。Wi-Fi 服务在系统服务中运行,这类服务位于 packages/modules/Wifi/service/wificond 进程通过标准的 nl80211 命令与 Wi-Fi 驱动程序进行通信。应用代码位于应用框架级别,它使用各种。原创 2024-01-05 20:48:38 · 1250 阅读 · 0 评论 -
FingerprintService启动-Android13
接收来自FingerprintManager的调用。对于fwk层实质是一样的,之前只是区分。,这里注册的Binder服务。调用指纹厂商TA so库。从HAL中获取,转化成。原创 2024-01-01 01:57:07 · 1993 阅读 · 0 评论 -
Settings中电池选项-Android13
【代码】Settings中电池选项-Android13。原创 2023-12-24 01:53:24 · 2913 阅读 · 0 评论 -
通话状态监听-Android13
处于无电话活动,相当于电话挂断,不过要先有。主要查看 framework.jar。原创 2023-12-17 23:34:33 · 2835 阅读 · 0 评论 -
屏幕超时休眠-Android13
该属性实质在fwk中是Integer保存,获取方式。在设置屏幕超时代码代码中,最大值可以为“的值,用户活动超时时调用。,但是实质最大值只能是。原创 2023-12-17 00:29:28 · 3892 阅读 · 1 评论 -
USB偏好设置-Android13
通过UsbManager.java、UsbService.java、UsbDeviceManager.java设置。广播监听刷新 onUsbConnectionChanged > refresh。原创 2023-11-11 03:55:18 · 3433 阅读 · 3 评论 -
HAL服务整编错误处理
是用于指定 HAL 和其用户之间的接口的一种接口描述语言 (IDL)。HIDL 允许指定类型和方法调用(会汇集到接口和软件包中)。从更广泛的意义上来说,HIDL 是指用于在可以独立编译的代码库之间进行通信的系统。从 Android 10 开始,HIDL 已废弃,Android 将在所有位置改用。selinux自动生成配置工具:项目中 external/selinux/python/audit2allow/audit2allow。1、注意每个项目ap\bp仓编译不同的分支。对应目录要有编译生成的。原创 2023-11-01 15:03:35 · 1726 阅读 · 1 评论 -
Android framework服务命令行工具框架 - Android13
这里强调“framework服务”,主要就是bin命令模拟framework服务相关的查询和功能,如am\pm\input等;其实质就是 Android 提供了大多数常见的 Unix 命令行工具,说白了就是bin执行程序。而framework服务命令行工具现在一般就是cmdbin执行程序Binder获取对应服务,通过调用对应服务的。原创 2023-10-28 12:02:50 · 873 阅读 · 0 评论 -
SystemUI状态栏
日志开关是src-debug和src-release版本区别。通过设置属性,重启应用;原创 2023-10-07 00:11:43 · 1389 阅读 · 0 评论 -
SystemUI导航栏
资源进行叠加,而settings的Secure表中。点击设置后,导航栏模式通过。:记录导航栏模式改变值。:通知导航栏模式改变的。原创 2023-10-04 12:19:30 · 2004 阅读 · 0 评论 -
Repo 命令参考资料
Repo 简化了跨多个代码库运行的流程,与 Git 相辅相成。转载 2023-09-24 22:20:13 · 195 阅读 · 0 评论 -
Input子系统 - Kernel驱动程序 - Android
定义了一组标准事件类型和代码。原创 2023-09-16 18:17:59 · 774 阅读 · 0 评论 -
相机HAL
该相机框架还支持 HIDL 相机 HAL,不过,在 Android 13 或更高版本中添加的相机功能只能通过 AIDL 相机 HAL 接口使用。如需在升级到 Android 13 或更高版本的设备上实现此类功能,设备制造商必须将其 HAL 进程从使用 HIDL 相机接口迁移到使用 AIDL 相机接口。借助额外的控制能力,您可以更轻松地在 Android 设备上构建高品质的相机应用,这些应用可在多种产品上稳定运行,同时仍会尽可能使用设备专用算法来最大限度地提升质量和性能。捕获的优先级高于重复请求的优先级。原创 2023-09-13 10:10:06 · 927 阅读 · 0 评论 -
Android开机动画
对应启动入口:/frameworks/base/cmds/bootanimation/bootanimation_main.cpp。frameworks/base/cmds/bootanimation/BootAnimation.cpp,例如。使用BootAnimation程序显示开机画面,如需修改开机画面,不用修改代码,只需按格式要求做。SurfaceFlinger进程名:bootanim。也是读出根目录下的xx.rle,并显示为开机画面。原创 2023-09-04 11:02:24 · 2363 阅读 · 0 评论 -
WMS中Binder案例
AIDL形式是Android中binder机制的具体实现。,SystemServer.java中服务初始化添加到ServiceManager中。原创 2023-09-01 10:08:34 · 278 阅读 · 0 评论 -
SurfaceFlinger中Binder案例
SurfaceFlinger中Binder案例1、SurfaceFlinger服务init启动2、SurfaceFlinger服务继承BnSurfaceComposer端2.1 Code标签扩展2.2 Code标签扩展对应调用3、SurfaceFlinger服务的BpSurfaceComposer端3.1 FWK使用案例3.2 Native使用案例android12-release1、SurfaceFlinger服务init启动SurfaceFlinger启动-Android12SurfaceF原创 2023-08-31 21:20:40 · 784 阅读 · 0 评论 -
SensorService中Binder案例
对应Bp客户端获取查看。方法一边Bp客户端调用,对应Bp客户端获取查看。实际操作Native层。实际操作Native层。实际操作Native层。原创 2023-08-24 09:13:26 · 276 阅读 · 0 评论 -
IMS中Binder案例
(即是 IInputManager.Stub.asInterface(ServiceManager.getServiceOrThrow(Context.INPUT_SERVICE)),InputManager继承。JNI调用到Native层,形式是Android中。形式是Android中。原创 2023-08-23 17:39:21 · 340 阅读 · 0 评论 -
WMS:SurfaceView绘制显示
构造函数中获取,并设置继承RunnableThread中运行,并在这里等待vsync到来的通知消息线程并发处理Lock和Condition中通知另一条线程更新画面@Override// draw();//画蓝色或绿色@Override@Override@Overridetry {//在这里等待vsync到来的通知消息draw();//画蓝色或绿色try {//如果为双数则画面画成蓝色} else {//如果为单数则画面画成绿色。原创 2023-08-16 17:42:44 · 351 阅读 · 0 评论 -
Android多屏幕支持-Android12
为了同时支持多个以单个屏幕为目标的输入源,可以将 Android 10 配置为支持多个聚焦窗口,每个屏幕最多支持一个。**解决方案:**在极少数情况下,来自同一进程的两个窗口都处于聚焦状态,则系统仅向在 Z 轴顺序中较高的窗口提供焦点。否则,它会被分派到聚焦屏幕(即用户最近与之交互的屏幕)中的聚焦窗口。不过,键盘(硬件或软件)的输入只能进入最顶层的 activity(最近启动的应用)。通过创建隐藏的虚拟屏幕,即使在主设备屏幕上使用软件键盘,恶意应用也可以获取用户输入。中,系统还会单独跟踪聚焦窗口。原创 2023-08-13 21:03:55 · 1914 阅读 · 0 评论 -
ActivityOptions副屏启动
Application 创建。和相关方法一起使用的选项。帮助程序类,用于构建可与。原创 2023-08-09 08:55:19 · 2409 阅读 · 0 评论