Manage iOS Enterprise Developer Program

后端 未结 1 1480
执笔经年
执笔经年 2021-01-30 07:29

We recently enrolled in the iOS Enterprise Developer Program to be able to use in-house distribution, which significantly simplifies the deployment of the apps inside our compan

1条回答
  •  清歌不尽
    2021-01-30 08:14

    I'm not entirely clear on what you need, but it sounds like you want to be able to build your app store apps for internal enterprise use. Is that correct?

    If you want to be able to build your app with two different bundle IDs you can create a custom build setting, and give it different values for your different configurations.

    So for example, you could create your Enterprise configuration:

    enter image description here

    Then go to your target's build settings and add a user-defined build setting:

    enter image description here

    Give it a name like BUNDLE_ID, and if you expand the triangle you can give it different values for each configuration:

    enter image description here

    Next, open your Info.plist file and enter ${BUNDLE_ID} for the bundle id value:

    enter image description here

    When you compile using the "Enterprise" configuration, which you can do using a custom scheme (or via the command line build process if that's what you use), the appropriate bundle id will be used.

    You can also configure the code signing/provisiong profile setting in the same way:

    enter image description here

    Once you do this, the correct push notification/iCloud entitlements will be used depending on the configuration.

    We've been doing this kind of thing for a long time now. Our build server will generate enterprise and app store versions of our apps for each build, using exactly this technique.

    When it comes to the provisioning portal, you will need to configure both app IDs separately for push notifications, iCloud, etc.

    This does mean that push notifications must be sent separately to the app store and enterprise versions since they will not share the same bundle ID or push notification certificate.

    The iCloud storage by default will be totally separate for the two versions. They may be able to access the same iCloud store (if you need this) as long as the entitlements are set up with the same team ID. But this may be a problem if you have two separate developer accounts.

    0 讨论(0)
提交回复
热议问题