一、在manifest.json进行如下配置
{
"name" : "aaaa",
"appid" : "id",
"description" : "",
"versionName" : "1.0.0",
"versionCode" : "100",
"transformPx" : false,
/* 5+App特有相关 */
"app-plus" : {
"usingComponents" : true,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"splashscreen" : {
"alwaysShowBeforeRender" : true,
"waiting" : true,
"autoclose" : true,
"delay" : 0
},
/* 模块配置 */
"modules" : {},
/* 应用发布信息 */
"distribute" : {
/* ios打包配置 */
"ios" : {
"dSYMs" : false
},
/* SDK配置 */
"sdkConfigs" : {
"ad" : {}
},
"icons" : {
"android" : {
"hdpi" : "xxx.png",
"xhdpi" : "xxx.png",
"xxhdpi" : "xxx.png",
"xxxhdpi" : "xxx.png"
},
"ios" : {
"appstore" : "xxx.png",
"ipad" : {
"app" : "xxx.png",
"app@2x" : "xxx.png",
"notification" : "xxx.png",
"notification@2x" : "xxx.png",
"proapp@2x" : "xxx.png",
"settings" : "xxx.png",
"settings@2x" : "xxx.png",
"spotlight" : "xxx.png",
"spotlight@2x" : "xxx.png"
},
"iphone" : {
"app@2x" : "xxxx.png",
"app@3x" : "xxx.png",
"notification@2x" : "xxx.png",
"notification@3x" : "xxx.png",
"settings@2x" : "xxx.png",
"settings@3x" : "xxx.png",
"spotlight@2x" : "xxx.png",
"spotlight@3x" : "xxx.png"
}
}
},
"splashscreen" : {
"androidStyle" : "default",
"android" : {
"hdpi" : "xxx.png",
"xhdpi" : "xxx.png",
"xxhdpi" : "xxx.png"
}
}
}
},
/* 快应用特有相关 */
"quickapp" : {},
/* 小程序特有相关 */
"mp-weixin" : {
"appid" : "",
"setting" : {
"urlCheck" : false
},
"usingComponents" : true
},
"mp-alipay" : {
"usingComponents" : true
},
"mp-baidu" : {
"usingComponents" : true
},
"mp-toutiao" : {
"usingComponents" : true
},
"uniStatistics" : {
"enable" : false
},
"vueVersion" : "2"
}
二、
上面圈的就这4个东西,在苹果开发者中心里搞
账号密码填进去,,,,
好了,现在开始搞id了:
·点加号,加一个
然后就按提示搞,就完事
·搞证书,证书
这里的新版,老版,是相对于离线的xcode版本的,在xcode11及以前,用老版就ok,不是的就新版
appstore,就是上架,,ad hoc就是测试的意思
uniapp云打包,直接用最新的就行,,接下来以上架加测试为例,因为包含了开发.,还有之外的东西
这里提示你,需要选,文件,那么文件在哪儿呢,,
这里,你必须需要一个mac笔记本,找到里面的钥匙串(图是我搬来的,我没有mac %>_<%)
接下来需要从钥匙串里,申请一个颁布证书,一定要保存磁盘(图是我搬来的,我没有mac %>_<%)
然后选定保存的位置,什么桌面啊什么的
保存后得到 CertificateSigningRequest.certSigningRequest 文件,,,
当当当当,这个就是你之前需要选择的文件咯
选择好文件继续干!
点击下载,你就获取到了一个证书啦
现在我们就一趟搞了私钥证书........................................(.p12文件)
这里需要我们把得到的证书,给他导回之前生成颁布证书的那个mac里,
把文件弄进那个电脑,然后双击这个证书就能打开并导入这个证书
然后就得到了.p12私钥文件咯
·搞测试设备
·搞描述文件,,,
这里以测试为例子
好了,这下子就有了所有需要的东西,可以打包了
ios白屏问题
1、如果编译器(包括cli版本)、基座(包括自定义基座)不匹配,可能造成白屏。
2、ios首次安装应用的时候需要配置网络,在配置网络的时候,接口就已经开始发送请求了,这时候就需要用uniapp自带的API(uni.getNetworkType)进行本机的网络检测,然后判断接口执行不执行。
var gettime = setInterval(() => {
this.initMacHandle()
}, 1000)
var time = setInterval(() => {
uni.getNetworkType({
success: res => {
if (res.networkType != 'none') {
clearInterval(gettime)
clearInterval(time)
}
}
})
}, 1000)
复制代码
3、真机正常,打包后白屏这个时候如果你有外部引入的iconfont,比如说阿里图标库,找到文件,把iconfont.js删掉如果没有,在manifest.json中usingComponents改成false,应该就可以解决了。
/* 5+App特有相关 */
"app-plus" : {
"usingComponents" : false,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"splashscreen" : {
"alwaysShowBeforeRender" : true,
"waiting" : false,
"autoclose" : false,
"delay" : 0
},
复制代码
4、在manifest.json中alwaysShowBeforeRender改成true,让首页渲染完再关闭启动页
/* 5+App特有相关 */
"app-plus" : {
"usingComponents" : false,
"nvueStyleCompiler" : "uni-app",
"compilerVersion" : 3,
"splashscreen" : {
"alwaysShowBeforeRender" : true,
"waiting" : false,
"autoclose" : false,
"delay" : 0
},
复制代码