NativeScript / NativeScript/nativescript-cli

iOS Archive does not respect release flag

未關閉
#2,999 2 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視

還沒有人認領這個 Issue。

bug code signing os: ios
主要語言
JavaScript
星號
1.1k
分支
204
平均合併
1 天 9 小時
30 天內合併 PR
8

描述

I've spent hours debugging a problem with an IPA and ends ups that the CLI does not respect the --release flag when it does archiving. I have the following in my build.xconfig:

DEVELOPMENT_TEAM = 9832T735TV;

CODE_SIGN_ENTITLEMENTS = <My App>/Resources/app.entitlements;
CODE_SIGN_IDENTITY[config=Debug] = iPhone Developer;
CODE_SIGN_IDENTITY[config=Release] = iPhone Distribution;

PROVISIONING_PROFILE[config=Debug] = a5ec2d86-9bfb-48e4-b8c0-a75c39a0a5bd;
PROVISIONING_PROFILE[config=Release] = a03834fd-afb5-4bda-a789-c6bda4550ec0;

ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage;

When I run tns build ios --for-device --release and I inspect the contents of the platforms/ios/build/device/<myapp>.app the embedded.mobileprovision is the correct one (the Release one above). But if I extract the IPA file's Payload and inspect the embeeded.mobileprovision there it is the wrong one (the Debug one above). If I go to platforms/ios/archive and open the archive in XCode and export for AdHoc (for example) the correct provisioning profile is being used.

Expected behavior
The CLI should use the same provision profile when archiving as the one used to build the .app file.

貢獻指南

開啟貢獻指南

從這裡開始

  1. 先讀完整個 Issue,再讀專案的貢獻指南。
  2. 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
  3. Fork 儲存庫,在一個分支上完成修改。
  4. 送出 Pull Request,並在描述裡引用這個 Issue 編號。

研究方向

tns build ios --for-device --release 的封存流程開始,比較 platforms/ios/build/device/<myapp>.app 中選取的 provisioning profile 與擷取出的 IPA 中嵌入的 provisioning profile。接著檢查 platforms/ios/archive 下的相關內容;當封存使用與建置應用程式相同的 Release profile 時即表示完成。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
ios, javascript
領域
cli, mobile
Issue 類型
缺陷
難度
3/5
預估耗時
1-2 天
活躍度
停滯
描述清晰度
基本清楚
新手友好度
42/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。