Microsoft Intune应用 SDK 入门

本指南将帮助你快速启用移动应用,以便通过 Microsoft Intune 支持应用保护策略。 你可能会发现,首先了解 Intune 应用 SDK 的优点很有用,如Intune应用 SDK 概述中所述。

Intune App SDK 支持跨 iOS 和 Android 的类似方案,旨在为 IT 管理员创建跨平台的一致体验。 但是,由于平台差异和限制,某些功能的支持存在细微差异。

流程流

下图提供了适用于 iOS 的 Intune App SDK 和适用于 Android 的 Intune App SDK 的过程流:

Microsoft Intune的高级体系结构图。

向 Microsoft 注册应用商店应用

如果你的应用是组织内部的,并且不会公开提供:

无需注册应用。 对于内部 业务线 (LOB) 由 公司或为你公司编写的应用,IT 管理员将在内部部署应用。 Intune将检测应用是否已使用 SDK 生成,并允许 IT 管理员向其应用应用保护策略。 可以跳到 为应用保护策略启用 iOS 或 Android 应用部分。

如果你的应用将发布到公共应用商店(如 Apple App Store 或 Google Play):

必须先向 Microsoft Intune 注册应用,并同意注册条款。 然后,IT 管理员可以将应用保护策略应用于托管应用,该应用将作为 合作伙伴生产力应用列出。

在完成注册并得到Microsoft Intune团队确认之前,Intune管理员将无法选择将应用保护策略应用到应用的深层链接。 Microsoft 还会将你的应用添加到其Microsoft Intune合作伙伴页。 应用图标将在那里显示,以显示它支持Intune应用保护策略。

注册过程

若要开始注册过程,如果尚未使用 Microsoft 联系人,请填写Microsoft Intune应用合作伙伴问卷

我们将使用问卷答复中列出的电子邮件地址联系并继续注册过程。 此外,如果我们有任何疑问,我们会使用你的注册电子邮件地址与你联系。

注意

在问卷中收集的所有信息以及通过电子邮件与Microsoft Intune团队通信收集的所有信息都将遵守 Microsoft 隐私声明

注册过程中的预期内容

  1. 在你提交问卷后,我们将通过你的注册电子邮件地址联系你,以确认成功接收或请求其他信息来完成注册。

  2. 从你那里收到所有必要的信息后,我们会向你发送Microsoft Intune应用合作伙伴协议进行签名。 本协议描述了公司成为Microsoft Intune应用合作伙伴之前必须接受的条款。

  3. 当你的应用成功注册到Microsoft Intune服务时,以及你的应用在Microsoft Intune合作伙伴网站上特别推荐时,你将收到通知。

  4. 最后,应用的深层链接将添加到下一个每月Intune服务更新。 例如,如果注册信息在 7 月完成,则将在 8 月中旬支持深层链接。

深层链接是指向公共应用商店中应用一览的链接。 如果应用的深层链接将来发生更改,则需要重新注册应用。

下载 SDK 文件

本机 iOS 和 Android 的 Intune 应用 SDK 托管在 Microsoft GitHub 帐户上。 这些公共存储库分别具有本机 iOS 和 Android 的 SDK 文件:

如果你的应用是 Xamarin 应用,请使用以下 SDK 变体:

如果应用使用 .NET 多平台应用 UI (.NET MAUI) 生成,请使用以下 SDK 变体:

注意

使用适用于 .NET MAUI 的 Intune APP SDK,可以针对包含 .NET 多平台应用 UI 的Intune开发 Android 或 iOS 应用。 使用此框架开发的应用将允许你强制实施Intune移动应用程序管理

最好注册一个 GitHub 帐户,该帐户可用于分支并从存储库中拉取。 GitHub 允许开发人员与我们的产品团队进行通信、提出问题并接收快速响应、查看发行说明以及向 Microsoft 提供反馈。 有关 Intune App SDK GitHub 的问题,请联系 msintuneappsdk@microsoft.com。

为应用保护策略启用 iOS 或 Android 应用

你需要以下开发人员指南之一来帮助你将 Intune 应用 SDK 集成到应用中:

重要

Intune定期发布Intune应用 SDK 的更新。 建议订阅Intune应用 SDK 存储库以获取更新,以便将更新合并到软件开发发布周期,并确保应用支持最新的应用保护策略设置。

计划在每个主要 OS 版本之前执行强制Intune应用 SDK 更新,以确保应用继续顺利运行,因为 OS 更新可能会导致中断性变更。 如果未在主要 OS 版本之前更新到最新版本,则可能会遇到中断性变更和/或无法将应用保护策略应用到应用的风险。

为基于应用的条件访问启用 iOS 或 Android 应用

除了为应用启用应用保护策略之外,还需要满足以下条件才能使应用正常运行,Microsoft Entra基于应用的条件访问:

为应用配置遥测

Microsoft Intune收集有关应用的使用情况统计信息的数据。

  • Intune适用于 iOS 的应用 SDK:SDK 默认记录有关使用情况事件的 SDK 遥测数据。 此数据将发送到Microsoft Intune。

    • 如果选择不将 SDK 遥测数据从应用发送到Microsoft Intune,则必须通过在 IntuneMAMSettings 字典中将 属性MAMTelemetryDisabled设置为“YES”来禁用遥测传输。
  • Intune适用于 Android 的应用 SDK:适用于 Android 的 Intune 应用 SDK 无法控制应用中的数据收集。 默认情况下,公司门户应用程序记录遥测数据。 此数据将发送到Microsoft Intune。 根据 Microsoft Policy,我们不会收集任何个人身份信息 (PII) 。

业务线应用版本号

Intune中的业务线应用现在显示 iOS 和 Android 应用的版本号。 该数字显示在Microsoft Intune管理中心的应用列表和应用概述边栏选项卡中。 最终用户可以在 公司门户 应用和 Web 门户中查看应用编号。

完整版本号

完整版本号标识应用的特定版本。 该数字显示为 版本 (内部 版本) 。 例如,2.2 (2.2.17560800) 。

完整版本号包含两个组件:

  • 版本
    版本号是应用的可读版本号。 最终用户使用它来标识应用的不同版本。

  • 内部版本号
    内部版本号是一个内部编号,可用于应用检测和以编程方式管理应用。 内部版本号是指引用代码中更改的应用的迭代。

Android 和 iOS 中的版本和内部版本号

Android 和 iOS 都使用版本和内部版本号来引用应用。 但是,这两个操作系统都具有特定于 OS 的含义。 下表说明了这些术语之间的关系。

开发用于 Intune 的业务线应用程序时,请记住同时使用版本和内部版本号。 Intune应用管理功能依赖于适用于 iOS) 的有意义的 CFBundleVersion (和适用于 Android) 的 PackageVersionCode (。 这些数字包含在应用清单中。

Intune iOS Android 说明
版本号 CFBundleShortVersionString PackageVersionName 此数字表示最终用户应用的特定版本。
内部版本号 CFBundleVersion PackageVersionCode 此数字用于指示应用代码中的迭代。

iOS

  • CFBundleShortVersionString
    指定捆绑包的版本号。 此数字标识应用的已发布版本。 最终用户使用该数字来引用应用。
  • CFBundleVersion
    捆绑包的内部版本,用于标识捆绑包的迭代。 该数字可以标识发布或未发布的捆绑包。 该数字用于应用检测。

Android

  • PackageVersionName
    向用户显示的版本号。 此属性可以设置为原始字符串或字符串资源的引用。 该字符串除了向用户显示之外没有其他用途。
  • PackageVersionCode
    内部版本号。 此数字仅用于确定一个版本是否比另一个版本更新,数字越大,表示版本越新。 这不是版本

集成后的后续步骤

测试应用

完成将 iOS 或 Android 应用与 Intune App SDK 集成的必要步骤后,需要确保为用户和 IT 管理员启用所有应用保护策略并正常运行。若要测试集成应用,需要满足以下条件:

  • Microsoft Intune测试帐户:若要针对Intune应用保护功能测试Intune托管的应用,需要一个Microsoft Intune帐户。

    • 如果你是启用适用于Intune应用保护策略的 iOS 或 Android 应用商店应用的 ISV,则完成Microsoft Intune注册后,将收到促销代码,如注册步骤中所述。 促销代码可让你注册Microsoft Intune试用版,延长使用一年。

    • 如果你正在开发不会寄送到应用商店的业务线应用,你应有权通过组织访问Microsoft Intune。 还可以在 Microsoft Intune 中注册一个月的免费试用版。

    • 如果使用最终用户帐户在移动设备上测试应用,请确保在使用管理员帐户登录后,通过 Microsoft 365 管理中心 网站向该帐户授予了Intune许可证,请参阅分配Microsoft Intune许可证

  • Intune应用保护策略:若要针对所有Intune应用保护策略测试应用,应了解每个策略设置的预期行为。 请参阅 iOS 应用保护策略Android 应用保护策略的说明。 如果应用已集成Intune SDK,但未在可定向应用列表中列出,则可以在选择“自定义应用”时,在文本框中指定应用的捆绑 ID (iOS) 或包名称 (Android) 。

  • 故障排除:如果在手动测试应用的安装用户体验时遇到任何问题,请参阅 排查应用安装问题

向应用授予对Intune移动应用管理服务的访问权限

如果你的应用使用自己的自定义Microsoft Entra设置进行身份验证,则应对公共应用商店应用和内部 LOB 应用执行以下步骤。 如果应用使用 Intune SDK 默认客户端 ID,则无需执行这些步骤。

在 Azure 租户中注册应用并显示在“所有应用程序”下后,必须授予应用访问Intune移动应用管理服务的权限。 在Microsoft Intune管理中心

  1. 转到“Microsoft Entra ID”边栏选项卡。
  2. “应用注册”下,转到为应用程序设置的列表。
  3. 单击“ + 添加权限”。
  4. 单击 我的组织使用的 API
  5. 在搜索框中,输入 Microsoft 移动应用程序管理
  6. 在“ 委托的权限”下,选中“ DeviceManagementManagedApps.ReadWrite:读取和写入用户的应用管理数据*”复选框。
  7. 单击“添加权限”。

应用 (可选)

验证Intune应用保护策略在应用中是否有效后,可以使用Intune应用保护徽标标记应用图标。

此锁屏提醒向 IT 管理员、最终用户和潜在Intune客户指示你的应用使用Intune应用保护策略。 它鼓励Intune客户使用和采用你的应用。

锁屏提醒是公文包图标,可在以下示例中看到:

Intune应用保护策略 - 徽章示例 1Intune应用保护策略 - 锁屏提醒示例 2

应用锁屏提醒所需的内容

  • 可读取 .eps 文件的图像操作应用程序,或可读取 .ai 文件的图像操作应用程序。

  • 可以在 Microsoft Intune GitHub 上找到Intune应用锁屏提醒资产和指南