上一篇文章講述了 《electron mac 打包、分發(fā)流程》,里面介紹了各類型包如何構(gòu)建,這里再介紹一下如何對 mas 包進(jìn)行測試。測試方式共分為兩種,分別是構(gòu)建 mas-dev 包,通過文件傳輸 app 文件,構(gòu)建 mas 包(.pkg),使用 TestFlight 測試
mas-dev 包測試
在上篇文章中也有講到如何構(gòu)建 mas-dev 包,這里再介紹一遍
準(zhǔn)備工作
配置
// package.json
{
...
"build": {
"masDev": {
"identity": "xxx (xxxxxxxx)",
"provisioningProfile": "./build-config/mas/MacDevelopment.provisionprofile",
...
},
"mac": {
"target": [
"mas-dev"
]
...
}
}
}
target 必須為 'mas-dev'
identity 可以不配置,electron-builder 在打包的時候會自動尋找證書
provisioningProfile 為構(gòu)建使用的 profile 文件,包含證書和設(shè)備信息
證書
使用 Mac Development 類型的證書,安裝到鑰匙串中

添加設(shè)備
在開發(fā)者后臺的設(shè)備管理中,使用你需要測試機(jī)器的 UDID 注冊設(shè)備;
UDID 可在 “關(guān)于本機(jī)” -> “更多信息” -> “系統(tǒng)報告” -> “硬件” 中查看
profile 文件
profile 是一個描述文件,需要綁定對應(yīng)的證書和對應(yīng)的設(shè)備;
在開發(fā)者后臺新建一個 Development 類型的 profile 文件,綁定對應(yīng)的證書、設(shè)備,下載到本地,相對路徑引入即可
構(gòu)建分發(fā)
使用 electron-builder 打包、簽名,運(yùn)行 electron-builder build --mac 構(gòu)建 mas-dev 包;
最終生成 .app 文件,可以分發(fā)測試使用
TestFlight 測試
- 參考上文 《electron mac 打包、分發(fā)流程》,構(gòu)建 mas 正式包,需要注意的是
在 electron-builder 配置中必須配置 entitlementsLoginHelper 選項,并指向一個只包含了“com.apple.security.app-sandbox”權(quán)限的plist文件,不然你會在 TestFlight 中看到該版本顯示 “尚無法測試”。最終的配置文件:
// package.json
{
...
"build": {
"mas": {
"entitlements": "./build-config/mas/entitlements.mas.plist"
"entitlementsInherit": "./build-config/mas/entitlements.mas.inherit.plist"
"entitlementsLoginHelper": "./build-config/mas/entitlements.mas.loginhelper.plist"
"provisioningProfile": "./build-config/mas/MacAppDis.provisionprofile",
...
},
"mac": {
"target": [
"mas"
]
...
}
}
}
構(gòu)建成功后,會生成 .pkg 文件,使用 Transporter 工具上傳你的應(yīng)用,并驗證提交,到 Testflight 頁面中,你可以看到應(yīng)用的簽名進(jìn)度(通常要等半小時才會出來)
-
隨后,你便可以在 TestFlight 頁面中配置構(gòu)建版本和你想要分發(fā)的測試員了
image.png
以上就是 electron mac 端 appstore 版本的測試方式,下一篇準(zhǔn)備分享 electron 如何分別構(gòu)建 x64、arm64 和 universal 包
