2 개의 별도 Android 앱 (apk)이 있습니다.AIDL을 통해 SurfaceHolder를 전달하는 방법은 무엇입니까?
앱 1은 내부에 SurfaceView
을 생성하며 다른 앱이 SurfaceView
에 대해 SurfaceHolder
의 인스턴스를 얻으려면 AIDL 방법을 제공해야합니다. 따라서 다른 앱은 앱 번호 1에 표시되는 해당보기를 그릴 수 있습니다.
Parcelable 인터페이스를 구현하므로 Surface
자체를 쉽게 aidl을 통해 전송할 수있었습니다.
// IMainService.aidl
package com.commonsware.cwac.preso.demo.service;
import android.view.Surface;
interface IMainService {
Surface getSurf();
}
그러나 제 3 자 SGD는 그림을 그릴 때 SurfaceHolder
이 필요합니다. 그래서 질문은 - 주어진 Surface
인스턴스에 대해 SurfaceHolder
을 어떻게 만들 수 있습니까? 아니면 AIDL을 통해 SurfaceHolder
을 어떻게 전송할 수 있습니까? SurfaceHolder
에 대해 Parcelable을 구현하는 방법에 대한 예가 있습니까?
사례 (해당 사항) : 응용 프로그램 1은 Service
으로 시작하고 프레젠테이션 화면에 UI를 그립니다. 그리고 앱 1 안에 Nokia Now Mobile SDK를 통해 다른 앱에 내비게이션 데이터를 표시하는 방법이 필요합니다. API를 사용하려면 SurfaceHolder
이 필요합니다.
도움이 될 것입니다.
SurfaceHolder 클래스를 확장하고 parcelabale –
을 구현해 주셔서 감사합니다.하지만 SurfaceHolder는 인터페이스입니다. 그래서 ... 어떻게 할 수 있습니까? 또는 주어진 표면에서 어떻게 생성 할 수 있을까요? –