0

我在 Android R aosp (android-11.0.0_r29) 中进行了以下更改,以启用多显示并在模拟器上进行测试。但是当我使用模拟器设置添加另一个显示器时,我看到了空白屏幕(屏幕截图),即使在重新启动/重新启动模拟器后也没有运气。

更改完成platform/packages/services/Car/service/res/values/config.xml

<string-array translatable="false" name="config_occupant_zones">
    <item>occupantZoneId=0,occupantType=DRIVER,seatRow=1,seatSide=driver</item>                 
    <item>occupantZoneId=1,occupantType=FRONT_PASSENGER,seatRow=2,seatSide=oppositeDriver</item>         <!--Newly added -->
</string-array>

<string-array translatable="false" name="config_occupant_display_mapping">
    <item>displayPort=0,displayType=MAIN,occupantZoneId=0</item>                        <!-- Newly added -->
    <item>displayPort=1,displayType=INSTRUMENT_CLUSTER,occupantZoneId=0</item>          <!-- Newly added -->
</string-array>

根据训练营视频,我可以看到为 Main、Instrument Cluster 和 Front Passenger 配置的模拟器

我错过了任何其他配置吗?

4

2 回答 2

0

您还需要设置: BUILD_EMULATOR_CLUSTER_DISPLAY := true

于 2021-03-28T16:35:46.140 回答
0

Android-R(11) 支持多屏需要采取以下措施。

注意:您的设备文件夹可能不同。因为我使用的是默认的 AAOS 模拟器。

移动config.xml到覆盖文件夹,例如device/generic/car/emulator/cluster/overlay/packages/services/Car/service/res/values

现在,在device/generic/car/emulator/clusterdisplay_settings.xml内部创建

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<display-settings>
    <!-- Use physical port number instead of local id -->
    <config identifier="1" />
 
    <!-- Display settings for cluster -->
    <display name="port:1" forcedDensity="120" dontMoveToTop="true" />
</display-settings>

将此文件添加到产品复制规则中

PRODUCT_COPY_FILES += \
    device/generic/car/emulator/cluster/display_settings.xml:vendor/etc/display_settings.xml
DEVICE_PACKAGE_OVERLAYS += \
    device/generic/car/emulator/cluster/overlay

最后导出变量

export BUILD_EMULATOR_CLUSTER_DISPLAY=true

现在,再次构建模拟器。你会看到多个屏幕。

默认情况下,多显示器支持已集成到 Android-S 中。只需要导出变量BUILD_EMULATOR_CLUSTER_DISPLAY并构建模拟器。

于 2022-01-18T15:26:18.457 回答