iOS ArcGIS.framework太大,因此大.ipa大小

时间:2018-05-23 12:24:41

标签: ios xcode ipa arcgis-runtime

我正在使用ArcGIS.framework for iOS维护一个应用程序。我从版本10.2升级到100+。我已经延长了这一点,希望在某些时候应用程序大小问题将得到解决。新架构的应用程序规模从26MB增加到360MB以上。这不会被客户接受。我一直在寻找一种简单的方法来减少应用程序的大小而不使用应用程序细化,这需要启用bitcode,这是由于其他原因我无法启用。

剥离x86_64和i386体系结构并没有太大程度地减少框架大小。

我们可以在编译时提供Xcode,其他编译器或链接设置吗?

2 个答案:

答案 0 :(得分:5)

您可以利用App Thinning而无需启用bitcode,如果您的目标是iOS 9及更高版本,您将只会看到部署到任何设备的Thinned .ipa(尽管Universal .ipa会生成并上传到iTunes Connect)。

在实践中,这意味着如果您使用的是Runtime 100.x,您的应用将使用应用程序细化。

以下是我们评估此内容以了解最终将在iOS 9+设备上运行的内容(运行时100.2所需):

  1. 在Xcode的菜单中,选择Product - > Archive(确保您选择了通用iOS设备或选择了实际设备作为目标设备)。
  2. 完成后,管理器窗口将弹出,您应该能够在档案选项卡中看到最新的档案。
  3. 选择存档,然后点击右侧的Export按钮。
  4. 选择Development,然后点击下一步。
  5. 如果被问到,请选择一个团队。
  6. App Thinning菜单中,选择一个特定设备,然后点击下一步。
  7. 选择您的签名方法,然后点击下一步。
  8. 查看摘要,然后点击导出。
  9. 您最终会得到一个包含精简版.ipa的文件夹以及有关精简过程的一些报告,包括期望在设备上看到的用途。

    例如,以下是针对iPhone 8的运行时应用的App Thinning Size Report.txt(禁用了bitcode):

    App Thinning Size Report for All Variants of MyRuntime100App
    
    Variant: MyRuntime100App-iPhone 8.ipa
    Supported devices: iPhone 8
    App + On Demand Resources size: 31 MB compressed, 89.7 MB uncompressed
    App size: 31 MB compressed, 89.7 MB uncompressed
    On Demand Resources size: Zero KB compressed, Zero KB uncompressed
    

    所以上面的应用程序将是31 MB的无线下载,并且将在设备上占用89.7 MB(并且该示例恰好包括19.8 MB移动地图包)。

    希望有所帮助。

    如果可以的话,我还建议你将未来的问题发布到iOS Runtime SDK forum

答案 1 :(得分:0)

手动添加arcgis框架而不是通过可可豆添加将有助于将其在设备上的最终可下载大小减少约70 MB 这是这样做的方法

  1. https://developers.arcgis.com/downloads/apis-and-sdks下载SDK
  2. 安装.pkg文件,它将默认安装到$ {HOME} / Library文件夹。
  3. 在xcode上打开您的项目,然后通过xcode将$ {HOME} /Library/SDKs/ArcGIS/iOS/Frameworks/Static/ArcGIS.framework拖到项目的Frameworks文件夹中。
  4. 将框架添加到项目https://developers.arcgis.com/ios/latest/swift/guide/install.htm#ESRI_SECTION3_2304BFA5F5A14A679B5A92B2DDEC859E的搜索路径中

请注意,ipa大小可能不会有所不同,但最终可下载的应用程序大小将减少约70MB。