.NET移动开发,关于发布IOS的方法(本人亲身经历折腾很久终于成功)
前情提要:这位.NET程序员兄弟使用Smobiler开发了一个APP,尽管Smobiler云平台已经最大限度的简化了iOS应用的打包操作,但仍绕不开苹果公司强制要求的p12文件,p12文件需要开发者自行生成,在此,qio763分享了此次生成p12文件的经验,无论是初学iOS原生开发,还是.NET移动开发平台的smobiler,在生成iOS安装包之前,p12文件生成这一步都是必经之路。
(P.S.提交了正确的p12文件后,应用已成功打包)
----------------------------------以下为原文----------------------------------
在发布IOS版本前,需要做的准备工作:
本人使用的虚拟主机,版本为10.12(但不支持xcode10有点尴尬),如果你使用的MAC系统,可以直接操作,虚拟主机方面请自行百度,此处不讲
第一步,生成一个你的个人证书(钥匙串)
第二步:进入IOS开发者中心进行相关的设置(此处非常重要,很多人包括我本人都出现了错误)
点击Certificates下的all弹出的菜单中点击+号,新添加一个你的个人证书,如已有证书可跳过此步
需要注意此步聚很重要,此处必须选择红框部分,因为smo发布要求发布正式版本,所以需要选择此项,然后点击continue直到出现以下画面
点击红框部分,选择刚才我们使用钥匙串申请的文件
完成后点击download下载到本地,双击刚下载的证书,将其导入到钥匙串中
添加完成后,我们需要将证书生成P12个人证书,这也是smo所需要的证书,我们在钥匙串中请行以下操作
右键点击我们刚才添加的证书,选择导出证书
导出证书时,文件格式默认为P12,我们就不要动了,也不要去管他,默认就好。
导出证书时需填写一个你的导出密码,这个密码可以随意设置,但必须牢记,对应smobier中的导出密码
到此,证书部分就算是完成了,企业证书原理一样,操作方法也是这样。下面是创建我们的APPID与我们的发布描述。
发布描述部分相对比较麻烦,很多用户出错基本都在这里出错(我自己在这出错好几次)
发布描述,首先需要创建APPID
Identifiers》appids中点击+号
需要注意的是BundleID必须与你的smobier的应用包名一致,如果不一致将无法正常打包
必须勾选Push Notifications选项,包含了推送信息,然后点击继续按钮直到完成
点击刚创建的appid弹出详细信息,我们会发现,该功能并没有应用,我们点击edit进行编辑
我们会发现,关于Push Notifications部分有两个选项,其实一个是测试版,一个是正式版,我们这里选择正式版并创建,点击继续按钮进入选择页面
点击选择按钮,我们选择,我们最开始用钥匙串生成的文件,点击继续完成appid Push
Notifications的修改,至此,appid创建完成,接下来就是发布描述文件的生成了
Provisioning Profiles→Distribution
点击Distribution中的+号
在此处我们选择正式版,也就是红色框部分,点击继续
此处选择,我们刚才创建的appid,此ID对应的是我们的smobiler的包名
选择我们第一步创建的证书,点击继续,完成发布描述,点击download下载我们的发布描述文件
我们在smobiler的应用平台发布IOS时,就将我们刚才生成的P12文件上传,密码填写我们导出P12证书的密码,将下载的发布描述文件上传后,就可以完成IOS的打包了
打包IOS很重要,特别是你的插件,如果包名错误了,再删除是很难恢复的,我的插件就是因为打包操作出现问题就没有了,很难过
作者:qio763
(原帖地址:https://www.smobiler.com/forum.php?mod=viewthread&tid=11605)
.NET移动开发,关于发布IOS的方法(本人亲身经历折腾很久终于成功)的更多相关文章
- iOS开发 GET、POST请求方法(NSURLSession篇)
NSURLConnection,在iOS9被宣布弃用,本文不使用NSURLConnection进行网络编程,有兴趣的童鞋可以参考: [iOS开发 GET.POST请求方法(NSURLConnectio ...
- iOS开发 GET、POST请求方法(NSURLConnection篇)
Web Service使用的主要协议是HTTP协议,即超文本传输协议. HTTP/1.1协议共定义了8种请求方法(OPTIONS.HEAD.GET.POST.PUT.DELETE.TRACE.CONN ...
- iOS开发中的Html解析方法
iOS开发中的Html解析方法 本文作者为大家介绍了在iOS开发中的Html解析方法,并同时提供了Demo代码的下载链接,Demo 解析了某个网站(具体可在代码中查看)的html网页,提取了图片以及标 ...
- iOS开发 GET、POST请求方法:NSURLSession篇
NSURLConnection,在iOS 9被宣布弃用,本文不使用NSURLConnection进行网络编程,有兴趣的童鞋可以参考: iOS开发 GET.POST请求方法(NSURLConnectio ...
- 前端h5开发发布ios
1.首先要有一个html5+的软件HBuilder 2.整体完成然后就点发布,主要注意页面入口就是你的网页的入口 3.下载一个appuploader软件,无需mac本就可以方便的申请证书和描述(因为发 ...
- iOS开发---- 开发错误汇总及解决方法
本文转载至 http://blog.csdn.net/shenjx1225/article/details/8561695 一.今天调试程序的时候,出现了一个崩溃,信息如下: 2013-02-01 0 ...
- Xamarin For Visual Studio 3.0.54.0 完整离线破解版(C# 开发Android、IOS工具 吾乐吧软件站分享)
Xamarin For Visual Studio就是原本的Xamarin For Android 以及 Xamarin For iOS,最新版的已经把两个独立的插件合并为一个exe安装包了.为了区分 ...
- 开发QQ互联ios版Ane扩张 辛酸史
来源:http://www.myexception.cn/operating-system/1451490.html 开发QQ互联ios版Ane扩展 辛酸史 开发QQ互联ios版Ane扩展辛酸史: 1 ...
- 发布iOS应用(xcode5)到App Store(苹果商店) 详细解析
发布iOS应用(xcode5)到App Store(苹果商店) 详细解析 作者:Memory 发布于:2014-8-8 10:44 Friday IOS 此教程可能不太适合,请移步至最新最全的:201 ...
随机推荐
- DNS Server Centos 7
1.安裝服務 #yum update –y #yum install bind –y #systemctl start named 開啟服務named #systemctl ...
- 三元运算符 与 return
有三元运算符可以很好的代替if else简单语句 但是在使用的时候发现 与 return使用的时候 需要用这种形式 错误形式: $a ? return 1 ? return 0; 正确形式: retu ...
- 用Fundebug插件记录网络请求异常
在服务端,不管我们使用Node.js.Java.PHP还是Python等等,都会用日志以文本的形式记录请求以及报错信息.这个对于后端做事后分析是很有用的. 另一方面,前端有时候出问题其实是因为后端接口 ...
- eclipse中去掉py文件中烦人的黄色弹框
eclipse中写py文件,当鼠标点击在参数上时总是出现黄线的弹框,影响人操作,感觉特别烦,如下: 解决方案: windows--preferences--hover--pydev--hover取消选 ...
- DB2数据库操作XMl字段
1.xml查询语句 ① 查询xml中的单个节点内容 select TM_PRM_OBJECT.ORG , TM_PRM_OBJECT.PARAM_CLASS , TM_PRM_OBJECT.PARAM ...
- 对于单页应用中如何监听 URL 变化的思考
周末开发了一个在 GitHub 中给 repo 增加自定义备注的 chrome 扩展. 开发这个扩展的原因是我在 GitHub 中所 star 的项目实在太多了(截止目前 671 个),有的项目过个几 ...
- kubernetes进阶之四:Label和Label Selector
一:什么是Label Label是Kubernetes系列中另外一个核心概念.是一组绑定到K8s资源对象上的key/value对.同一个对象的labels属性的key必须唯一.label可以附加到各种 ...
- [Android]自己动手做个拼图游戏
目标 在做这个游戏之前,我们先定一些小目标列出来,一个一个的解决,这样,一个小游戏就不知不觉的完成啦.我们的目标如下: 游戏全屏,将图片拉伸成屏幕大小,并将其切成若干块. 将拼图块随机打乱,并保证其能 ...
- 从壹开始前后端 [vue后台] 之二 || 完美实现 JWT 滑动授权刷新
缘起 哈喽大家周一好!不知道小伙伴们有没有学习呀,近来发现各种俱乐部搞起来了,啥时候群里小伙伴也搞一次分享会吧,好歹也是半千了(时间真快,还记得5个月前只有20多人),之前在上个公司,虽然也参与组织过 ...
- Boosting(提升方法)之AdaBoost
集成学习(ensemble learning)通过构建并结合多个个体学习器来完成学习任务,也被称为基于委员会的学习. 集成学习构建多个个体学习器时分两种情况:一种情况是所有的个体学习器都是同一种类型的 ...