Xcode 中构建的应用程序只能在编译它的 Mac 上启动

问题描述 投票:0回答:1

我更新了问题,因为我可以稍微缩小问题范围。从控制台检查崩溃日志表明我遇到了签名问题。我在没有任何 CocoaPods 的情况下重建了应用程序,现在将 MSAL 作为我的 Xcode 项目中的常规包依赖项。

将项目复制到设备上并进行编译时,生成的应用程序在该设备上运行良好。

如果我复制 .app 文件并在另一台 Mac 上打开它,该应用程序不会启动。我发现的错误来自 Intel mac,因为我的基于 Apple Silicon 的 mac 不会生成任何崩溃日志:

"app_name":"ui_test","timestamp":"2023-10-03 16:46:47.00 +0200","app_version":"1.0","slice_uuid":"62be6a29-6e5b-37a4-b396-1dbdf81d3f43","build_version":"1","platform":0,"bundleID":"tardik.newtodomsal","share_with_app_devs":0,"is_first_party":0,"bug_type":"309","os_version":"macOS 13.6 (22G120)","roots_installed":0,"name":"ui_test","incident_id":"94B57AAB-CF8D-4A6A-8545-4D622547DA91"}
{
  "uptime" : 7700,
  "procRole" : "Default",
  "version" : 2,
  "userID" : 501,
  "deployVersion" : 210,
  "modelCode" : "MacPro7,1",
  "coalitionID" : 1952,
  "osVersion" : {
    "train" : "macOS 13.6",
    "build" : "22G120",
    "releaseType" : "User"
  },
  "captureTime" : "2023-10-03 16:46:47.8577 +0200",
  "incident" : "94B57AAB-CF8D-4A6A-8545-4D622547DA91",
  "pid" : 3353,
  "cpuType" : "X86-64",
  "roots_installed" : 0,
  "bug_type" : "309",
  "procLaunch" : "2023-10-03 16:46:47.8008 +0200",
  "procStartAbsTime" : 7793359661050,
  "procExitAbsTime" : 7793416434750,
  "procName" : "ui_test",
  "procPath" : "\/Volumes\/VOLUME\/ui_test.app\/Contents\/MacOS\/ui_test",
  "bundleInfo" : {"CFBundleShortVersionString":"1.0","CFBundleVersion":"1","CFBundleIdentifier":"tardik.newtodomsal"},
  "storeInfo" : {"deviceIdentifierForVendor":"BF901324-EBC4-57EB-80A2-EA437BC60DE6","thirdParty":true},
  "parentProc" : "launchd",
  "parentPid" : 1,
  "coalitionName" : "tardik.newtodomsal",
  "crashReporterKey" : "FE05737C-5218-4DB2-B9C6-BE508F19E65F",
  "codeSigningID" : "",
  "codeSigningTeamID" : "",
  "codeSigningFlags" : 16777216,
  "codeSigningValidationCategory" : 0,
  "codeSigningTrustLevel" : 0,
  "wakeTime" : 6126,
  "sleepWakeUUID" : "AF336868-DAC2-4830-A714-F1D0473DEE13",
  "sip" : "enabled",
  "exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGKILL (Code Signature Invalid)"},
  "termination" : {"flags":66,"code":1,"namespace":"CODESIGNING","indicator":"Taskgated Invalid Signature"},
  "extMods" : {"caller":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"system":{"thread_create":0,"thread_set_state":439,"task_for_pid":9},"targeted":{"thread_create":0,"thread_set_state":0,"task_for_pid":0},"warnings":0},
  "faultingThread" : 0,
  "threads" : [{"triggered":true,"id":104306,"threadState":{"r13":{"value":0},"rax":{"value":0},"rflags":{"value":512},"cpu":{"value":0},"r14":{"value":0},"rsi":{"value":0},"r8":{"value":0},"cr2":{"value":0},"rdx":{"value":0},"r10":{"value":0},"r9":{"value":0},"r15":{"value":0},"rbx":{"value":0},"trap":{"value":0},"err":{"value":0},"r11":{"value":0},"rip":{"value":4382367856,"matchesCrashFrame":1},"rbp":{"value":0},"rsp":{"value":140702045277168},"r12":{"value":0},"rcx":{"value":0},"flavor":"x86_THREAD_STATE","rdi":{"value":0}},"frames":[{"imageOffset":20592,"symbol":"_dyld_start","symbolLocation":0,"imageIndex":0},{"imageOffset":1,"imageIndex":2}]}],
  "usedImages" : [
  {
    "size" : 638976,
    "arch" : "x86_64",
    "source" : "P",
    "base" : 4382347264,
    "uuid" : "3df96f32-b9c9-3566-a6b7-4daebc6d6563"
  },
  {
    "source" : "P",
    "arch" : "x86_64",
    "base" : 4303515648,
    "size" : 180224,
    "uuid" : "62be6a29-6e5b-37a4-b396-1dbdf81d3f43",
    "name" : ""
  },
  {
    "size" : 0,
    "source" : "A",
    "base" : 0,
    "uuid" : "00000000-0000-0000-0000-000000000000"
  }
],
  "vmSummary" : "ReadOnly portion of Libraries: Total=1180K resident=0K(0%) swapped_out_or_unallocated=1180K(100%)\nWritable regions: Total=8192K written=0K(0%) resident=0K(0%) swapped_out=0K(0%) unallocated=8192K(100%)\n\n                                VIRTUAL   REGION \nREGION TYPE                        SIZE    COUNT (non-coalesced) \n===========                     =======  ======= \nSTACK GUARD                       56.0M        1 \nStack                             8192K        1 \nVM_ALLOCATE                          4K        1 \n__DATA                              48K        2 \n__DATA_CONST                        48K        2 \n__DATA_DIRTY                        16K        1 \n__LINKEDIT                         384K        3 \n__TEXT                             800K        2 \nshared memory                        4K        1 \n===========                     =======  ======= \nTOTAL                             65.3M       14 \n",
  "legacyInfo" : {
  "threadTriggered" : {

  }
},
  "logWritingSignature" : "c8aecb4bac96e31f0d308bbfed9c73b1b8f822c9",
  "trialInfo" : {
  "rollouts" : [
    {
      "rolloutId" : "60186475825c62000ccf5450",
      "factorPackIds" : {

      },
      "deploymentId" : 240000062
    },
    {
      "rolloutId" : "6391cacc75b0720ff1f8c695",
      "factorPackIds" : {
        "COREOS_ICD" : "63957f508061fa721c8edc4a"
      },
      "deploymentId" : 240000007
    }
  ],
  "experiments" : [
    {
      "treatmentId" : "6dd670af-0633-45e4-ae5f-122ae4df02be",
      "experimentId" : "64406ba83deb637ac8a04419",
      "deploymentId" : 900000017
    }
  ]
},
  "reportNotes" : [
  "dyld_process_snapshot_get_shared_cache failed"
]
}
xcode macos compilation
1个回答
0
投票

如果您想在另一台 Mac 上运行在 Xcode 中构建的 Mac 应用程序,请存档并导出项目。

  1. 在 Xcode 中选择 Product > Archive 以存档项目。
  2. 选择“窗口”>“管理器”打开管理器。
  3. 从管理器中选择您的存档。
  4. 单击管理器右侧的“分发应用程序”按钮。
  5. 从打开的工作表中选择复制应用程序。
  6. 单击“下一步”按钮。
  7. 选择保存导出的应用程序的位置。
  8. 单击“导出”按钮。

更多详情请参阅以下文章:

在 Xcode 之外运行 Mac 应用程序

© www.soinside.com 2019 - 2024. All rights reserved.