欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

android编译错误FCM

程序员文章站 2022-07-13 21:59:43
...

android编译报错

ed_vendor_manifest.xml"
Error: The following instances are in the device manifest but not specified in framework compatibility matrix: 
    aaa@qq.com::IFingerprintAuthenticator/default
    aaa@qq.com::IFingerprintCalibration/default
    aaa@qq.com::IFingerprintEngineering/default
    aaa@qq.com::IFingerprintNavigation/default
    aaa@qq.com::IFingerprintRecalibration/default
    aaa@qq.com::IFingerprintSenseTouch/default
    aaa@qq.com::IFingerprintSensorTest/default
    aaa@qq.com::IDms/default
    aaa@qq.com::ISwfingerprint/default
Suggested fix:
1. Check for any typos in device manifest or framework compatibility matrices with FCM version >= 2.
2. Add them to any framework compatibility matrix with FCM version >= 2 where applicable.
3. Add them to DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE or DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE.
10:39:53 ninja failed with: exit status 1

#### failed to build some targets (11:08 (mm:ss)) ####

1.在AP/device/qcom/msm8937_64/manifest.xml文件下新增

<hal format="hidl">
        <name>com.fingerprints.extension</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IFingerprintSensorTest</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintEngineering</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintAuthenticator</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintCalibration</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintNavigation</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintRecalibration</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintSenseTouch</name>
            <instance>default</instance>
        </interface>
    </hal>

2. 然后编译

make vendorimage

报错

android编译错误FCM

 

 原因分析

(1)通过报错信息out/target/product/msm8937_64/verified_assembled_vendor_manifest.xml这个文件中没有com.fingerprints.extension,说明没有对应的配置

(2)由于在AP/device/qcom/msm8937_64/manifest.xml添加了框架兼容性矩阵FCM,说明verified_assembled_vendor_manifest.xml中的配置项com.fingerprints.extension来自于其他文件的解析,经过搜索发现,没有在AP/hardware/interfaces/compatibility_matrices/compatibility_matrix.3.xml下添加与之对应的FCM,需要在文件对应位置AP/hardware/interfaces/compatibility_matrices/compatibility_matrix.3.xml新增

 <name>com.fingerprints.extension</name>
        <version>1.0</version>
        <interface>
            <name>IFingerprintSensorTest</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintEngineering</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintAuthenticator</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintCalibration</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintNavigation</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintRecalibration</name>
            <instance>default</instance>
        </interface>
        <interface>
            <name>IFingerprintSenseTouch</name>
            <instance>default</instance>
        </interface>
    </hal>
	<hal format="hidl">
        <name>vendor.sw.swfingerprint</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>ISwfingerprint</name>
            <instance>default</instance>
        </interface>
    </hal>
    <hal format="hidl" optional="false">

3.再次编译make vendorimage

android编译错误FCM