2017-11-30 17 views
0

새로운 Audio HAL을 추가하기 위해 [email protected] :: IDevicesFactory를 확장하려고합니다.Android O : HIDL 파일 확장 오류

그래서 전체 2.0 폴더를 2.1 폴더에 복사하고 인터페이스를 확장하려고 시도했습니다.

package [email protected]; 

import [email protected]::types; 
import [email protected]::IDevicesFactory; 
import [email protected]; 
import IDevice; 

interface IDevicesFactory EXTENDS [email protected]::IDevicesFactory { 
    typedef [email protected]::Result Result; 

    enum Device : int32_t { 
     PRIMARY, 
     A2DP, 
     USB, 
     R_SUBMIX, 
     STUB, 
     MY_HAL 
    }; 
}; 

[가독성 제거 코드 해설] 난 단지 그 열거에 MY_HAL를 추가 할

이 나의 새로운 IDevicesFactory.hal 파일입니다.

모든 인터페이스를 확장해야하는지 잘 모르겠지만 그렇게하겠습니다. 또한 2.1 폴더의 모든 소스를 @ 2.1 HIDL (네임 스페이스 및 유형 등)을 사용하도록 수정합니다.

나는 hardware/interfaces/update-makefiles.sh를 실행 시도하고 오류 다음 발생 : 구문 오류가 왜

[email protected]:~/andsrc/android-8.0.0_r12$ hardware/interfaces/update-makefiles.sh 
Updating makefiles for android.hardware in hardware/interfaces. 
Updating [email protected] 
Updating [email protected] 
ERROR: syntax error at hardware/interfaces/audio/2.1/IDevicesFactory.hal:8.27-33 
ERROR: syntax error at hardware/interfaces/audio/2.1/IDevicesFactory.hal:19.2 
ERROR: Could not parse [email protected]::IDevicesFactory. Aborting. 

내가 이해가 안 돼요. 누군가 내가 놓친 것을 안내 할 수 있습니까?

답변

0

문제점을 찾았습니다.

나는 HIDL의 문법을 잘못 해석, 나는 또한 I가 원하는 방식으로 HIDL을 확장하는 아마 불가능하다는 것을 발견 extends

+0

대문자 EXTENDS 대신 소문자를 사용했다. – GPS