问题标签 [on-demand-resources]

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 回答
97 浏览

xcode - 以编程方式添加 ODR 资源

我正在将文件列表作为 ODR 资源添加到我的 Xcode 项目中。当我创建新文件时,我必须再次将它们添加为带有 ODR 资源标签的 ODR 资源。我非常频繁地获取新文件,我一次又一次地添加它。有没有办法自动添加 ODR 资源?

0 投票
2 回答
412 浏览

ios - 为什么我的按需资源仍处于正在下载...状态?

在此处输入图像描述

我很确定这就是为什么我的完成块没有在这里调用的原因:

我已经清理并重新启动了 Xcode,也重新启动了 iPhone 和 Macbook。没有任何帮助。我怎样才能在这里清除它?

编辑

我打印了一些进度属性的信息:

但是当我打电话时cancel()没有任何改变......

如何拒绝、取消或恢复该请求?

当我打印进度时,我有:

0 投票
1 回答
217 浏览

ios - 是否需要请求 iOS 按需资源的预取标签?

根据 Apple关于Prefetched On-Demand标签的文档:

安装应用程序后,资源开始下载。标签将按照它们在 Prefetched 标签顺序组中列出的顺序下载。

使用预取标签指定的资产是否需要通过beginAccessingResourceson明确请求NSBundleResourceRequest(就像常规的仅按需下载标签一样),还是应该像文档建议的那样在没有任何明确代码的情况下自动下载?

我已经用预取标签标记了几个资产,但我没有看到它们在调试版本中自动下载,但如果我明确要求它们,它们将被下载。(我还没有在 TestFlight 上测试过。)

0 投票
1 回答
207 浏览

ios - 按需资源 (ODR) 已完成/已下载标签的总文件大小

我正在通过 ODR 下载 zip 存档并希望向用户显示进度和已完成/总文件大小(如“3/10MB 已下载”)使用 KVO 我设法观察了相关Progress对象的fractionCompleted属性,所以我'能够显示一个进度条。

代码如下所示:

现在,为了显示以字节为单位的已完成/总文件大小,我尝试访问completedUnitCounttotalUnitCount,它们的值恰好总是 1(意思是 1 个文件?)。

如何获得completedUnitCounttotalUnitCount的正确值?

0 投票
1 回答
224 浏览

ios - 找不到嵌入在应用程序包中的按需资源

我在下载后使用URLForResource来查找按需资源,它目前可以正常工作。

由于 Apple 在审核期间无法下载 ODR 的一些问题,我现在必须暂时将我的 On-Demand Resources AssetPacks 嵌入到 App Bundle 中,将 XCode 中的“Embed Asset Packs In Product Bundle”从 false 更改为 true。

问题是,当我使用相同的 URLForResource 方法后,它现在返回 null。

由于它们成为产品包的一部分,我不应该以这种方式找到它们吗?


更新: 来自非 iOS 开发人员的一些(丑陋的)工作代码在 Cordova 插件上工作.. :)

0 投票
2 回答
2819 浏览

amazon-web-services - Amazon EC2-按需实例和现货实例之间的区别是什么,除了定价该现货比按需便宜

我想区分现场实例和按需实例。我知道这两者之间存在价格差异,但除此之外我想知道差异。请帮我

0 投票
1 回答
155 浏览

ios - 使用按需资源自动上传 iOS AppStore

将 iOS 构建自动上传到使用按需资源的 AppStoreConnect 的正确方法是什么?我尝试过的工具/解决方案是App Centerxcruncli,它只允许上传*.ipa.

我的理解是 ODR 资源不会包含在 中,ipa因为它应该包含除 Resources used as 之外的所有内容Download on Demand。没有ASSET_PACK_MANIFEST_URL_PREFIX设置,因为我想使用 Apple 的托管解决方案(如果通过 Xcode 手动完成上传,则会发生这种情况)。EMBED_ASSET_PACKS_IN_PRODUCT_BUNDLE设置为YES会将 ODR 嵌入到其中,ipa但这会增加其大小,我“假设”然后导致我们最初Download on Demand在生产设置(TestFlight/AppStore)中通过应用下载由用户下载的资产。

0 投票
1 回答
120 浏览

sql - BigQuery-如何为我的查询使用槽

我正在尝试使用插槽来运行我的查询,所以我要求 BigQuery 在我的请求获得批准后增加我的配额(5 天!)我按下“购买插槽”并选择 400(我有 500 个可用),我认为足以确保我的查询将在这 400 个插槽上运行,而不是在“按需无服务器”方法上运行。不幸的是,第二天我收到了我的查询账单,我看到他们向我收取了“按需”收费方式的费用。我尝试使用 BigQuery 聊天支持来了解如何使用这 400 个插槽并保证我的查询将在这些插槽上运行,但我没有得到任何有用的答案!

有人知道如何使用这些插槽来运行我的查询吗?我做错了什么?谢谢,

0 投票
0 回答
71 浏览

ios - NSBundle PathsForResources 在下载按需资源包后返回 null

我的团队在使用 Apple 的按需资源框架时遇到了一个非常奇怪的问题。这是一个随机发生的问题,用户将成功下载我们的资源之一,但是当我们尝试通过 NSBundle.PathsForResources() 访问该资源的路径时,它不会出现。当用户使用特定资源标签进入此状态时,我们还没有找到解决问题的方法。每次访问应用程序的这一部分时,我们的代码都会尝试重新获取受影响的资源标签,因此这不是不重新获取的问题,我们肯定会获取并成功下载。奇怪的是,卸载应用程序并重新安装甚至无法修复这种损坏状态。人们会假设在 iOS 上删除应用程序和重新安装之间没有任何转移,但这里似乎并非如此。此外,这发生在看似随机的资产上,没有影响某些按需资源包的模式,在所有情况下都不同。一旦资源标签被“变砖”,它就会保持这种状态。有什么想法可能导致此问题/我们可以尝试解决什么问题?

下载代码:

0 投票
0 回答
123 浏览

swift - “按需资源”下载进度指示器

我有一个 SwiftUI 项目,我在其中使用 Apple 的按需资源(ODR)。

我想显示一个进度条,指示资源的下载进度。

我试过的:

以下代码请求 ODR 资源,将其存储NSBundleResourceRequest在静态属性中,以便在其他地方可用:

然后我UIViewRepresentable用来连接一个UIProgressView,将视图的observedProgress属性设置为上述静态请求对象的progress属性:

根据文档,设置observedProgress属性应该会导致进度值自动更改:

设置此属性后,进度视图会使用从 Progress 对象接收到的信息自动更新其进度值。

最后,我ProgressBar在 SwiftUI 视图中使用我的,如下所示:

结果:

进度条从不显示任何进度;它只是一个空白栏。

问题:

为什么我不ProgressBar显示 ODR 下载进度?我究竟做错了什么?这是这样做的方法,还是有更简单的方法?

谢谢!