代码之家  ›  专栏  ›  技术社区  ›  Kalle

iPhone应用程序ID切换导致组织者疯狂提供移动设备

  •  0
  • Kalle  · 技术社区  · 14 年前

    在开发应用程序的过程中,我被要求切换到另一个开发人员帐户,这导致在新帐户上添加新的应用程序ID和为adhoc创建新的设置配置文件,以及更新Xcode设置以使用新身份进行签名。

    问题是,在某个地方,Xcode以某种方式保留了旧的配置文件。

    也就是说,我有一个“旧”的分布概况。我创造了一个“新的”。我在Xcode中删除了组织者的“旧”命令。当我建立和存档时,“旧的” 重新出现 在Xcode的组织者中,临时组织不适用于人。

    我试过做一个

    grep -r "AD67EE83" *
    

    在应用程序的主干目录中,其中“ad67ee83”是组织者中的配置文件ID。我在build目录中得到了很多结果,如下所示:

    build/myapp.build/Adhoc-iphoneos/myapp.build/build-state.dat:N/Users/me/Library/MobileDevice/Provisioning Profiles/AD67EE83-BLAB-LABLA-BLAB-LABLABLABLAB.mobileprovision
    build/myapp.build/Adhoc-iphoneos/myapp.build/build-state.dat:CProcessProductPackaging "/Users/me/Library/MobileDevice/Provisioning Profiles/AD67EE83-BLAB-LABLA-BLAB-LABLABLABLAB.mobileprovision" /Users/me/Documents/svn/myapp/trunk/build/Adhoc-iphoneos/myapp.app/embedded.mobileprovision
    build/myapp.build/Adhoc-iphoneos/myapp.build/build-state.dat:x/Users/me/Library/MobileDevice/Provisioning Profiles/AD67EE83-BLAB-LABLA-BLAB-LABLABLABLAB.mobileprovision
    build/myapp.build/Adhoc-iphoneos/myapp.build/build-state.dat:lSLF07#2@192"ProcessProductPackaging "/Users/me/Library/MobileDevice/Provisioning Profiles/AD67EE83-BLAB-LABLA-BLAB-LABLABLABLAB.mobileprovision" build/Adhoc-iphoneos/myapp.app/embedded.mobileprovision303990620#303990620#0(0"0(0#0#108"/Users/me/Documents/svn/myapp/trunk/build/Adhoc-iphoneos/myapp.app/embedded.mobileprovision8628715392#445"    cd /Users/me/Docume    <com.apple.tools.product-pkg-utility> "/Users/me/Library/MobileDevice/Provisioning Profiles/AD67EE83-BLAB-LABLA-BLAB-LABLABLABLAB.mobileprovision" -o /Users/me/Documents/svn/myapp/trunk/build/Adhoc-iphoneos/m0#p.app/embedded.mobileprovision
    

    (我用blabla替换了实际的ID,以防您对此感到疑惑。)

    在任何情况下,旧的都会从某个地方被拔出来,恢复并使用。精神错乱。我在“组织者”中删除并搜索我的磁盘以查找那个广告…在/users/me/library/mobiledevices/provisioning profiles/中找到了几个同名的文件。

    我删除了那些和它 仍然 当我构建和存档时,将它们从某个地方拉出。实际上,这些文件也被放回那个目录中。

    我已经浏览了所有的设置,试图找到这个广告的任何参考资料…但是没有任何地方。

    旧的和“com.oldcorp”联系在一起,新的和“com.newcorp”联系在一起——做一个伟大的“newcorp”揭示

    myapp-Info.plist:    <string>com.newcorp.myapp</string>
    

    做一个伟大的“老公司”不会有任何结果。

    你知道它可能指的是这个旧的无效证书吗?(它甚至从开发者门户中删除,所以我认为它不可能直接从苹果下载。)

    更新:构建和归档任何项目都会导致“oldcorp”分发概要文件的复活,因此它与我的项目无关。但问题仍然存在-临时性的是不起作用的。

    通过重新创建一个项目并手动输入代码来解决这个问题。长期解决方案如下。

    1 回复  |  直到 14 年前
        1
  •  0
  •   hotpaw2    14 年前

    在处理不同的开发人员帐户时,我会在Mac上创建新的用户帐户,以防止Xcode缓存创建这些类型的混乱。

    这可能仍然为您提供解决方案。创建一个新的临时用户帐户,只在新用户帐户中安装新开发人员帐户所需的私钥、证书和设置,确保在生成设置中不使用任何共享用户目录,将项目从源代码管理签出到新用户A计算并运行Xcode,以便在那里进行即席构建。