Xcode 10 编译运行报错

今天把Xcode10.1升级到 Xcode10.3,在真机环境中编译运行一直报错,“This application’s bundle identifier does not match its code signing identifier.”,求大佬们助攻下!

编译环境:Xcode 10.2 、Xcode 10.3

得到库的过程:用Carthage github "NordicSemiconductor/IOS-Pods-DFU-Library" ~> 4.5

用到的动态库:iOSDFULibrary.framework 4.5.0版本、ZIPFoundation.framework 0.9.9版本

真机中运行报错信息:“This application’s bundle identifier does not match its code signing identifier.”

一开始认为都是自己证书,签名配置有问题。然后更换了一波 bundle ID 、signing Certificate。甚至去了开发者官网,重新更换了 开发者证书,并下载到本地,进行app的签名证书配置,还是报上面的错误。

然后认为是自己Xcode版本的问题,删除Xcode,重新下载安装最新版本Xcode 10.3,编译运行,问题依旧。

最后写了一个小demo,用来测试 iOSDFULibrary.framework 4.5.0版本、ZIPFoundation.framework 0.9.9 版本 动态库,发现在真机情况下编译运行还是有相同的错误。模拟器还是可以正常的编译运行。

图片说明

动态库打包前,用模拟器和手机设备都编译一次,再用脚本打包,下面附上打包脚本代码:
if [ "${ACTION}" = "build" ]
then
INSTALL_DIR=${SRCROOT}/Products/${PROJECT_NAME}.framework

DEVICE_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphoneos/${PROJECT_NAME}.framework

SIMULATOR_DIR=${BUILD_ROOT}/${CONFIGURATION}-iphonesimulator/${PROJECT_NAME}.framework

if [ -d "${INSTALL_DIR}" ]
then
rm -rf "${INSTALL_DIR}"
fi

mkdir -p "${INSTALL_DIR}"

cp -R "${DEVICE_DIR}/" "${INSTALL_DIR}/"
#ditto "${DEVICE_DIR}/Headers" "${INSTALL_DIR}/Headers"

lipo -create "${DEVICE_DIR}/${PROJECT_NAME}" "${SIMULATOR_DIR}/${PROJECT_NAME}" -output "${INSTALL_DIR}/${PROJECT_NAME}"

#open "${DEVICE_DIR}"
open "${SRCROOT}/Products"
fi

迦太基的问题

进入Building Phases
单击+唱歌并在New Run Script Phase中添加脚本
将/usr/local/bin/carthage copy-frameworks添加到脚本框中。
在Input Files中,为您在应用中使用的每个Carthage框架添加一行:$(SRCROOT)/Carthage/Build/iOS/FrameworkName.framework
如果您仍然遇到问题,还可以在Output Files下为每个框架添加:$(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/FrameworkName.framework