Vuforia即使图像目标未聚焦,也会播放视频

问题描述 投票:0回答:2

我有一个项目,我使用Unity与Vuforia和Android工作室

每当跟踪ImageTarget时我都在播放视频,当目标丢失时,视频将暂停。我正在使用相同的Vuforia脚本。

我在Vuforia相机图层中有一个按钮,可以在点击时将我发送到Android Activity。

当图像目标被聚焦时(视频正在播放)并且当我点击该按钮时,Android活动被打开,当我从Android活动恢复到UNITY SCENE时,视频没有恢复播放,直到图像目标没有聚焦。这个功能流程是完美的!

但是,当图像目标正在聚焦时(视频正在播放)现在我将相机从图像目标移开(视频现在停止播放),当我点击按钮时,Android活动打开,当我恢复到UNITY来自Android Activity的SCENE,即使图像目标未聚焦,视频播放也将恢复播放!

因此,每当我从Android活动恢复到统一场景并且同时图像目标没有聚焦时,我想停止恢复此视频播放!

这就是我从Unity Scene打开Android Activity的方式,

AndroidJavaObject jo = new AndroidJavaObject("packagename.Activityname");
        int i = jo.Call<int>("openAndroidActivity");

任何帮助将不胜感激 !

android unity3d unity5 augmented-reality vuforia
2个回答
0
投票

你的问题很抽象。请添加您的统一和Android活动代码。我认为这种行为的原因可能是 - 当您单击后退按钮时,您的Android活动会将控制权恢复到视频播放的统一状态,而不是渲染目标图像以启动视频。您可能想要在Unity应用程序读取目标并启动视频时再次调用该方法。

我找到了与你的问题相关的东西。请检查这些问题的答案---> Can't pass back event from Unity to android library jarHow to return from Unity Player to previous running Android Activity?


0
投票

记录了几个小时后,我找到了解决方案。只需在TrackableEventHandler.cs脚本的onUpdate()方法中添加以下代码即可。

  video = GetComponentInChildren<VideoPlaybackBehaviour>();
        if (mLostTracking == true && mHasBeenFound == false && video!=null && video.CurrentState == VideoPlayerHelper.MediaState.PLAYING)
        {
            video.VideoPlayer.Pause();
        }

视频定义为

VideoPlaybackBehaviour视频;

全球.....谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.