游戏发布AppStore平台

         首先,要注册一个开发者账号。这里不多说了,下载官方app“Developer”,然后买个能发布的账号,个人💲99的就行。(其实还有点麻烦,我的好像是人脸识别后出问题了,反正遇到问题找苹果官方客服就行)

        下面开始发布流程。(Xcode15.4)

一、申请证书、AppID和描述文件

        打开苹果开发者中心网站:https://developer.apple.com,点击右侧Account。

        第二项是证书、AppID和描述文件入口(Certificates, ldentifiers & Profiles)

        

1.1  证书(Certificates)
1.1.1 导出本地证书

Mac电脑上启动台找到“钥匙串访问”,打开钥匙串访问。

钥匙串访问->证书助理->从证书颁发机构请求证书

 

用户电子邮件地址:必须填开发者账号所用的邮箱地址                                                                     常用名称:可以自定义名称                                                                                                                    点击继续

选好存放的位置,点击存储

1.1.2 创建发布证书

点击“证书(英文)”

点“+”

选择“iOS Distribution ”(因为要发布到AppStore),点“Continue”。

点击“Choose File” 

找到刚才导出的本地证书

点“Continue”

点“Download”下载到电脑 

然后我不记得证书是默认加到“钥匙串访问”中,还是需要双击一下证书了。看下“钥匙串访问”->“我的证书”,要是没有就双击下证书。

 

导出证书:在”钥匙串访问“中右键刚刚的证书,然后选择“导出..”

 点击“存储”

输入密码

导出完成

1.2 AppID (Identifers)

点击“标识符(英文)”

 点“+”

选择“App IDs” 

选第一项“App” (默认就是第一项)

 填写描述(Discription)和包名(Bundle ID)

描述(Discription) :自定义,英文                                                                                                   包名(Bundle ID):一般是com.公司名. 项目名                                                                                       填好后点“Continue”

1.3 描述文件 (Profiles

点击“描述文件(英文)”

点“+”

选择“App Store Connect”

 选择刚刚创建的AppID,点“Continue”

选择刚刚创建的发布证书,点“Continue”

给描述文件起个名,点“Generate” 

点“Download” 

双击刚下载的描述文件,安装到Xcode中,一般双击后都会自动以Xcode方式打开。好像Xcode5.1.1版本后是不需要安装这一步的,但之前下载页面上写着“Download and double click the following file to install your Provisioning Profile”,所以还是双击下吧。

二、打包&上传代码

2.1 打包

确保程序能正确运行。                                                                                                                          连接手机,Xcode运行。

2.2 正式签名包

就是用上面创建过的证书、AppID和描述文件给Xcode项目打个正式包。

修改Signing&Capabilities->Release,注意要勾掉“Automatically manage signing”。(Debug模式还是要勾选的,不然Debug打到手机上会报错)。                                                                 Bundle Identifier填之前申请的AppID                                                                                                               Provisioning Profile选择之前下载的描述文件

修改Build Settings->Signing->Code Signing Identity->Release,选择你的发布证书。

Xcode->Product->Archive

Archive前要确认选择的是Any iOS Device(arm64)

 

如果没报错的话证明签名包已经打好了,可以直接看后面的“上传代码”。                                         这里记录下遇的一个问题,有同样遇到的小伙伴也可以参考下。 

问题:

Failed to find or create execution context for description ‘<IBCocoaTouchPlatformToolDescription: 0x6000036e28a0> System content for IBVisionldiom-EightAndLater <IBScaleFactorDeviceTypeDescription: 0x6000036e20a0> scaleFactor=2x, renderMode.identifier=(null)’

解决:

1、关闭Xcode

2、在终端中输入以下命令,并回车:

sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService

3、重启电脑,不要勾选“再次登录时重新打开窗口”那个选项

4、如果还不行,反复操作123,多试几次

最后,看到下面的界面证明正式签名包打包成功​​​​​​​

2.3 上传代码

将刚才打的正式签名包上传到AppStore。

Window->Organizer,打开Archives页面

找到刚刚打的正式签名包,点“Distribute App”

 选“App Store Connect”(默认就是这个),点“Distribute”

如果显示“Add Upload Complete”页面,证明上传成功。同样我在上传成功前遇到几个问题,这里就不记录了,文章太长影响阅读。

看到下面的页面证明代码上传成功。

​​​​​​​

后面收到邮件提示(成功或者出现问题)。

三、发布

打开苹果开发者中心网站:https://developer.apple.com,点击右侧Account。

点击“app”。

点击刚上传的app (或者点“+”新建也可以)。

3.1 准备提交

3.1.1 上传宣传图

需要iPhone和iPad各传一套宣传图。iPhone有6.5寸和6.9寸,按照给出的格式6.5寸和6.9寸有一套就可以。

3.1.2 推广文本、描述、关键词

3.1.3 技术网址和营销网址

填写技术支持网址

可以填CSDN个人主页。

填写营销网址

可以填CSDN个人主页。

备注:

有接了广告SDK的,可能写CSDN个人主页不行。应为要包含能下载的合作广告商的一些信息的文件。(自行百度吧)

3.1.4 填写版权

年份 你的名字

3.1.5 构建版本

黄色叹号暂时不用管,后面处理,点“完成”。 

点击“管理”,解决黄色叹号问题。 

点击第四项“不属于上述的任意一种算法”。点“存储”。 

备注:

看下面提示,在Info.plist中也可以处理。

3.1.6 App审核信息

右侧填写联系信息,我做的是单机游戏,取消勾选“需要登录”,备注空着就行。 

 3.2 App信息

3.2.1 点击左侧“App信息”,填写名称和副标题。

3.2.2 内容版权

3.2.3 年龄分级

3.3 价格和销售范围 

点击左侧“价格和销售范围”。

3.4 App隐私

点击左侧“App隐私”。

​​​​​​​

 3.4.1 隐私政策网址

在CSDN发布文章,内容上写一些声明不涉及用户隐私啥的就行,最后在隐私政策网址上填上就行。用户隐私选择网址不用填。(自行百度吧)

3.4.2  App 会收集用户哪些数据

点“开始”。

选择“否”,点“存储”。

3.4.3 App隐私发布

点“发布”。

3.5 提交审核

点击“添加以供审核”。

​​​​​​​

点击“提交至App审核”。

​​​​​​​

最后等待审核完成,没问题的话会收到审核成功的邮件(邮件标题:is now “Ready for Distribution”)。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

​​​​​​​移远通信基于高通平台发布可集成边缘计算功能的5G MBB解决方案

在5G技术与人工智能深度融合的背景下&#xff0c;各行各业正迎来前所未有的创新机遇。为了加速5G移动宽带&#xff08;MBB&#xff09;行业向智能化转型&#xff0c;并简化边缘计算应用的开发流程&#xff0c;移远通信近期隆重推出了基于骁龙5G调制解调器及射频系统打造&#x…

flinkSql 将流和表的互相转换

流——>表 方式一 方式二 方式一&#xff1a;写sql DataStreamSource<String> source env.socketTextStream("localhost", 8881); // 表名&#xff0c;流&#xff0c;字段名称 tableEnv.createTemporaryView("t_1",source&#xff0c;$("…

React性能优化

三个可以优化的地方 避免过度多次渲染 组件会在以下情况下重新渲染 注意&#xff1a;例如组件组合的形式&#xff0c;<Test><Counter></Counter></Test>,即使Test发生了重新渲染&#xff0c;Counter也不会重新渲染。另外使用React这样的库或框架时&a…

分布式事务的前世今生-纯理论

一个可用的复杂的系统总是从可用的简单系统进化而来。反过来这句话也正确: 从零开始设计的复杂的系统从来都用不了&#xff0c;也没办法让它变的可用。 --John Gal 《系统学》 1975 1. 事务的概念 百科&#xff1a; 事务&#xff08;Transaction&#xff09;&#xff0c;一般是…

k8s-编写CSI插件(3)

1、概述 在 Kubernetes 中&#xff0c;存储插件的开发主要有以下几种方式&#xff1a; CSI插件&#xff1a;Container Storage Interface (CSI) 是 Kubernetes 的标准插件接口&#xff0c;是全新的插件方案&#xff0c;插件和驱动调用通过grpc协议&#xff0c;功能丰富&#x…

Linux系统:网络

目录 一、网络协议 1.网络协议概念 2.协议分层 3.OSI七层模型和TCP/IP五层&#xff08;或四层&#xff09;模型 4.为什么要有网络协议&#xff1f; 5.网络通信协议的原理 二、网络传输的基本流程 1.局域网的网络传输流程 1.MAC地址 2.局域网通信原理&#xff08;以太网…

电子应用设计方案-45:智能火锅系统方案设计

智能火锅系统方案设计 一、引言 随着人们生活水平的提高和对饮食体验的追求&#xff0c;智能火锅系统应运而生。本方案旨在设计一款集智能化控制、高效加热、安全保障和个性化体验于一体的智能火锅系统。 二、系统概述 1. 系统目标 - 实现精准的温度控制&#xff0c;满足不同…

论文概览 |《Urban Analytics and City Science》2023.03 Vol.50 Issue.3

本次给大家整理的是《Environment and Planning B: Urban Analytics and City Science》杂志2023年3月第50卷第3期的论文的题目和摘要&#xff0c;一共包括18篇SCI论文&#xff01; 论文1 A new kind of search 一种新型的搜索 【摘要】 ChatGPT (2022) was first launched o…

jwt简介和在go中的简单使用

什么是 JSON Web 令牌&#xff1f; JSON Web 令牌 &#xff08;JWT&#xff09; 是一种开放标准 &#xff08;RFC 7519&#xff09;&#xff0c;它定义了一种紧凑且自包含的方式&#xff0c;用于将信息作为 JSON 对象在各方之间安全地传输。此信息是经过数字签名的&#xff0c…

机器学习详解(3):线性回归之代码详解

文章目录 1 数据预处理2 构建线性回归模型并绘制回归线初始化方法前向传播&#xff1a;forward_propagation代价函数&#xff1a;cost_function反向传播&#xff1a;backward_propagation参数更新&#xff1a;update_parameters训练方法&#xff1a;train代码运行结果 3 使用Py…

iOS如何自定义一个类似UITextView的本文编辑View

对于IOS涉及文本输入常用的两个View是UITextView和UITextField&#xff0c;一个用于复杂文本输入&#xff0c;一个用于简单文本输入&#xff0c;在大多数开发中涉及文本输入的场景使用这两个View能够满足需求。但是对于富文本编辑相关的开发&#xff0c;这两个View就无法满足自…

唇形同步视频生成工具:Wav2Lip

一、模型介绍 今天介绍一个唇形同步的工具-Wav2Lip&#xff1b;Wav2Lip是一种用于生成唇形同步&#xff08;lip-sync&#xff09;视频的深度学习算法&#xff0c;它能够根据输入的音频流自动为给定的人脸视频添加准确的口型动作。 &#xff08;Paper&#xff09; Wav2Lip模型…

轻量化特征融合 | YOLOv11 引入一种基于增强层间特征相关性的轻量级特征融合网络 | 北理工新作

本改进已同步到Magic框架 摘要—无人机图像中的小目标检测由于分辨率低和背景融合等因素具有挑战性,导致特征信息有限。多尺度特征融合可以通过捕获不同尺度的信息来增强检测,但传统策略效果不佳。简单的连接或加法操作无法充分利用多尺度融合的优势,导致特征之间的相关性不…

数学课上的囚徒问题(2)

#include<bits/stdc.h> using namespace std; int main() {int n; cin>>n;double res0;for(int in/21;i<n;i)res1./i;cout<<fixed<<setprecision(12)<<(1-res); } 赛后看到别人那么短的代码直接破防了&#xff0c;才发现思考起来也不是很简单…

21Java之多线程、线程池、并发、并行

一、多线程常用方法 下面我们演示一下getName()、setName(String name)、currentThread()、sleep(long time)这些方法的使用效果。 public class MyThread extends Thread{public MyThread(String name){super(name); //1.执行父类Thread(String name)构造器&#xff0c;为当前…

HttpClient介绍

1. 介绍 2. 发送Get方式请求 public void httpGetTest() throws Exception{// 创建HttpClient对象CloseableHttpClient httpClient HttpClients.createDefault();// 创建请求方式对象HttpGet httpGet new HttpGet("http://localhost/user/shop/status");// 发送请…

矩阵的乘(包括乘方)和除

矩阵的乘分为两种&#xff1a; 一种是高等代数中对矩阵的乘的定义&#xff1a;可以去这里看看包含矩阵的乘。总的来说&#xff0c;若矩阵 A s ∗ n A_{s*n} As∗n​列数和矩阵 B n ∗ t B_{n*t} Bn∗t​的行数相等&#xff0c;则 A A A和 B B B可相乘&#xff0c;得到一个矩阵 …

智能跳转 - 短链接高级特性详解

看到标题&#xff0c;我只想说短链接工具已经卷疯了。很多人都知道&#xff0c;短链接的基础特性就是将长链接变短&#xff0c;更加简洁美观便于传播推广&#xff1b;高级一点的功能还有数据统计&#xff0c;便于运营进行分析决策&#xff1b;更高级的还能绑定企业自己的域名&a…

离线写博客(失败) - 用Markdown来离线写博客

因为想控制一下用网&#xff0c;但是又有写博客的需求&#xff0c;所以想研究一下离线写博客。 我看CSDN上面好像有很多介绍&#xff0c;Windows Live Writer 啦&#xff0c;Markdown啦&#xff0c;还有一些其他的&#xff0c;我看了一下&#xff0c;好像 Markdown还有点儿靠谱…

第三节、电机定速转动【51单片机-TB6600驱动器-步进电机教程】

摘要&#xff1a;本节介绍用定时器定时的方式&#xff0c;精准控制脉冲时间&#xff0c;从而控制步进电机速度 一、计算过程 1.1 电机每一步的角速度等于走这一步所花费的时间&#xff0c;走一步角度等于步距角&#xff0c;走一步的时间等于一个脉冲的时间 w s t e p t … ……