Ios -[UIWebView SetMediaPlaybackRequiresAction:]影响所有实例

Ios -[UIWebView SetMediaPlaybackRequiresAction:]影响所有实例,ios,objective-c,uiwebview,Ios,Objective C,Uiwebview,如果我有一个带有MediaPlaybackRequiresAction=YES的UIWebView,那么稍后在我的应用程序中创建一个新的UIWebView并在其上设置MediaPlaybackRequiresAction=NO,它还会在第一个实例上更改该属性的值 e、 g.我有一个UIWebView,然后以模态方式呈现第二个UIWebView(对于广告),在模态webView上更改MediaPlaybackRequiresAction会影响呈现UIWebView 你知道为什么吗?uiwebvie

如果我有一个带有
MediaPlaybackRequiresAction=YES
UIWebView
,那么稍后在我的应用程序中创建一个新的
UIWebView
并在其上设置
MediaPlaybackRequiresAction=NO
,它还会在第一个实例上更改该属性的值

e、 g.我有一个
UIWebView
,然后以模态方式呈现第二个
UIWebView
(对于广告),在模态webView上更改
MediaPlaybackRequiresAction
会影响呈现
UIWebView

你知道为什么吗?
uiwebview
是否都由单个实例支持


链接到示例项目。

不确定应用程序的用途,请尝试以下方法:

- (IBAction)unwind:(UIStoryboardSegue *)unwindSegue
{
    [self TS_updateLabel];

        [[self webView] setMediaPlaybackRequiresUserAction:YES];

        [self TS_reloadWebView];
}

在方法
TS_重新加载WebView

 if (self.webView.isLoading) {
        [self.webView stopLoading];

    }
    [self.webView loadHTMLString:htmlString baseURL:baseURL];

我猜这也是
UIWebView
bug。。。。但是现在这种方法也许可以解决您的问题。

web视图应该是一个不同的对象--您能确认您正在处理两个独立的实例吗?另一个潜在的陷阱是将web视图放置到滚动视图中。如果第二个web视图被插入到第一个web视图中,我会想到一些奇怪的东西。@AaronVegh是的,它们是两个实例。我以不同的方式呈现第二个,如果我发布它们,它们是不同的。我将更新我的问题以链接到一个示例项目。查看代码和文档,感觉可能是HTML5的问题。考虑到DOCS特别提到两种媒体回放的能力,要求用户动作指的是HTML5视频。您的HTML代码不使用HTML5元素进行播放;例如,不能使用iframe方法进行内联播放。我建议玩一下,看看是否有帮助。你运行过示例应用程序吗?更改一个实例上的属性更改第二个实例上的属性。。。如果mediaplaybackrequiresseraction=YES,则视频不会自动播放。我遇到了完全相同的问题。你有在Senior注册雷达吗?我使用的是Google ADMob SDK,它在自己的网络视图中将MediaPlaybackRequiresAction设置为NO。这本质上是在我自己的所有网络视图上启用自动播放,这是我不想要的!我还发现这一点有一定的持久性。MediaPlaybackRequiresSerAction的值将在应用程序发布期间保持不变。即使默认值应为“是”,但在以前的应用程序启动中设置的UIWebView的新创建实例中也可以为“否”。