zhouyao_huawei
2019-03-12 21:04
采纳率: 100%
浏览 5.3k

苹果企业账号的描述文件过期后,APP闪退,请问各位大神有好的解决方案么?

企业账号的描述文件半年过期一次,用户如果未更新版本,重新打开APP时,APP闪退。

找了很多资料,有如下三种方案,但总感觉不够好:
1.在描述文件过期前重新打包,通过短信、邮件、电话等方式通知用户安装新版本。
优点:能够通知到所有用户更新版本
缺点:工作量较大、对用户干扰较大。

2.使用苹果MDM服务,使用MDM可以远程向iOS设备推送新的配置文件,以此来更新APP。
MDM除了能够推送配置文件,还具备很多逆天的功能:
1)保证设备安全:远程锁定设备、远程擦除数据
2)获取设备信息:如IMEI、UDID
3)应用分发:远程下载APP
4)推送配置文件、配置网络连接、更改应用程序设置
5)备份和恢复
综上,MDM是个远程管理移动设备的服务,功能强大。
优点:描述文件快过期时,仅仅需要较少的干扰,即可更新应用。
缺点:1''服务端需要搭建MDM服务,工作量较大
2''用户需要同意安装MDM推送证书,否则无法接受MDM文件
3''MDM权限很大,用户为了安全,不一定会同意使用MDM。

3.在描述文件过期前(两个月)重新打包,一旦用户使用旧版本,APP内提示用户更新版本(强更新,亦可在接口内做保护)
优点:工作量较低,干扰较低
缺点:如果有用户长时间未使用APP(最后两个月内未使用),将无法自动更新APP。当然这在后台可以监控到,此时通过短信电话等方式知会,工作量降低许多。

上述三个方案比较下来,第三个方案较好,但觉得应该有更好的方案才对。
我认为最佳方案为:对用户无干扰,或者干扰尽可能的小,从技术层面把描述文件更新。
恳请各位大神赐教。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • hicpp1987 2019-03-20 16:27
    已采纳

    描述文件是打包在App里的,直接更新不现实(真要实现考虑越狱)。所以第三种方案是现在最佳的,App里加入强制更新,续费后更新一下App。考虑长期不使用App,可以加入推送服务来提醒。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • qq_25687907 2019-03-12 22:26

    苹果开发证书分为个人证书和企业证书。两者其中一个区别是,企业证书打包的app不需要发布到app store,而个人证书的app必须发布到app sotre。但是企业证书有个弊端,使用企业证书发布app有效期为12个月,假如过了有效期app则无法运行。也就是说,企业证书发布的app至少需要 1年升级一次,每次升级使用新的证书来发布。这真是一个大坑。您自己分发的应用程序不会自动更新。当您有新版本可供用户安装时,向他们发送更新通知并指导他们安装应用程序。考虑让应用程序检查更新,并在它打开时通知用户。如果您使用的是无线应用程序分发,则通知可以提供已更新应用程序的清单文件链接。如果您想要用户保留他们的设备上储存的应用程序数据,请确定新版本使用的 bundle-identifier 与它要替换的 bundle-identifier 相同,并告知用户在安装新版本之前不要删除他们的旧版本。新版本将会替换旧版本并保留设备上储存的数据,前提是 bundle-identifier 匹配。分发预置描述文件自签发之日起 12 个月后过期。过期之前的两个月,iOS 设备会开始显示即将过期通知。过期之后,应用程序将无法开启。请在预置描述文件过期之前,使用 iOS Development Portal(iOS 开发门户)为应用程序创建新描述文件。使用新预置描述文件为首次安装应用程序的用户创建新应用程序归档 (.ipa)。对于已经拥有该应用程序的用户,您可能想要计划发布下一个版本的时间,以便它包括新预置描述文件。如果您不想这样做,则可以仅分发新 .mobileprovision 文件,以便用户不必再次安装该应用程序。新预置描述文件将覆盖已存在于应用程序归档中的描述文件。现在,您可以使用 MDM 安装和管理预置描述文件,用户可以从您提供的安全网站上下载和安装它,或者您可以将它作为电子邮件附件分发给用户,供用户打开和安装。您的分发证书过期后,应用程序将无法开启。分发证书自签发之日起三年有效,或者在您的 Enterprise Developer Program(企业级开发者计划)成员资格过期之前一直有效,过期日期以先到者为准。若要防止证书提前到期,请确保在成员资格过期之前续订它。有关如何 检查分发证书的信息,请参阅证书验证。您可以同时让两个证书处于活跃状态,它们之间相互独立。第二个证书是为了提供一个重叠期,让您能够在第一个证书过期前更新您的应用程序。从 iOS Dev Center(iOS 开发中心)请求您的第二个分发证书时,请确保您没有撤销第一个证书。

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题