我有一个项目,我使用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活动代码。我认为这种行为的原因可能是 - 当您单击后退按钮时,您的Android活动会将控制权恢复到视频播放的统一状态,而不是渲染目标图像以启动视频。您可能想要在Unity应用程序读取目标并启动视频时再次调用该方法。
我找到了与你的问题相关的东西。请检查这些问题的答案---> Can't pass back event from Unity to android library jar和How to return from Unity Player to previous running Android Activity?
记录了几个小时后,我找到了解决方案。只需在TrackableEventHandler.cs脚本的onUpdate()方法中添加以下代码即可。
video = GetComponentInChildren<VideoPlaybackBehaviour>();
if (mLostTracking == true && mHasBeenFound == false && video!=null && video.CurrentState == VideoPlayerHelper.MediaState.PLAYING)
{
video.VideoPlayer.Pause();
}
视频定义为
VideoPlaybackBehaviour视频;
全球.....谢谢!