【问题标题】:Reload parsedurl without having to close the app in Swift无需在 Swift 中关闭应用程序即可重新加载 parsedurl
【发布时间】:2018-08-23 17:31:31
【问题描述】:

我有一个 AVPlayerViewController 一个接一个地显示多个短的 mp4 视频剪辑。

我唯一的问题是:当我将新的 url 添加到我的 json 文件时,我需要关闭应用程序并打开它才能看到我添加的新视频。

有没有一种方法可以每 10 分钟刷新/重新加载 parsedurl?在这种情况下,当新的 url 被添加到 json 文件中时,它会提取该信息并将新视频添加到数组的末尾,而不必每次都关闭应用程序。

我正在考虑使用 timer.scheduledTimer,这可能吗?如果是这样,怎么做?有什么更好的方法来解决这个问题?

编辑: 显然我的问题不是很清楚(我很抱歉)。

我有这个网址:

let parseURL = "http://192.168.64.2/Project/test123.json"

test123.json 文件包含:

    "videos": [
    {
        "url" : "(Any video url)"
    },

    {
        "url" : "(Any video url)"
    }

现在,我的应用现在显示 2 个视频。如果我添加第三个 url,我需要重新启动模拟器才能看到第三个视频。

我想每 10 分钟重新加载/刷新一次 url,这样当我的 test123.json 发生更改时,它将在模拟器中可见,而无需重新启动模拟器。 (希望这能让一切更清楚)

【问题讨论】:

  • 你能显示你的代码吗?目前尚不清楚问题出在哪里。
  • 我更新了我的评论。希望这能让它更清楚一点。

标签: json swift avplayer reload avplayerviewcontroller


【解决方案1】:

如果你真的想每 10 分钟刷新一次,那么使用 timer.scheduledTimer。但更好的方法是使用静默推送通知,以便您的服务器可以在新内容可用时通知您的应用程序。

【讨论】:

  • 谢谢,我会调查静默推送通知。关于 timer.scheduledTimer,我将如何处理?我创建了一个计时器,我的选择器将被解析 URL,但这什么也没做。 (5 秒用于测试) jsonReloadTimer = Timer.scheduledTimer(timeInterval: 5, target: self, selector: #selector(getJsonFromUrl), userInfo: nil, repeats: true)
  • @Anna_JB does nothing 是否意味着它没有被调用?你检查断点还是打印语句?
猜你喜欢
  • 2011-12-21
  • 2019-10-03
  • 1970-01-01
  • 2017-10-24
  • 1970-01-01
  • 2018-03-09
  • 1970-01-01
  • 2018-06-17
  • 2011-08-10
相关资源
最近更新 更多