0

我的应用程序是 MVC4,它适用于 iPhone 和 Windows Phone,但不适用于三星 Galaxy S III,它显示桌面用户界面!我尝试了几个 InexOf,例如:

 DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("Mobile")
            {
                ContextCondition = (context => context.GetOverriddenUserAgent()
                    .IndexOf("Linux", StringComparison.OrdinalIgnoreCase) >= 0)
            });

我也试过:

DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("Mobile")
{
    ContextCondition = (context => context.GetOverriddenUserAgent()
        .IndexOf("Opera Mobi", StringComparison.OrdinalIgnoreCase) >= 0)
});

我使用我开发的较旧的 MVC3 应用程序检查了三星 III 浏览器,以下是浏览器信息:用户代理:Mozilla/5.0(Linux,U;Android 4.0.4 .... 浏览器:Safari 型号 SGH-1747M

我会很感激你的建议。提前致谢

4

1 回答 1

1

以防万一有人遇到同样的问题。我在 MVC4 中盯着一个新项目(我之前使用的是 MVC4 的 Beta 版)Install-Package jQuery.Mobile.MVC;现在可以了。该问题与三星无关,因为我在 LG Android 上尝试了该应用程序并遇到了同样的问题。我还在全局文件中添加了以下内容:

   DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("Linux")
           {
               ContextCondition = (context => context.GetOverriddenUserAgent().IndexOf
                   ("Linux", StringComparison.OrdinalIgnoreCase) >= 0)
           });
于 2012-10-14T07:19:09.423 回答