问题标签 [app-thinning]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
983 浏览

ios - 播放使用 NSDataAsset (Xcode xcassets) 存储的视频

我正在尝试使用 Apple App Thinning功能(可从 iOS 9 获得),该功能可让您根据设备架构和功能区分资源。在我的情况下,我想做的是在应用程序包(.mp4格式)中有一个不同的视频文件,一个用于 iPhone,一个用于 iPad,使用 Xcode .xcassets Data Set

要从.xcassets Data SetApple 检索文件提供了NSDataAsset该类,但是:由于AVPlayer需要URL播放视频并且NSDataAsset仅使用格式提供其内容Data,因此我无法播放视频。

我想做的是检索NSDataAsset .data URL. 可能吗?

0 投票
1 回答
1326 浏览

ios - iOS 应用程序 - 从 POD 安装 SDK 后应用程序的大小太大

我想在我的 iOS App 中添加一个80 MB的框架,目前大约30 MB。我的应用程序的大小是110 MB吗?

0 投票
1 回答
572 浏览

bitcode - Xcode 9.2 上的应用瘦身问题

我正在尝试在 Xcode 9.2 中进行应用程序精简,我有第三方框架,其中一些是通过 pod 安装的,而另一些是手动安装的,我正在尝试对此进行测试,因此有一个临时分发配置文件,现在我尝试通过此配置文件导出,选择了应用程序细化附加屏幕截图 位码选项选择

然后我从 Xcode 中自动选择符号进行签名,然后编译位码来自位码编译

在说大约 5 分钟的编译后,我得到了这个错误,即位码错误

通过一些带有显示日志选项的日志进行分析,特别是 IDEDistribution.log :

PM.xcarchive/Products/Applications/elektra.app/Frameworks/libswiftQuartzCore.dylib”不包含“archived-expanded-entitlements.xcent”资源。” UserInfo={NSLocalizedDescription=项目

因此,该文件中的此类错误与所有 Swift 动态库框架有关,除了两个私有第三方框架(这是项目中的嵌入式二进制文件)。我们目前同时使用 Objective C 和 Swift(混合匹配)。无法弄清楚可能是什么错误,非常感谢任何帮助,因为这是新手。

0 投票
1 回答
72 浏览

ios - 为 iPhone 5 及更高版本启用位码有什么好处?

由于 iPhone 5 及更高版本是 64 位(不推荐使用 32 位),如果应用程序仅支持 iPhone 5 及更高版本,那么为 iPhone 5 及更高版本启用位码有什么好处。

0 投票
0 回答
55 浏览

ios - 首次启动时流式传输/下载大数据的最佳方式

这是我的难题:我有一个 WalkthroughViewController,它出现在应用程序的第一次启动时。该应用程序本身具有大量功能,需要对普通webdev初学者进行一些解释。

我设法创建了 4 个视频来快速总结应用程序及其工具。这些视频是 1080p 的屏幕截图,大小约为147MB

我知道有几个不同的选项,其中一个特别突出:将视频压缩到较低的分辨率并在演练后删除内容。

但是,在这种情况下,我希望尽可能保持最高质量的视频。该应用程序的演练效果非常好,虽然它在启动时确实占用了 147MB,但高清屏幕捕获确实将整个过程融合在一起,使其看起来很专业。过去,我使用 480p 视频进行演练介绍,它看起来像是低质量的录音。然而,本演练中使用的 1080p 视频看起来栩栩如生——就好像应用程序在他们眼前实现了自动化。

最后,我的问题是:假设压缩(或至少“降低质量压缩”)不在等式中,您将如何在演练中实施这些视频?

编辑:缓冲屏幕/下载进度视图是可能的(直到内容被下载),假设等待不超过荒谬的时间。

0 投票
0 回答
82 浏览

xcode - 要启用应用切片的最小部署目标?

我目前正在构建一个最小部署目标设置为 iOS 8 的 iOS 应用程序。当使用 iOS 9 及更高版本的用户通过应用商店下载应用程序时,他们是否会自动收到我的应用程序的应用切片版本,还是我必须增加我的部署目标?

0 投票
0 回答
27 浏览

ios - 本地化任意 iOS 应用资源

我想将一个任意的本地化特定文件与每个应用程序版本捆绑在一起,以便在没有互联网连接的情况下首次打开应用程序的用户在设备上使用它。显然,由于文件的大小,捆绑我们支持的 100 多个区域是令人望而却步的。

在我的用例中,这是一个特定于区域的目录,但显然还有其他目录。

这可能吗?我了解捆绑本地化字符串文件以获取语言支持的过程,但这是不同的。

0 投票
0 回答
102 浏览

ios - 实现Bitcode的最佳方式?

我对 Bitcode 有一些疑问,因为关于它的文档并不多。

据我了解(如果我错了,请纠正我),Bitcode 的主要好处是:

  1. 减小应用程序(不是 ipa)的大小,因为它是 App Thinning 的一部分。
  2. 重新编译自动化,因为如果编译器有更新/改进,Apple 将重新编译应用程序。

我终于尝试在 iOS 上启用 Bitcode,但启用 Bitcode 后,我的应用程序的下载大小保持不变,安装大小仅减少了 1 mb(小于 0.01%)。所以我有一些问题:

  1. 是否有任何因素会影响 Bitcode 的有效性?(例如静态/动态框架等)如果是,那么实现 Bitcode 的最佳方式是什么?
  2. 根据我告诉你的结果,是否值得启用 Bitcode?启用Bitcode还有其他主要原因吗?

非常感谢。

更新
从一个空项目的快速实验中,首先使用动态框架,然后使用静态库,我发现 Bitcode 在使用动态框架的项目上减少了 19.75% 的大小,在使用静态的项目上仅减少了 2.7%图书馆。

0 投票
0 回答
123 浏览

xcode - 我可以在 Xcode 中拥有多个资产目录吗?

我有一个项目,我的“复制捆绑资源”目录中有 images.xcassets。我想为我的“编译源”目录创建第二个资产目录,因为我希望应用细化来拆分类,以便用户只下载他们需要的内容。如果我这样做,我的捆绑包最多可以节省 3 mb。但是,我收到错误“多个命令生成 Assets.car”。我可以拥有多个资产目录吗?我需要单独的类,因为这些类进入“编译源”而不是“复制捆绑资源”,否则我将只使用单个资产目录。

0 投票
0 回答
292 浏览

ios - Xcode 10 中带有 App 细化的 Xcodebuild 生成 2 个 ipa

我有一个关于应用瘦身和 Xcode 10 的问题。

当我尝试xcodebuild为我的应用程序做 时exportOptionsPlist,细化设置为iPod7,1,它会生成 2 个 ipa,一个与[OS 10]另一个[OS 12]

如果我对使用 Xcode 9 创建的存档执行相同操作,它只会生成一个 ipa[OS 10]

有人可以让我对此有所了解。这是因为 32/64 位架构还是其他原因?