我有两个不同的Android应用程序(apk)。
应用程序1在其内部创建了 SurfaceView
,并应该提供AIDL方法以便其他应用程序获取此类 SurfaceView
的 SurfaceHolder
实例。因此,其他应用程序将能够在应用程序1中显示的此视图上进行绘制。
由于 Surface
实现Parcelable接口,因此我能够轻松通过aidl转移Surface本身。
// IMainService.aidl
package com.commonsware.cwac.preso.demo.service;
import android.view.Surface;
interface IMainService {
Surface getSurf();
}
但是第三方sdk需要使用
SurfaceHolder
进行绘制。那么问题来了——我如何为给定的Surface
实例创建SurfaceHolder
,或者如何通过AIDL传输SurfaceHolder
。是否有任何关于如何为SurfaceHolder
实现Parcelable的示例?我的用例(如果有用):应用程序1作为一个
Service
启动,并在演示屏幕上绘制UI。我需要一种方法来通过Nokia Here Mobile SDK在应用程序1内获取其他应用程序显示的导航数据。我需要SurfaceHolder
以便使用此api。任何帮助将不胜感激。