在共享源之前从iOS应用程序中删除签名信息?

在共享源之前从iOS应用程序中删除签名信息?,ios,xcode,certificate,code-signing,provisioning-profile,Ios,Xcode,Certificate,Code Signing,Provisioning Profile,我的雇主最近与另一家公司达成协议,分享我们开发的iOS应用程序的源代码。我们尚未在app Store中发布此应用,但计划将来发布。在开发过程中,我们显然创建了一个应用程序ID、配置文件、用于开发的证书和远程通知等。所有这些(显然)都与我的雇主在Apple Developer Program(ADP)中的注册有关。应用程序本身当前配置为允许Xcode自动管理签名 在我们将此应用程序的源代码交付给另一家公司之前,我需要确保项目源中没有我雇主的信息(以便其他公司使用他们自己的信息)。我浏览了所有与项目

我的雇主最近与另一家公司达成协议,分享我们开发的iOS应用程序的源代码。我们尚未在app Store中发布此应用,但计划将来发布。在开发过程中,我们显然创建了一个应用程序ID、配置文件、用于开发的证书和远程通知等。所有这些(显然)都与我的雇主在Apple Developer Program(ADP)中的注册有关。应用程序本身当前配置为允许Xcode自动管理签名

在我们将此应用程序的源代码交付给另一家公司之前,我需要确保项目源中没有我雇主的信息(以便其他公司使用他们自己的信息)。我浏览了所有与项目相关的文件,唯一真正看到的是
project.pbxproj
文件中的一小部分,看起来它与签名相关

我猜这是很多决定在Github上分享他们的源代码的人都会做的事情,但我对iOS/Xcode应用程序开发还是相当陌生,所以我希望以前处理过这个问题的人能提供一些见解?非常感谢

  • 只需在Project->General->bundle identifier->设置为空中清除捆绑包标识符
  • 对于通知,其他公司/供应商将使用各自苹果账户的单独证书
  • 在.swift文件的每一行顶端都有默认注释代码,其中包括Mac名称,您可以将其删除


如果您只是想确保他们无法获得您公司的签名身份,您可以将项目发送给他们。由于您使用的是自动代码签名,他们需要拥有您公司的Apple开发者ID凭据才能登录到开发者帐户,以便Xcode生成证书和配置文件以您公司的身份进行签名。Xcode项目文件夹中不包含任何关键签名文件

当您启用自动代码签名并登录到Apple ID时,Scode将生成一个证书和私钥,该证书和私钥将进入该Mac的密钥链,并生成和下载一个配置文件,该配置文件将进入一个特定的目录,该目录对于所有项目()都是通用的,并且位于项目目录之外

正如@Jack在他的回答中所说的那样,文件中还有其他一些信息,您可能需要清理,但您不会让他们访问您的代码签名信息,因为您会按照打开自动代码签名的方式将项目发送给他们


长话短说,只需向他们发送项目目录

,但捆绑包ID被视为公共信息,与签名相关,但如果有人知道,不会使您的公司面临任何风险。另外,从技术上来说,禁用自动代码签名也不会带来任何好处。该合作伙伴知道另一家公司是谁,OP只是想确保他们不能将应用程序(或其他应用程序)作为OP的公司进行签名。你不需要做任何这些事情来防止这种情况。代码签名身份不会与项目一起存储。亲爱的@wottle,如有疑问,我需要确保项目源中不存在我的雇主的任何信息,因此如果您放入包含公司名称和应用程序名称的捆绑id,op不想共享该id。:)@杰克——我担心这种混乱是我的错,因为我不能清楚地解释我的问题。事实上,我并不担心他们知道bundle ID,只是想确保其他公司无法访问我雇主的任何签名信息。谢谢你的回答!我很感激@实际上,我们必须登录到xcode(xcode->Preference->Account)。所以你的账户是安全的。无需担心共享源代码。