如何配置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上面的打包配置,检查步骤如图:

安装成功后的效果图:

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

相关推荐
原则猫6 分钟前
HOOKS 背后机制
前端
码语智行12 分钟前
首页导航跳转功能深度解析-系统内和系统外
前端
阿猫的故乡1 小时前
Vue过渡动画从入门到装X:淡入淡出、滑动、列表动画、第三方库全搞定
前端·javascript·vue.js
IManiy1 小时前
总结之Vibe Coding前端骨架
前端
JS菌1 小时前
AI Agent 沙箱双层防护体系:从权限过滤到内核隔离的完整实现
前端·人工智能·后端
Aphasia3111 小时前
从输入URL到页面展示全流程
前端·面试
我叫黑大帅2 小时前
前端如何竖屏固定视口背景
前端·javascript·面试
abcy0712132 小时前
python pandas csv异步后台清洗前端优先返回成功信息
前端·python·pandas
IT_陈寒2 小时前
Vite这个坑我帮你踩了,动态导入居然这样才生效
前端·人工智能·后端
swipe2 小时前
Mem0 x Agent 实战系列:分层记忆 + 三路召回,搭建真正可用的长期记忆层
前端·javascript·面试