最近发现 蒲公英https://www.pgyer.com/ 网站 只要把企业版的 ipa 文件上传就能下载 安装App 感觉很奇怪,没有配置 xml 格式的plist 就能 下载,终于搞清楚原因了。这里先科普一下:企业版账号如何分发App。

下面的步骤详细讲了如何使用企业版账号分发。蒲公英网之所以能实现只上传ipa 就能下载 是其自己生成了plist文件,生成的办法是

ipa包结构解析?

ipa包解压后,是一个Payload文件夹,打开Payload文件夹,再右键显示包内容,包含2部分:_CodeSignature文件夹+程序的资源图片,再打开_CodeSignature文件夹,是一个CodeResources文件,打开观察发现只是一些属性值。
看起来ipa包解压后主要是些资源文件,那真正的二进制代码在哪里呢?或者谁能详细剖析一下ipa的包结构以及对应的文件?
下图就是解析的ipa文件的包内容

Distributing Apple Developer Enterprise Program Apps

The Apple Developer Enterprise Program allows you to develop proprietary, in-house iOS, and watchOS apps that you can distribute to your employees and outside the store.

If you are not a member of the Apple Developer Enterprise Program, go to Apple Developer Enterprise Program to join.

Note: Members of the Apple Developer Enterprise Program can also create Developer ID certificates to distribute Mac apps, described in Distributing Apps Outside the Mac App Store.

Developing Apple Developer Enterprise Program Apps

The workflow for developing Apple Developer Enterprise Program apps is similar to the workflow used by any large organization that develops multiple apps for the store. During development, let Xcode manage your assets for you and use Member Center only as needed. Xcode will create your App ID and configure your project correctly to use the app services you enable.

Build Your Team (Team Agent)

If you are the team agent (the person who joins the Apple Developer Enterprise Program), build your team first by inviting team members and assigning roles. Assign the team admin role to people who help you manage your team. Assign the team member role to persons who develop your app but don’t have permission to distribute it. The team agent and team admins share the responsibility of exporting your app for distribution outside of the store. The tasks a team agent can perform are a superset of the tasks that a team admin can perform. Initially, the team agent is the only team member. To invite others, read Inviting Team Members and Assigning Roles.

To learn how to manage your team, read Managing Your Team in Member Center.

Create Shared Team Provisioning Profiles (Team Admin)

If you are a team admin, perform these steps to enable your development team:

  1. Create a team provisioning profile and enable capabilities.

    Follow the same steps as an individual developer to create a team provisioning profile and enable capabilities, described in Configuring Your Xcode Project for Distribution andAdding Capabilities. Xcode automatically creates an appropriate App ID and provisioning profile for you. If you want to use APNs, read Configuring Push Notifications for additional steps. For the capabilities available to an enterprise app, read Supported Capabilities.

  2. Optionally, register test devices.

    Xcode will automatically register a device connected to a Mac and selected from the Scheme toolbar menu by team members.

Important: Each team member should have his or her own Apple ID and development certificate. Don’t share signing identities between team members.

Team admins can also remove team members as needed. If you use contractors to develop your apps, invite them to join your team and assign them the team member role. When their contract ends, remove them from your team, described in Removing Team Members.

Begin Development (Team Member)

If you are a team member, perform these steps to get started:

  1. In Xcode, add your Apple ID to the Accounts preferences, described in Adding Your Apple ID Account in Xcode.

  2. To create your development certificate and register your device, follow the steps in Configuring Your Xcode Project for Distribution.

    Select a team that is a member of the Apple Developer Enterprise Program from the Team pop-up menu. Xcode will regenerate and download team provisioning profiles as needed.

Testing Apple Developer Enterprise Program Apps

You use an ad hoc provisioning profile, described in Archiving Your App, to export an Apple Developer Enterprise Program app from Xcode for beta testing. Only the team agent and team admins can create an ad hoc provisioning profile for distribution. After you export your app, consider using Xcode Server to distribute it to testers and other team members. See Xcode Server and Continuous Integration Guide for more information about using Xcode Server.

Important: As a member of the Apple Developer Enterprise Program, you don’t have an iTunes Connect account or the ability to distribute your app for beta testing using iTunes Connect.

Creating Additional Enterprise Distribution Certificates

As a member of the Apple Developer Enterprise Program, you are allowed to create multiple distribution certificates.

To create another distribution certificate

  1. In Certificates, Identifiers & Profiles, select Certificates.

  2. Click the Add button (+) in the upper-right corner.

  3. Under Production, select “In-House and Ad Hoc” and click Continue.

  4. Follow the instructions to create a certificate signing request (CSR) using Keychain Access, and click Continue.

  5. Click Choose File.

  6. Select a CSR file (with a .certSigningRequest extension), and click Choose.

  7. Click Generate.

  8. Click Download.

    The certificate file appears in your Downloads folder.

To install the certificate in your keychain, double-click the downloaded certificate file (with a .cer extension). The distribution certificate appears in the My Certificates category in Keychain Access.

Managing Expiring Certificates and Provisioning Profiles

You are responsible for managing your team’s certificates and provisioning profiles. Apple Developer Enterprise Program certificates expire after three years and provisioning profiles expire after one year.

Before a distribution certificate expires, create an additional distribution certificate, described in Creating Additional Enterprise Distribution Certificates. You cannot renew an expired certificate. Instead, replace the expired certificate with the new certificate, described in Replacing Expired Certificates.

If a distribution provisioning profile expires, verify that you have a valid distribution certificate and renew the provisioning profile, described in Renewing Expired Provisioning Profiles.

Xcode manages your development certificates and team provisioning profiles for you.

Exporting Your App In-House

To export your app for distribution to your employees and outside the store:

  1. Archive your app.

  2. Export the archive as an iOS App file (a file with a .ipa filename extension).

Note: If you don’t distribute your app using a Mobile Device Management (MDM) system, users can install your app using the iOS App file but then they will need to manually trust your organization to launch the app, described in Manually Trusting an Enterprise Developer.

Creating an Archive

Create an archive of your app regardless of the type of distribution method you select. Xcode archives allow you to build your app and store it, along with critical debugging information, in a bundle that’s managed by Xcode.

Important: Save the archive for every version of an app you distribute. You need the debugging information stored in the archive to decipher crash reports later.

To create an archive

  1. In the Xcode project editor, choose a generic device or your device name from the Scheme toolbar menu.

    You can’t create an archive of a simulator build. If a device is connected to your Mac, the device name appears in the Scheme toolbar menu. Otherwise, choose the generic device.

  2. Choose Product > Archive.

    The Archives organizer appears and displays the new archive.

Xcode runs preliminary validation tests on the archive and may display a validate warning in the project editor. For example, if you don’t set required app icons, as described inSetting Individual App Icon and Launch Image Files, an Info.plist warning message appears. If you see this warning, fix the issue and create the archive again.

Creating an iOS App File

You create an iOS App file so that users can install your app on their device. You generate an iOS App file (a file with a .ipa filename extension) from the archive. Xcode automatically creates the necessary distribution certificates and provisioning profiles for you when you export the app.

To create an iOS App file for distribution

  1. In the Archives organizer, select the archive.

  2. Click the Export button, select “Save for Enterprise Deployment,” and click Next.

  3. In the dialog that appears, choose a team from the pop-up menu, and click Choose.

    If necessary, Xcode creates a distribution certificate, provisioning profile, and explicit App ID for you.

  4. In the Device Support dialog, choose whether to export the universal app or variants for a specific devices, and click Next.

    • If you want to run the app on any supported device, select “Export one app for all compatible devices.”

    • If you want to test all device variances, select “Export for specific devices” and choose “All compatible device variants” from the pop-up menu.

    • If you want to test a specific device variant, select “Export a thinned app for a specific device” and choose the device family from the pop-up menu.

  5. In the dialog that appears, review the app, its entitlements, and provisioning profile.

    You can not distribute an enterprise app using a wildcard App ID. The name of the distribution provisioning profile begins with the text XC: followed by the App ID. If you are using a wildcard App ID, the name of the distribution provisioning profile is XC:*.

    The Finder shows the exported that has an .ipa extension.

  6. Review the build options, and click Next.

    If you use on-demand resources, check “Include manifest for over-the-air installation.” The manifest file is an XML plist used by a device to find, download, and install apps from your web server.

  7. If you request a manifest file, enter details about your web server in the “Distribution manifest information” dialog that appears.

    Enter the following information:

    • Name. The name of the app displayed during download and installation.

    • App URL. A fully qualified HTTPS URL for the iOS App file.

    • Display Image URL. A fully qualified HTTPS URL for an app icon that is displayed during download and installation. The image file must be 57 x 57 pixels and in PNG format.

    • Full Size Image URL. A fully qualified HTTPS URL for a larger image that is displayed in iTunes. The image file must be 512 x 512 pixels and in PNG format.

  8. Click Export

    The Finder shows the exported files.

Manually Trusting an Enterprise Developer

If you send the iOS App File to a user and they manually install it on their device, then they must also manually trust your organization before launching the app. Instruct the user to follow these steps to trust your organization.

Note: An Internet connection is required to trust an enterprise developer. If you're behind a firewall, make sure it's configured to allow connections to https://ppq.apple.com.

To trust an enterprise developer

  1. On the device, launch the app, and in the “Untrusted Enterprise Developer” dialog that appears, click Cancel.

    This step adds Device Management to Settings.

  2. Tap Settings > General > Device Management.

    Note: If profiles are installed on your device, the setting is called Profiles & Device Management.

  3. Under Enterprise App, tap the organization name.

  4. Tap Trust “[Organization Name]”.

  5. In the dialog that appears, tap Trust.

    Note: If you are not connected to the Internet, a “Not Verified” message appears. Connect the device to the Internet and tap the Verify App button.

To untrust an enterprise developer, go to Settings > General > Device Management > [Organization Name], and delete all the apps from the organization.

To manually install an enterprise app without needing Xcode installed on your Mac, read Installing Your App on Test Devices Using iTunes (iOS, watchOS) and Installing Your App on Test Devices Using Apple Configurator 2 (iOS, watchOS, tvOS).

Learn More About Server Tools

Take advantage of Xcode server tools that support large software development teams.

To learn about

Read

Continuous integration

Use Xcode service running on OS X Server to automate building, analyzing, testing, and archiving your app.

Xcode Server and Continuous Integration Guide

Automated testing

Set up tests that can be run by Xcode service.

Testing with Xcode

Host source control repositories on servers

Use Xcode service to connect to remote repositories.

Xcode Server and Continuous Integration Guide

Source Control Management Help

Mobile Device Management

Use MDM to deploy business and education apps.

Go to http://www.apple.com/support/iphone/enterprise/ and in the left column, click Mobile Device Management.

iOS 企业账号分发App 详解相关推荐

  1. 苹果企业账号发布APP详解——通过自己网站分发应用

    一.通过企业账号申请证书 1 Certificate Signing Request (CSR)文件 在Mac系统中进入"钥匙串访问",选择"钥匙串访问"-&q ...

  2. iOS 证书申请和使用详解

    iOS 证书申请和使用详解 对于iOS开发者来说,apple开发者账号肯定不会陌生.在开发中我们离不开它.下面我简单的为大家分享一下关于iOS开发中所用的证书相关知识. 第一部分:成员介绍 1.Cer ...

  3. iOS 证书与签名 解惑详解

    iOS 证书与签名 解惑详解 分类: iPhone2012-06-06 19:57 9426人阅读 评论(1) 收藏 举报 iosxcodecryptographyappleiphone测试 目录(? ...

  4. iOS开发之Accounts框架详解

    2019独角兽企业重金招聘Python工程师标准>>> iOS开发之Accounts框架详解 Accounts框架是iOS原生提供的一套账户管理框架,其支持Facebook,新浪微博 ...

  5. 2016年最新苹果开发者账号注册流程详解(公司账号篇)

    随着苹果规定金融/理财类应用需要使用公司开发者账号上传,并进一步加大对此类问题的审核力度,公司开发者账号开始呈现出炙手可热之势! 不过,公司开发者账号的注册流程着实复杂--不仅要填写公司的D-U-N- ...

  6. 2016 年最新苹果开发者账号注册流程详解(个人账号篇)

    苹果宣布 Search Ads 重磅上线的同时,也向开发者传达了一个好消息:申请注册 Search Ads 即可获得 100 美元账户余额.虽然竞价广告目前仅限美国区,但此项福利却在中国区引发了一场规 ...

  7. Android 系统(199)---Android事件分发机制详解

    Android事件分发机制详解 前言 Android事件分发机制是Android开发者必须了解的基础 网上有大量关于Android事件分发机制的文章,但存在一些问题:内容不全.思路不清晰.无源码分析. ...

  8. iOS申请发布证书-图文详解

    iOS申请发布证书-图文详解 首先登陆https://developer.apple.com 选择iOS Developer program 板块下的 Certificates,Identifiers ...

  9. iOS企业应用分发平台搭建(uniapp打包)

    1.背景 利用github静态页面iOS企业应用分发平台搭建以及自定义域名配置 之前公司应用分发选择的是蒲公英,但是最近登进去又要求我人脸认证,这就让我十分反感,而且内测模式一个版本只能下载10次每天 ...

最新文章

  1. 【VB6笔记-01】 读取Excel绑定到DataGrid
  2. Scala入门到精通——第七节:类和对象(二)
  3. map类的erase方法的在Linux与Windows中的差异
  4. Java知识点总结(Java容器-ArrayList)
  5. 黑苹果xxx.efi格式文件详解
  6. 430单片机实现三人投票表决器_基于单片机的五人表决器的设计
  7. mysql中文版 win7_MySQL数据库下载64位下载-MySQL数据库64位【支持win7/win10】8.0.18 官方中文最新版-东坡下载...
  8. 2003年28家上海最受欢迎的餐馆
  9. ABP框架—从项目下载到运行详细讲解
  10. iOS开发 动画(Animation)图片360度不停旋转
  11. both and和both of 得用法 和区别
  12. 怎么把PDF调方向保存?这几个方法值得收藏
  13. 实现一个canvas画板
  14. 侍魂胧月传说显示服务器满了,侍魂胧月传说:满物防攻略,仅供参考
  15. Educode--机器学习基础模型与算法测试闯关实验
  16. Android大赛首轮获奖作品解析
  17. 中国人海外购房似网购般简单:不看房先付款
  18. excel函数公式透视表案例--车辆保养统计分析及预测案例
  19. 修改jupyter Notebook默认保存路径
  20. Meta!Facebook正式改名了,一个元宇宙新纪元由此开始

热门文章

  1. android 语音留言功能,iPhone语音留言怎么开通 苹果iOS9.2语音信箱设置教程
  2. finetune踩坑
  3. java面向过程开发,刚接触java的体验
  4. ABP学习笔记:使用EPPlus以表格导出数据
  5. Python之hasattr()函数介绍
  6. 读书计划-2008年12月
  7. Go 模板库:性能比较
  8. Android 判断是否有刘海屏
  9. JavaScript案例——红绿灯
  10. 谷歌-BTS-APVI-项目官网