如何配置capacitor 打包的ios app固定竖屏展示?

注:打包ios包需要使用xcode来进行打包,Xcode 提供了为 Apple 平台开发、测试和分发 App 所需的工具,包括预测代码补全、主流编码模型加持的生成式智能功能、高级分析和调试工具,以及适用于 Apple 设备的模拟器。因此打包ios包的前提是需要一台苹果电脑。

找到/ios/App/App/Info.plist文件,并打开,如下图:

XML 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>en</string>
	<key>CFBundleDisplayName</key>
        <string>traction-digital-twin-mobile-app1</string>
	<key>CFBundleExecutable</key>
	<string>$(EXECUTABLE_NAME)</string>
	<key>CFBundleIdentifier</key>
	<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleName</key>
	<string>$(PRODUCT_NAME)</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>$(MARKETING_VERSION)</string>
	<key>CFBundleVersion</key>
	<string>$(CURRENT_PROJECT_VERSION)</string>
	<key>LSRequiresIPhoneOS</key>
	<true/>
	<key>UILaunchStoryboardName</key>
	<string>LaunchScreen</string>
	<key>UIMainStoryboardFile</key>
	<string>Main</string>
	<key>UIRequiredDeviceCapabilities</key>
	<array>
		<string>armv7</string>
	</array>
	<key>UISupportedInterfaceOrientations</key>
	<array>
		<!-- iPhone仅保留竖屏(Home 键在下的正常竖屏) -->
		<string>UIInterfaceOrientationPortrait</string>
		<!-- <string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string> -->
	</array>
	<key>UISupportedInterfaceOrientations~ipad</key>
	<array>
		<!-- iPad仅保留竖屏(Home 键在下的正常竖屏) -->
		<string>UIInterfaceOrientationPortrait</string>
		<!-- iPad允许倒竖屏 -->
		<string>UIInterfaceOrientationPortraitUpsideDown</string>
		<!-- <string>UIInterfaceOrientationLandscapeLeft</string>
		<string>UIInterfaceOrientationLandscapeRight</string> -->
	</array>
	<key>UIViewControllerBasedStatusBarAppearance</key>
	<true/>

	<!-- 通知权限描述 -->
	<key>NSLocalNotificationUsageDescription</key>
	<string>需要向您发送本地通知,提醒重要事项</string>

	<!-- 后台通知支持(可选,用于后台触发通知) -->
	<key>UIBackgroundModes</key>
	<array>
		<string>remote-notification</string>
	</array>

	<!-- iOS 10+ 通知声音配置(若使用自定义声音,需添加) -->
	<key>UILocalNotificationDefaultSoundName</key>
	<string>default</string> <!-- 使用系统默认声音,自定义声音需放入项目并指定文件名 -->
</dict>
</plist>

根据以下注释配置,将

<string>UIInterfaceOrientationLandscapeLeft</string>

<string>UIInterfaceOrientationLandscapeRight</string>

这两行注释掉, <key>UISupportedInterfaceOrientations</key> 这个是指对iPhone屏幕横竖屏的设置;**<key>UISupportedInterfaceOrientations~ipad</key>**则是指对iPad屏幕横竖屏的设置,保险起见,也把iPad的

<string>UIInterfaceOrientationLandscapeLeft</string>

<string>UIInterfaceOrientationLandscapeRight</string>这两个注释掉,然后重新运行ionic capacitor build ios进行打包安装,xcode打开项目后,建议检查一遍xcode上面的打包配置,检查步骤如图:

安装成功后的效果图:

以上是自己在项目里遇到的问题以及解决的方法,浅浅记录一下~

相关推荐
逝水无殇12 小时前
HTML 文本格式化详解:掌握 <strong>、<em>、<mark>、<del> 等常用标签
前端·javascript·html
特立独行的猫a12 小时前
DeepSeek Harness插件和工具的区别介绍及开发入门指南
前端·ai·agent·插件·deepseek·harness
游戏开发爱好者812 小时前
iOS 推送怎么配置,APNs 推送证书、设备库与群发
android·ios·小程序·https·uni-app·iphone·webview
小新讲网安12 小时前
HTTP请求走私攻击实战:CL.TE与TE.CL绕过前端服务器全解析
服务器·前端·网络·web安全·http·架构·漏洞
风骏时光牛马12 小时前
AI办公系统异常事件复盘分析
前端
console.log('npc')12 小时前
React 19 + Vite 企业级前端项目:从零搭建到规范交付
前端·react.js·前端框架
程序员黑豆12 小时前
Java字符串常量池完全指南:原理、intern()方法与性能优化最佳实践
java·前端·ai编程
光影少年12 小时前
react离线缓存、图片缓存方案
开发语言·前端·javascript·react native·react.js·缓存·前端框架
Canace12 小时前
笔记本都合上了,Claude 为什么还能在手机上执行电脑上装的技能?
前端·人工智能·ai编程
cyadyx13 小时前
Vite 比 Webpack 构建效率更高
前端·webpack·node.js·vite