uniapp——ios证书申请——详细步骤+遇到的坑——技能提升

三年前,我曾经写过uniapp的程序,时隔三年,又遇到了uniapp的需求,之前没有自行申请ios证书,现在终于要自己生成证书了。。。

是福不是祸,是祸躲不过。

uniapp生成ios证书的详细步骤

  • uniapp对接unipush的操作步骤链接
  • 1.生成`ios`证书
        • 1.1 准备环境——略过
        • 1.2登录IOS Dev Center——申请开发者账号后,就可以登录了——略过
        • 1.3 申请苹果App ID
        • 1.4 生成证书请求文件——需要使用mac 苹果电脑
        • 1.5 申请开发证书和描述文件——development——需要苹果本和上面生成的请求文件
        • 1.6 申请发布证书和描述文件——distribution——需要苹果本和上面生成的请求文件
  • 2.证书申请完了,就可以进行`uniapp`的云打包了
        • 2.1 更改版本号,便于检查更新
        • 2.2 云打包
        • 2.3 广告取消——如果有默认勾选且不可取消的广告,则需要在uniapp后台进行取消
        • 2.4 打包报错的几个坑
  • 3.使用香蕉云编进行`ipa`文件的构建和屏幕截图生成

uniapp对接unipush的操作步骤链接

uniapp对接unipush的操作步骤:http://t.csdn.cn/j4Cz8

1.生成ios证书

生成ios证书的操作步骤:https://ask.dcloud.net.cn/article/152

上面这个链接的操作步骤已经很详细了,但是对于不熟悉苹果电脑的人来说,还是很难的。

在这里插入图片描述
这个文章中的操作步骤分为这几步:

1.1 准备环境——略过

必需要有苹果开发者账号,并且加入了 “iOS Developer Program”
Mac OS 10.9以上系统(如果已经申请p12证书则不需要)

这个是必须要有的,没有的可以自行申请,此处略过。

1.2登录IOS Dev Center——申请开发者账号后,就可以登录了——略过

在这里插入图片描述

1.3 申请苹果App ID

由于我这边是重新生成证书,因此是不需要重新申请App ID的,就是一个应用程序,自始至终都只需要申请一个App ID即可。如果没有App ID,则可以根据链接上的步骤进行处理。

我们最终要得到的就是 证书+描述文件,无论是开发还是发布环境,都需要分别生成这两种文件,两种环境也就是要生成4个文件。
在这里插入图片描述

1.4 生成证书请求文件——需要使用mac 苹果电脑

点击苹果电脑右上角的搜索图标,输入“钥匙串访问”,即可打开“钥匙串访问”功能。
在这里插入图片描述
打开菜单 “钥匙串访问”->“证书助理”,选择“从证书颁发机构请求证书…”:
在这里插入图片描述
打开创建请求证书页面,在页面中输入用户邮件地址、常用名称,选择存储到磁盘,点击 “继续” :
在这里插入图片描述
文件名称为“CertificateSigningRequest.certSigningRequest”,选择保存位置,点击 “存储” 将证书请求文件保存到指定路径下,后面申请开发(Development)证书和发布(Production)证书时需要用到
在这里插入图片描述

1.5 申请开发证书和描述文件——development——需要苹果本和上面生成的请求文件

在证书管理页面选择 “Certificates" 可查看到已申请的所有证书(TYPE:Development 为开发证书,Distribution为发布证书),点击页面的加号来创建一个新的证书:
在这里插入图片描述
在 “Software” 栏下选中 “iOS App Development” 然后点击 “Continue”:
在这里插入图片描述
接下来需要用到刚刚生成的证书请求文件,点击“Choose File…”选择刚刚保存到本地的 “CertificateSigningRequest.certSigningRequest”文件,点击 “Continue” 生成证书文件:
在这里插入图片描述
生成证书后选择 “Download” 将证书下到本地 (ios_development.cer):
在这里插入图片描述
接下来需要用到苹果电脑了

需要在苹果电脑种:双击保存到本地的 ios_development.cer 文件,会自动打开 “钥匙串访问” 工具说明导入证书成功,可以在证书列表中看到刚刚导入的证书,接下来需要导出 .p12 证书文件,选中导入的证书,右键选择 “导出…”:

注意事项:
1.如果双击ios_development.cer文件没有打开钥匙串访问,则一般情况下需要重启电脑
2.双击ios_development.cer文件,正常情况下会弹出钥匙串访问窗口,需要输入电脑的锁屏密码才可以使用
3.如果正常进入到下面的页面,则需要注意:默认选中的文件并非是你双击的文件,需要自行查找到对应的文件,一般就是开发和发布的区别。
在这里插入图片描述
4.如果此文件提示未被信任,则需要双击,更改信任未始终信任即可
在这里插入图片描述在这里插入图片描述
证书不受信任的解决办法:http://t.csdn.cn/LBxhP

上面的步骤都成功后,才可以进行.p12文件的导出。

接下来需要导出 .p12 证书文件,选中导入的证书,右键选择 “导出…”:
输入文件名、选择路径后点击 “存储”:
在这里插入图片描述
输入密码及确认密码后点击 “好”:
在这里插入图片描述
至此,我们已经完成了开发证书的制作(得到了 xxx.p12 证书文件),接下来,继续生成开发阶段所需的描述文件,在生成描述文件之前,需要先添加调试设备(iPhone 、iPad)

下面的步骤就是:添加调试设备。由于我这边已添加,则不再赘述,略过。
在这里插入图片描述
下面进行申请描述文件:

在证书管理页面选择 “Profiles”,可查看到已申请的所有描述文件,点击页面上的加号来添加一个新的描述文件:
在这里插入图片描述
在 “Development” 栏下选中 “iOS App Development”,点击“Continue”按钮:
在这里插入图片描述
这里要选择之前创建的 “App ID” (这里是“io.dcloud.hellouniapp”),点击“Continue”:
在这里插入图片描述
接下来选择需要绑定的证书,这里建议直接勾选 “Select All”,点击“Continue”:
在这里插入图片描述
选择授权调试设备,这里建议直接勾选 “Select All”,点击 “Continue”:
在这里插入图片描述
输入描述文件的名称(如“HelloUniAppProfile”), 点击 “Generate” 生成描述文件:
在这里插入图片描述
点击“Download”下载保存开发描述文件(文件后缀为 .mobileprovision)

在这里插入图片描述
完成!!!

1.6 申请发布证书和描述文件——distribution——需要苹果本和上面生成的请求文件

申请发布(Production)证书

在证书管理页面选择 “Certificates" 可查看到已申请的所有证书(TYPE:Development 为开发证书,Distribution为发布证书),点击页面的加号来创建一个新的证书:
在这里插入图片描述

在 “Software” 栏下选中 “App Store and Ad Hoc”,点击 “Continue”:
在这里插入图片描述

接下来同样需要用到之前生成的证书请求文件,点击“Choose File…”选择刚刚保存到本地的 “CertificateSigningRequest.certSigningRequest”文件,点击 “Continue” 生成证书文件:
在这里插入图片描述
生成证书成功,选择“Download” 将证书下载到本地 (ios_production.cer):
在这里插入图片描述

同样双击保存到本地的 ios_production.cer 文件将证书导入到 “钥匙串访问”工具中,可以在证书列表中看到刚刚导入的证书,接下来需要导出 .p12 证书文件,选中导入的证书,右键选择 “导出…”:
在这里插入图片描述

输入文件名、选择路径后点击 “存储”:
在这里插入图片描述

输入密码及确认密码后点击 “好”:
在这里插入图片描述

至此,我们已经完成了发布证书的制作(得到了 xxx.p12 证书文件),接下来,继续生成发布描述文件

申请发布 (Distribution) 描述文件
在证书管理页面选择 “Profiles”,可查看到已申请的所有描述文件,点击页面上的加号来添加一个新的描述文件:
在这里插入图片描述
在 “Distribution” 栏下选中 “App Store”,点击“Continue”按钮:
在这里插入图片描述

这里要选择之前创建的 “App ID” (这里是“io.dcloud.hellouniapp”),点击“Continue”:
在这里插入图片描述

接下来选择需要绑定的发布证书(iOS Distribution),这里勾选刚刚生成的发布证书”,点击“Continue”:
在这里插入图片描述

接下来输入描述文件的名称(如“HelloUniAppProfileDistribution”), 点击 “Generate” 生成描述文件:
在这里插入图片描述

然后点击 “Download” 将描述文件下载到本地(文件后缀为 .mobileprovision)
至此,我们已经得到了发布证书(.p12)及对应的发布描述文件(.mobileprovision)

2.证书申请完了,就可以进行uniapp的云打包了

2.1 更改版本号,便于检查更新

在这里插入图片描述

2.2 云打包

在这里插入图片描述

2.3 广告取消——如果有默认勾选且不可取消的广告,则需要在uniapp后台进行取消

uniapp取消开屏广告的操作步骤:https://www.niftyadmin.cn/n/4956429.html?action=onClick

2.4 打包报错的几个坑

Command line invocation:
/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild archive -sdk iphoneos15.2 -project [PackagePath]/HBuilder.xcodeproj -archivePath [PackagePath]/XArchive/HBuilder.xcarchive -scheme HBuilder CONFIGURATION=Release
在这里插入图片描述
解决办法:由于我用到了扫描和相册,则最新版的hbuilderX需要手动勾选上对应的模块才可以。
在这里插入图片描述
打包完成后,生成一个可以下载ipa文件的链接,点击链接下载即可。

3.使用香蕉云编进行ipa文件的构建和屏幕截图生成

由于在app store发布网站上,需要用到构建版本和屏幕截图:如下:

在这里插入图片描述
在这里插入图片描述

香蕉云编的链接:https://www.yunedit.com/update/appstore/list

在这里插入图片描述
在这里插入图片描述
注意上面的专用密码:不是苹果开发者账号的密码,而是需要专门生成的专用密码。
具体操作步骤可以查看截图中的教程来处理,超级简单。

构建版本报错的可能性:
1.版本冲突:如果没有更改版本号就生成,则会提示 已经上传过此版本
2.报错:就是上面设备和模块的问题了

在这里插入图片描述
这个香蕉云编也可以生成ios证书,这个我研究一下后再补充。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/139082.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

buuctf web [ACTF2020 新生赛]Upload

明了但不明显的文件上传 传个试试 行,抓包吧,php格式不行,就先上传要求的格式:jpg、png、gif 抓到上传的包之后,再修改成我们想要的 常见的php格式绕过有:php,php3,php4,php5,phtml,pht 挨个试试 这是上个…

第九章 常用服务器的搭建

第九章 常用服务器的搭建 1.配置FTP服务器 1.1.FTP简介 ​ FTP(File Transfer Protocol,文件传送协议)是TCP/IP网络上两台计算机间传送文件的协议,FTP是在TCP/IP网络和Internet上最早使用的协议之一,它属于网络协议…

【pytest】conftest.py使用

1. 创建test_project 目录 test_project/sub/test_sub.py def test_baidu(test_url):print(fsub {test_url}) test_project/conftest.py 设置钩子函数 只对当前目录 和子目录起作用 import pytest #设置测试钩子函数 pytest.fixture() def test_url():return "http…

可以创业,也可以副业的网上长期挣钱的项目

在这个飞速发展的互联网时代,越来越多的人开始尝试在网上创业或者寻找一份可持续的副业来增加收入。不过在网上赚钱的难度是比较大的,不是轻易就能做到的,所以不付出一番努力,没有悟性和执行力,那么是很难做好的&#…

淘天集团联合爱橙科技开源大模型训练框架Megatron-LLaMA

9月12日,淘天集团联合爱橙科技正式对外开源大模型训练框架——Megatron-LLaMA,旨在让技术开发者们能够更方便地提升大语言模型训练性能,降低训练成本,并保持和LLaMA社区的兼容性。测试显示,在32卡训练上,相…

pytorch环境搭建到pycharm项目映射配置(成功后回顾性记录/自用)

利用Anaconda创建pytorch虚拟环境 前提:成功安装Anaconda,确保可以打开NVIDIA控制面板 开始-》搜索“Anaconda Prompt” 打开后输入:conda create -n 你的虚拟环境名 python3.9。输入y,继续安装,完成。 输入&#…

【STM32学习】I2C通信协议 | OLED屏

🐱作者:一只大喵咪1201 🐱专栏:《STM32学习》 🔥格言:你只管努力,剩下的交给时间! 今天需要将代码烧录到开发板中,本喵默认大家都会创建工程,以及进行基本的…

A股风格因子看板 (2023.09 第07期)

该因子看板跟踪A股风格因子,该因子主要解释沪深两市的市场收益、刻画市场风格趋势的系列风格因子,用以分析市场风格切换、组合风格景露等。 今日为该因子跟踪第7期,指数组合数据截止日2023-08-31,要点如下 近1年A股风格因子收益走…

【ELFK】之消息队列kafka

一、kafka的定义 Kafka 是一个分布式的基于发布/订阅模式的消息队列(MQ,Message Queue),主要应用于大数据实时处理领域。Kafka 是最初由 Linkedin 公司开发,是一个分布式、支持分区的(partition&#xff0…

ImageJ查看图像灰度值矩阵及像素编号从0开始

ImageJ查看图像灰度值矩阵 imagej打开一幅图像 然后image —— transform——image to results,等一下就会出现灰度值矩阵 我读取的如下,可以看出,imagej对像素的编号是从0开始的,切记!!!跟C/…

编译原理.龙书学习1

第一章: 编译器:将程序翻译成一种能够被计算机执行的形式 解释器:解释器直接利用用户提供的输入执行源程序中指定的操作 一个编译器的结构 编译器将源程序映射为语义上等价的目标程序,这个映射过程由两部分组成:分析…

MyBatis友人帐之ResultMap及分页

一、ResultMap 1.1查询为null问题 要解决的问题&#xff1a;属性名和字段名不一致 解决方案 方案一&#xff1a;为列名指定别名 , 别名和java实体类的属性名一致 . <select id"selectUserById" resultType"User">select id , name , pwd as passwor…

【PyTorch 攻略 (4/7)】张量和梯度函数

一、说明 W在训练神经网络时&#xff0c;最常用的算法是反向传播。在该算法中&#xff0c;参数&#xff08;模型权重&#xff09;根据损失函数相对于给定参数的梯度进行调整。损失函数计算神经网络产生的预期输出和实际输出之间的差异。 目标是获得尽可能接近零的损失函…

QUIC协议报文解析(三)

在前面的两篇文字里我们简单介绍了QUIC的发展历史&#xff0c;优点以及QUIC协议的连接原理。本篇文章将会以具体的QUIC报文为例&#xff0c;详细介绍QUIC报文的结构以及各个字段的含义。 早期QUIC版本众多&#xff0c;主要有谷歌家的gQUIC&#xff0c;以及IETF致力于将QUIC标准…

打印由数字组成的金字塔图案——python

1222 33333 4444444 555555555打印由数字组成的金字塔图案。但n9时&#xff0c;如下图所示。 输入格式: 输入一个整数n&#xff08;1<A<9&#xff09;。 输出格式: 输出由数字组成的金字塔图案。 输入样例: 在这里给出一组输入。例如&#xff1a; 5输出样例: 在这…

【 2023华为杯C题】大规模创新类竞赛评审方案研究(思路、代码......)

目录 1 题目概述 2 问题 3 极差的定义及标准分的计算方法 4 题目及数据下载 5 思路、代码下载...... 1 题目概述 现在创新类竞赛很多&#xff0c;其中规模较大的竞赛&#xff0c;一般采用两阶段&#xff08;网评、现场评审&#xff09;或三阶段&#xff08;网评、现场评审…

高效畅通的iOS平台S5配置指南

在iOS平台上&#xff0c;使用S5代理ip访问互联网是一种非常有用的技巧。无论是为了保证隐私安全&#xff0c;还是解决网络限制问题&#xff0c;S5代理ip都能为您提供更快、更稳定的互联网访问体验。本文将为您详细介绍如何在iOS平台上配置和使用S5代理ip&#xff0c;让您的网络…

git之撤销工作区的修改和版本回溯

有时候在工作区做了一些修改和代码调试不想要了,可如下做 (1)步骤1:删除目录代码,确保.git目录不能修改 (2)git log 得到相关的commit sha值 可配合git reflog 得到相要的sha值 (3)执行git reset --hard sha值,可以得到时间轴任意版本的代码 git reset --hard sha值干净的代…

【Java 基础篇】Java网络编程实战:P2P文件共享详解

Java网络编程是现代软件开发中不可或缺的一部分&#xff0c;因为它允许不同计算机之间的数据传输和通信。在本篇博客中&#xff0c;我们将深入探讨Java中的P2P文件共享&#xff0c;包括什么是P2P文件共享、如何实现它以及一些相关的重要概念。 什么是P2P文件共享&#xff1f; …

23个销量最高的3D扫描仪【2023】

如果你可以 3D 扫描它&#xff0c;你就可以 3D 打印它。 市场上 3D 扫描仪的种类和质量非常丰富&#xff0c;机器尺寸、功能和价格各异。 这样的选择虽然本身是一件很棒的事情&#xff0c;但也会让从无用的东西中挑选出宝石成为一件苦差事。 推荐&#xff1a;用 NSDT编辑器 快速…