iOS 9 : 提示“除非应用程序需要全屏幕,否则必须支持所有界面方向”的通用应用程序警告

苹果公司在iOS 9中引入了一个新的规则,即任何通用应用程序必须支持所有可能的设备方向,除非该应用程序使用全屏幕模式。如果你的应用程序不遵守这个规则,在提交到App Store时将会遭到拒绝。

问题描述

这个问题通常出现在一个在 iPhone 和 iPad 上都能运行的通用应用程序中。当你试图在 iPhone 设备上使用横屏模式时,应用程序会崩溃并提示以下错误: "All interface orientations must be supported unless the app requires full screen"。

这个问题是由于 iOS 9 引入了 UISupportedInterfaceOrientations 字段所致。这个字段包含了应用程序所支持的方向列表。如果你没有正确设置这个字段,iOS 9 将默认认为你只支持竖屏模式,如果你在横屏模式下尝试打开应用程序,那么就会出现错误。

解决方法

解决这个问题的方法很简单。你需要在你的应用程序信息属性列表文件(Info.plist)中添加 UISupportedInterfaceOrientations 键,并将其设置为所支持的方向列表。例如,如果你想要支持横屏和竖屏模式,那么你可以将 UISupportedInterfaceOrientations 设置为以下值:

-------------------------------------------
-------
    -----------------------------------------------
    ----------------------------------------------------
    -----------------------------------------------------
--------

如果你只想支持竖屏模式,那么你可以将 UISupportedInterfaceOrientations 设置为以下值:

-------------------------------------------
-------
    -----------------------------------------------
--------

请注意,如果你的应用程序需要全屏幕模式,请在应用程序信息属性列表文件中添加 UIRequiresFullScreen 键,并将其设置为 “YES”。

-------------------------------
-------

学习和指导意义

这个问题提醒我们,在开发 iOS 应用程序时,我们应该始终遵守苹果公司的规则和要求。这不仅包括支持所有可能的设备方向,还包括其他规则,比如使用正确的图标和启动画面等。

另外,当出现错误时,我们应该仔细阅读错误消息并理解其中的含义。这样可以帮助我们快速诊断问题并找到解决方法。

最后,我们需要时刻关注苹果公司的更新和变化。iOS 平台的发展非常迅速,每一个新版本都会带来一些新的变化。我们需要及时学习并适应这些变化,以便在 App Store 上发布高质量的应用程序。

示例代码

以下是一个支持横屏和竖屏模式的示例代码:

-------------------------------------------
-------
    -----------------------------------------------
    ----------------------------------------------------
    -----------------------------------------------------
--------

以下是一个仅支持竖屏模式的示例代码:

-------------------------------------------
-------
    -----------------------------------------------
--------

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/606ef6ee2d2a29a3c12029ea


猜你喜欢

  • npm 包 bsonify 使用教程

    本文将介绍如何使用 npm 包 bsonify。它是一个用于将 JavaScript 对象转换为 BSON 格式(一种二进制的 JSON 扩展格式)的工具。转换后的对象可以用于和 MongoDB 数据...

    4 年前
  • npm 包 bsonschema 使用教程

    简介 在前端开发中,数据校验是一个不可避免的问题。而 bsonschema 是一款简单易用的数据模型校验库,它可以帮助我们快速创建数据模型,并对数据进行验证,非常适合用于构建 RESTful API ...

    4 年前
  • npm 包 bsp-grunt 使用教程

    一、前言 在前端开发中,Grunt 可以高效地执行许多任务,如 CSS 预处理、JS 压缩混淆等。其中,bsp-grunt 是一个基于 Grunt 的插件,它能够帮助开发者快速生成标准的前端代码,提高...

    4 年前
  • npm 包 bspec 使用教程

    简介 bspec 是一个基于 JavaScript 的 npm 包,用于创建可读性高的 BDD(行为驱动开发)测试。它使用简单的 DSL(领域特定语言)来描述测试场景,并且可以自动生成 HTML 报告...

    4 年前
  • npm 包 bugs 使用教程

    什么是 npm ? npm(Node Package Manager)是由 Node.js 官方提供的包管理工具,它是世界上最大的包管理器之一,用于协作开发 JavaScript 代码。

    4 年前
  • npm 包 bugs-dates 使用教程

    在前端开发中,经常会涉及到处理日期时间的问题,而 npm 包 bugs-dates 可以帮助开发者更加方便地处理日期时间相关的操作。本文将介绍如何使用 bugs-dates 包来进行日期时间的处理,以...

    4 年前
  • NPM 包 Browserify-Search 使用教程

    在前端开发中,我们经常需要使用各种各样的 JavaScript 库和框架来实现我们的项目需求。这些库和框架难免会带来一些依赖管理的问题,而 NPM 包管理器就是一个很好的解决方案。

    4 年前
  • npm 包 btype-webpack-loader 使用教程

    在前端开发中,webpack 已成为一种不可或缺的打包工具。而 btype-webpack-loader 是一个非常实用的 npm 包,它可以帮助我们对 typescript 代码进行自动类型推导,并...

    4 年前
  • npm 包 btype-hook 使用教程

    在前端开发中,我们经常需要对用户的输入进行验证和处理。而对于输入框的类型限制和验证等,我们可以使用 npm 包 btype-hook。本文将详细介绍该包的使用方法,帮助读者更好地了解和掌握这个工具。

    4 年前
  • npm 包 `bu` 使用教程

    什么是 bu? bu 是一款实用的前端工具库,包含了许多常用的函数和方法,例如 DOM 操作、工具函数、数组方法等等。如果你经常在前端开发中使用 JavaScript,那么 bu 绝对是一款非常实用的...

    4 年前
  • npm 包 buaya 使用教程

    简介 Buaya 是一个 Node.js 环境下的图片处理工具,它支持图片类型转换、大小压缩等常用的图片操作功能。它是一个基于现代浏览器中的 Canvas 元素实现的图片处理工具,可以运行在 CLI ...

    4 年前
  • NPM包Bub使用教程 - 让你的前端项目更简便、可靠、高效

    如果你经常使用npm来管理你的前端项目,你一定听说过Bub这个包。Bub是一个在构建工具中非常有用的NPM包,可以让你的代码库更简便、可靠、高效。它提供了一些非常方便的命令行工具,可以让你的开发、测试...

    4 年前
  • npm 包 browserify-rm-define 使用教程

    前言 在前端开发中,我们常常使用 npm 包管理器来安装和管理我们所需的依赖。而在项目中,我们有时会使用到 Browserify 来进行模块化开发。其中,Browserify 可以将我们在项目中使用的...

    4 年前
  • npm 包 Browserify-Row-Flow 使用教程

    Browserify-Row-Flow 是一款非常实用的 npm 包,他可以帮助前端开发者优化代码并提高自己的开发效率。在本篇文章中,我们将详细介绍 Browserify-Row-Flow 的使用方法...

    4 年前
  • npm 包 bugstomper 使用教程

    简介 在前端开发中,我们经常会遇到各种各样的 bug,而这些 bug 往往都是比较难以定位和解决的。为了解决这个问题,有很多工具和技术被开发出来了,而 npm 包 bugstomper 就是其中比较优...

    4 年前
  • npm 包 browserify-server-test-broken 使用教程

    介绍 browserify-server-test-broken 是一个 npm 包,它是一个用于在浏览器环境中测试 JavaScript 代码的库。它主要使用 Browserify 进行打包和转换,...

    4 年前
  • npm 包 Browserify-server-test 使用教程

    前言 Browserify-server-test 是一个针对前端自动化测试的 npm 包,使用该包可以在浏览器中进行前端单元测试,其适用范围包括但不限于 JavaScript,CSS,HTML 等。

    4 年前
  • npm 包 browserify-server-test-peer-dep 使用教程

    简介 browserify-server-test-peer-dep 是一个能够快速构建和测试 JavaScript 应用的 npm 包。它支持 browserify 打包和 http-server ...

    4 年前
  • npm 包 bugsnag-sourcemap-webpack-plugin 使用教程

    在前端开发中,异常处理是必不可少的一部分。Bugsnag 是常见的一款异常监控平台,可以方便地帮助开发者检测和跟踪应用程序中出现的异常,但它默认并不能捕捉到压缩过的 JavaScript 文件中的源代...

    4 年前
  • npm 包 bugsnag-winston 使用教程

    随着前端开发的日益发展,前端应用的复杂性也不断增加,特别是在现代web应用中,前端错误监控已经成为了一个必要的环节。而 bugsnag-winston 正是一个优秀的 npm 包,可以为我们提供完美的...

    4 年前

相关推荐

    暂无文章