[高通SDM450][Android9.0]双屏异显、双屏异触

本文介绍了在Android 9.0环境下,如何实现双屏异显和双屏异触功能。双屏异显通过使用Android源码中的ApiDemo,特别是Presentation控件来实现。双屏异触则涉及到对输入系统的修改,调整EventHub.cpp文件以识别特定设备。在遇到副屏显示内容异常的问题时,通过对LogicalDisplay.java的修改,解决了屏幕旋转和尺寸匹配的问题,确保了在不同设备上的适配性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开发平台基本信息

芯片: SDM450
版本: Android 9.0
kernel: msm-4.9

问题描述

公司有一款设备,作为收银机,需要实现双屏异显、双屏异触的功能。双屏异显功能,Android原生就支持,所以对应系统层来说,基本没有什么工作量,主要是应用跟驱动;双屏异触的话就需要额外添加。

解决方法

双屏异显

驱动怎么实现双屏异显的,我就不太清楚了;应用层的话,Android源码中有提供一个ApiDemo,把那个apk编译出来跑一下,看看效果,然后找到相应的代码就可以愉快的玩耍了,源码路径development\samples\ApiDemos

其实就是用Presentation这个控件,它继承于Dialog,简单点理解,双屏异显,其实就是在副屏显示出一个弹框,然后,在弹框内允许操作;但是,这种方式有很多局限性;比如说,只能副屏显示或者两个屏幕都显示,不可以做到副屏显示系统,主屏显示弹框。

只是我写的一个demo,仅供参考:

Android 9.0 双屏异显Demo

双屏异触

diff --git a/services/inputflinger/EventHub.cpp b/services/inputflinger/EventHub.cpp
old mode 100644
new mode 100755
index 4d9a2a0..6c9c0a9
--- a/services/inputflinger/EventHub.cpp
+++ b/services
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值