diff --git a/app/src/main/java/com/nova/brain/glass/helper/GlassMediaServiceHelper.kt b/app/src/main/java/com/nova/brain/glass/helper/GlassMediaServiceHelper.kt index 8a62b2e..4ee6c84 100644 --- a/app/src/main/java/com/nova/brain/glass/helper/GlassMediaServiceHelper.kt +++ b/app/src/main/java/com/nova/brain/glass/helper/GlassMediaServiceHelper.kt @@ -2,14 +2,15 @@ package com.nova.brain.glass.helper import android.view.Surface import com.rokid.security.glass3.open.sdk.GlassSdk +import com.rokid.security.system.server.media.IMediaServer import com.rokid.security.system.server.media.callback.ICameraSurfaceCallback import com.rokid.security.system.server.media.callback.PhotoFileCallback object GlassMediaServiceHelper { @Volatile - private var mediaService: Any? = null + private var mediaService: IMediaServer? = null - private fun service(): Any? { + private fun service(): IMediaServer? { val cached = mediaService if (cached != null) { return cached @@ -20,51 +21,34 @@ object GlassMediaServiceHelper { } fun takePhoto(resolution: Int, path: String) { - val service = service() ?: return - service.javaClass.getMethod("takePhoto", Int::class.javaPrimitiveType, String::class.java) - .invoke(service, resolution, path) + service()?.takePhoto(resolution, path) } fun addPhotoCallback(callback: PhotoFileCallback) { - val service = service() ?: return - service.javaClass.getMethod("addPhotoCallback", PhotoFileCallback::class.java) - .invoke(service, callback) + service()?.addPhotoCallback(callback) } fun removePhotoCallback(callback: PhotoFileCallback) { - val service = service() ?: return - service.javaClass.getMethod("removePhotoCallback", PhotoFileCallback::class.java) - .invoke(service, callback) + service()?.removePhotoCallback(callback) } fun startCameraShare(surface: Surface, callback: ICameraSurfaceCallback) { - val service = service() ?: return - service.javaClass.getMethod( - "startCameraShare", - Surface::class.java, - ICameraSurfaceCallback::class.java - ).invoke(service, surface, callback) + service()?.startCameraShare(surface, callback) } fun stopCameraShare(callback: ICameraSurfaceCallback) { - val service = service() ?: return - service.javaClass.getMethod("stopCameraShare", ICameraSurfaceCallback::class.java) - .invoke(service, callback) + service()?.stopCameraShare(callback) } fun getMaxZoomLevel(): Int { - val service = service() ?: return 0 - return (service.javaClass.getMethod("getMaxZoomLevel").invoke(service) as? Int) ?: 0 + return service()?.maxZoomLevel ?: 0 } fun getZoomLevel(): Int { - val service = service() ?: return 0 - return (service.javaClass.getMethod("getZoomLevel").invoke(service) as? Int) ?: 0 + return service()?.zoomLevel ?: 0 } fun zoomCamera(level: Int) { - val service = service() ?: return - service.javaClass.getMethod("zoomCamera", Int::class.javaPrimitiveType) - .invoke(service, level) + service()?.zoomCamera(level) } }