Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Xamarin IOS:任务延迟问题_C#_Ios_Xamarin.forms - Fatal编程技术网

C# Xamarin IOS:任务延迟问题

C# Xamarin IOS:任务延迟问题,c#,ios,xamarin.forms,C#,Ios,Xamarin.forms,我已经使用Xamarin表单创建了一个应用程序。在那个应用程序中,我创建了一个ExtendedWebView,这样我就可以从C#调用javascript函数。在调用javascript函数之前,我给出了大约50毫秒的延迟。在所有设备中,如Android、iOS 10、Windows 8、Windows 8.1和Windows 10。一切正常。但在iOS 11中,我调用的javascript函数随着时间的推移而变得滞后。我不知道为什么ios 11会出现这种情况。ios 11webview中是否有任

我已经使用Xamarin表单创建了一个应用程序。在那个应用程序中,我创建了一个
ExtendedWebView
,这样我就可以从C#调用javascript函数。在调用javascript函数之前,我给出了大约50毫秒的延迟。在所有设备中,如Android、iOS 10、Windows 8、Windows 8.1和Windows 10。一切正常。但在iOS 11中,我调用的javascript函数随着时间的推移而变得滞后。我不知道为什么ios 11会出现这种情况。ios 11
webview
中是否有任何更改?我正在使用
UIWebview
。我试图将其转换为
WkWebview
,但仍然存在相同的问题

Task.Delay(TimeSpan.FromMilliseconds(48)).Wait();
Xamarin.Forms.Device.BeginInvokeOnMainThread(() =>
{
    if (this.WebViewContainer.Children.Count > this.AudioPage)
    {
        ((ExtendedWebview)this.WebViewContainer.Children[this.AudioPage]).Eval("timeUpdater1(" + this.Position + ")");
    }
    AudioState = _audioPlayer.GetMediaState();
});

我使用的是Xamarin Forms v2.3.2.127。这可能是由于过时的Xamarin表单造成的吗?

我建议用最新和最棒的代码来构建一个示例项目,并在那里尝试您的代码。我不是100%确定,但是forms 2.3.2已经过时了,因为它们在2.5.x上已经过时了。我还想检查一下您安装的xamarin的版本,因为编辑器和管道的更新会对应用程序的编译和发送方式产生影响

(如有可能,尽量保持最新。)


如果您有一台单独的机器,请确保所有内容都已更新并在那里进行测试,如果没有更新且无法更新,您可以向xamarin论坛咨询,询问xamarin的工作人员是否需要真正更新。

您调用阻止调用的任何特定原因
.Wait()而不是使用
等待