【问题标题】:Is it possible to prevent an Android WebApplication from turning the screen是否可以防止 Android WebApplication 转动屏幕
【发布时间】:2021-12-19 13:07:06
【问题描述】:

我有一个 asp.net 应用程序,它使用 manifest.json 在 android 设备上本地“安装”。

在这个清单中,我添加了:"display":"standalone and "orientation": "landscape"

但如果我将手机倒置,它仍然会旋转 180°,即使所有这些决定都关闭了“屏幕旋转”。问题是,这些设备顶部有一个扫描仪,用于扫描条形码。因此,如果您将手机倒置以扫描某些内容,整个网页就会转过来,而当您将其翻回时,您将无法再阅读它。 您必须再次保持笔直向上,或者稍微“摇晃”一下以使其再次翻转。

编辑 20211110:这是一个网站,在我们的本地 IIS 上运行。网页使用 MANIFEST.JSON,以便 chrome、Firefox 和 safari 提示用户“安装”网站。这会在主启动器上创建一个快捷方式,该快捷方式可以像 Android 应用程序一样打开网站。 (就像 Twitter,当你在你的安卓手机上浏览他们的网站时,它会提示你安装应用程序,但实际上它只会创建网站的快照)

{
  "short_name": "Short",
  "name": "AppName",
  "icons": [
    {
      "src": "Images/icon192.png",
      "sizes": "192x192",
      "type": "image/png",
      "purpose": "any maskable"
    },
    {
      "src": "Images/icon512.png",
      "sizes": "512x512",
      "type": "image/png",
      "purpose": "any maskable"
    }
  ],
  "start_url": "./Login.aspx",
  "display": "standalone", /* Could be "fullscreen", "standalone", "minimal-ui", or "browser" */
  "orientation": "portrait", /* Could be "landscape" or "portrait" */
  "background_color": "#DE007E", /*"#DE007E"*/
  "theme_color": "#DE007E" /*"#DE007E"*/
}

【问题讨论】:

  • 这是一个真正的安卓应用程序,还是通过一些奇怪的浏览器安装的?如果它是一个 Android 应用程序,只需编辑它发出的 AndroidManifest 以指定方向。如果它是一个奇怪的浏览器,如果它自己处理旋转而不是让操作系统来做,你可能会被搞砸。您是否尝试过 jsut 在设置中关闭自动旋转?
  • 请提供足够的代码,以便其他人更好地理解或重现问题。

标签: android asp.net web-applications


【解决方案1】:

好的,我现在想通了。 "orientation": "portrait" 选项导致 PWA 始终处于纵向,即使设备被倒置。 所以我只需要从 manifest.json 中删除这个选项,现在它就可以工作了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-13
    • 1970-01-01
    • 1970-01-01
    • 2013-01-15
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多