Uniapp进行APP打包——iOS 系统

一、打包过程

1、创建唯一标识符

(1) 首先,申请苹果开发者账号。 没有苹果开发者账号是无法进行 ios 打包上线的。
(2) 进入 https://developer.apple.com 这个网址,点击“account” 并输入苹果开发者账号进入用户界面。
在这里插入图片描述
(3) 点击证书文件
在这里插入图片描述
(4) 进入到这界面以后, 点击“APP IDs”,并新建一个 APPid
在这里插入图片描述
( 5) 设置 name 和 Bundle ID
在这里插入图片描述
注意, 这个 Bundle ID 的格式不要写错在后面多处都会用到。

( 6) 配置相应服务,并点击 continue
在这里插入图片描述
如果有一些支付等功能可以相应进行勾选。

( 7) 点击“register” 注册成功
在这里插入图片描述
2. 申请 iOS 发布证书
( 1) 下载 APPloader, www.applicationloader.net 网址
( 2) 打开 APPloader,并输入苹果开发者账号
( 3) 点击“证书”
在这里插入图片描述
( 4) 点击“add”
在这里插入图片描述
添加一个新的证书,这个证书不需要每打包一个 IPA 就新建一个证书,这个证书在有效期是可以进行多次使用的。

( 5) 填写信息并点击“ok”
在这里插入图片描述
( 6) 点击“p12 文件” 进行下载
在这里插入图片描述
下载后会是一个后缀为 p12 的文件,保存到电脑中,后面会用到这个证书文件。

3、 申请 iOS 发布描述文件
( 1) 点击“描述文件”
在这里插入图片描述
新建一个描述文件
( 2) 创建新的描述文件
在这里插入图片描述
点击“OK” 后创建完成

( 3) 点击下载
在这里插入图片描述
下载后会是一个后缀为 mobileprovision 的文件,保存到电脑中,后面会用到这个描述文件。

4、使用 hbuilderx 打包 IPA
( 1) 打开 hbuilderx 点击发行-原生 APP 云打包
在这里插入图片描述
选择 iOS 打包,并且证书和描述文件不要填写错误
( 2) 打包后等待控制台返回下载链接,点击链接进行下载 IPA 文件,后面会进行上传。

5、在 iTunes connect 上创建 APP
( 1) 进入 https://itunesconnect.apple.com , 并输入苹果开发者账号。
( 2) 点击“我的 APP”
在这里插入图片描述
( 3) 点击新建 APP
在这里插入图片描述
( 4) 设置 APP 信息并点击创建
在这里插入图片描述
6. 上传 IPA 到 APP store
(1) 进入 https://appleid.apple.com,并输入苹果开发者账号登陆
(2) 点击生成密码
在这里插入图片描述
(3) 打开 apploader,点击“单个 IPA”,然后找到利用 hbuilderx 打包并下载好的 IPA文件,点击打开。
在这里插入图片描述
因为只有一个文件,所以选择单个 IPA 即可
(4) 上传成功
在这里插入图片描述
(5) 如果因为 APP-specific password 出错的话,点击设置填写密码
在这里插入图片描述
7. 设置 app 信息提交到商店进行审核
(1) 进入 https://appstoreconnect.apple.com,配置 APP 相关信息, 并点击“存储”
在这里插入图片描述
(2) 配置价格与销售范围,并点击“存储”
在这里插入图片描述
(3) 点击准备提交,并上传 iphone5.5 英寸宣传截图, 并填写其他内容。
在这里插入图片描述
(4) 点击构建版本
在这里插入图片描述
( 5) 在综合设置里,配置一下分级
在这里插入图片描述
( 6) 填写版权等相关信息
在这里插入图片描述
( 7) 填写审核信息
在这里插入图片描述
( 8) 点击“存储”,没有问题后点击“提交以供审核”
在这里插入图片描述
( 9) 提交以后可在“我的 APP” 中查看审核进度。

二、补充部分

关注公众号:【深漂程序员小庄】:
内含丰富的学习资源和面试经验(不限前端、java),还有学习交流群可加,并且还有各大厂大佬可一起交流学习,一起进步~添加小庄微信,回复【加群】,可加入互联网技术交流群:

在这里插入图片描述

<?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>$(DEVELOPMENT_LANGUAGE)</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>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string> <key>CFBundleShortVersionString</key> <string>1.0</string> <key>CFBundleVersion</key> <string>1</string> <key>LSRequiresIPhoneOS</key> <true/> <key>UIApplicationSceneManifest</key> <dict> <key>UIApplicationSupportsMultipleScenes</key> <false/> </dict> <key>UIApplicationSupportsIndirectInputEvents</key> <true/> <key>UILaunchScreen</key> <dict/> <key>UIRequiredDeviceCapabilities</key> <array> <string>armv7</string> </array> <key>UISupportedInterfaceOrientations</key> <array> <string>UIInterfaceOrientationPortrait</string> <string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeRight</string> </array> <key>UISupportedInterfaceOrientations~ipad</key> <array> <string>UIInterfaceOrientationPortrait</string> <string>UIInterfaceOrientationPortraitUpsideDown</string> <string>UIInterfaceOrientationLandscapeLeft</string> <string>UIInterfaceOrientationLandscapeRight</string> </array> <key>NSPhotoLibraryUsageDescription</key> <string>需要访问您的照片库以导入视频</string> <key>NSCameraUsageDescription</key> <string>需要访问您的相机以录制视频</string> <key>NSMicrophoneUsageDescription</key> <string>需要访问您的麦克风以录制视频音频</string> </dict> </plist>
03-19
<think>好的,我现在需要处理用户关于iOS应用配置文件中权限描述和设备支持设置的解析问题。用户提到了几个关键的权限项,比如NSPhotoLibraryUsageDescription、NSCameraUsageDescription、NSMicrophoneUsageDescription,还有设备能力相关的UIRequiredDeviceCapabilities和UISupportedInterfaceOrientations。首先,我得确认这些配置项的具体作用和它们在Info.plist中的结构。 首先,权限描述部分。我记得从iOS 10开始,苹果加强了隐私保护,访问相册、相机、麦克风等敏感资源必须要在Info.plist中添加对应的使用描述,否则应用会被拒绝。用户提供的引用内容也提到了这一点,比如引用[1]和[2]都指出必须在plist中添加NSPhotoLibraryUsageDescription和NSCameraUsageDescription的键值对。同时,引用[3]给出了具体的XML结构示例。我需要解释每个权限键的作用,以及如何正确配置它们,包括键的名称和对应的字符串值,该字符串会向用户说明为什么需要这个权限。 接下来是设备能力部分,UIRequiredDeviceCapabilities和UISupportedInterfaceOrientations。UIRequiredDeviceCapabilities用于指定应用必须的设备功能,比如是否需要陀螺仪、GPS等,这样App Store会根据这些设置来过滤不支持的设备。而UISupportedInterfaceOrientations则控制应用支持的屏幕方向,比如是否支持竖屏或横屏的不同方向。这部分需要说明每个键的可能取值及其影响,例如在UIRequiredDeviceCapabilities中,可以指定数组或布尔值来声明必需的功能,而UISupportedInterfaceOrientations则是一个数组,包含支持的朝向如UIInterfaceOrientationPortrait。 然后,用户的问题还要求生成相关问题,我需要考虑用户可能进一步想知道的内容。比如,如何测试这些权限提示是否正常工作,或者如何处理旧版iOS的兼容性问题。另外,可能用户会想知道如何动态请求权限,或者在代码中如何处理授权状态的变化。不过根据当前的问题,生成的问题应该围绕配置项的解析,可能的扩展点包括配置的最佳实践、常见错误以及如何适配不同设备等。 在组织回答时,需要结构清晰,分权限描述和设备能力两部分,每个部分下再细分各个配置项。同时,引用用户提供的参考引用,确保信息准确。例如,在解释NSPhotoLibraryUsageDescription时,引用[1]和[2]来支持必须添加该键值的说明。同时,结合示例代码块展示正确的plist结构,比如引用[3]中的XML示例。 最后,检查是否符合用户的要求:使用中文回答,行内公式用$...$,独立公式用$$...$$,但在这个问题中可能涉及较少数学公式,更多是配置项的说明。确保LaTeX语法正确,虽然这里可能用不上复杂的数学公式。生成的相关问题需要与解析Info.plist配置相关,比如权限配置的影响、设备能力的设置方法等。 总结一下,回答的结构大致分为权限描述和设备能力两部分,每部分详细解释各配置项,并给出示例和引用。然后生成三个相关问题,帮助用户进一步理解或解决可能遇到的问题。</think>### iOS Info.plist权限与设备能力配置解析 #### 一、权限描述配置项 1. **NSPhotoLibraryUsageDescription** 用于访问用户相册的权限说明。需在`Info.plist`中添加字符串值,描述访问目的。 示例: ```xml <key>NSPhotoLibraryUsageDescription</key> <string>应用需要访问相册以上传图片</string> ``` 若未配置,iOS 10及以上系统会拒绝应用运行[^1][^2]。 2. **NSCameraUsageDescription** 申请使用摄像头权限时需添加。示例: ```xml <key>NSCameraUsageDescription</key> <string>应用需要使用摄像头进行拍照</string> ``` 3. **NSMicrophoneUsageDescription** 申请使用麦克风权限时需添加。示例: ```xml <key>NSMicrophoneUsageDescription</key> <string>应用需要麦克风录制音频</string> ``` #### 二、设备能力配置项 1. **UIRequiredDeviceCapabilities** 定义应用运行所需的硬件特性(如GPS、陀螺仪)。 示例(声明需要陀螺仪和蓝牙): ```xml <key>UIRequiredDeviceCapabilities</key> <array> <string>gyroscope</string> <string>bluetooth-le</string> </array> ``` 若设备不支持指定特性,则无法安装应用[^3]。 2. **UISupportedInterfaceOrientations** 控制应用支持的屏幕方向。示例(仅支持竖屏): ```xml <key>UISupportedInterfaceOrientations</key> <array> <string>UIInterfaceOrientationPortrait</string> </array> ``` #### 三、配置逻辑总结 - 权限描述项必须用`<key>`-`<string>`对声明,内容需明确用户授权理由。 - 设备能力项通过数组形式定义,影响应用安装范围和界面行为。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值