【问题标题】:Meteor ios blank screen on device and simulatorMeteor ios设备和模拟器上的黑屏
【发布时间】:2018-08-29 08:28:24
【问题描述】:

我的 Meteor 应用程序在浏览器和 Android 设备上运行良好,但在 ios 设备和模拟器上,启动后我总是卡在空白屏幕。 Xcode 对我来说是新的,所以我不知道这是否是我做错了什么?但是,我遵循了 ios 测试说明。我还尝试了许多修复,我的谷歌在我能想到的每个关键字搜索中都充满了最后一次看到的日期。我的 Safari 开发者控制台显示粘贴在下面的这些输出错误......有其他人看到这个问题或知道如何解决它吗?

(出于明显的安全原因,将我的 IP 地址替换为 http://000.000.00.000:3000/。另请注意:body 元素为空,但如果我在控制台中编辑 html,则会更新 iphone 屏幕。似乎我的主页从未呈现)

[Error] TypeError: undefined is not an object (evaluating 'window.navigator.mediaDevices.getUserMedia')
    index.js (elmarti_video-chat.js:1042)
    fileEvaluate (modules-runtime.js:343)
    index.js (elmarti_video-chat.js:453)
    fileEvaluate (modules-runtime.js:343)
    index.js (elmarti_video-chat.js:53)
    fileEvaluate (modules-runtime.js:343)
    (anonymous function) (elmarti_video-chat.js:6319)
    Global Code (elmarti_video-chat.js:6326)
[Error] Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin.
[Error] Failed to load resource: Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin. (_timesync, line 0)
[Error] XMLHttpRequest cannot load http://000.000.00.000:3000/_timesync due to access control checks.
[Error] TypeError: undefined is not an object (evaluating 'VideoCallServices')
    (anonymous function) (app.js:1950)
    (anonymous function) (blaze.js:3398)
    _withTemplateInstanceFunc (blaze.js:3744)
    fireCallbacks (blaze.js:3394)
    (anonymous function) (blaze.js:3474)
    fireCallbacks (blaze.js:2014)
    nonreactive (tracker.js:640)
    (anonymous function) (blaze.js:2011)
    _withCurrentView (blaze.js:2271)
    _fireCallbacks (blaze.js:2010)
    _createView (blaze.js:2028)
    _materializeView (blaze.js:2073)
    materializeDOMInner (blaze.js:1532)
    _materializeDOM (blaze.js:1474)
    (anonymous function)
    _materializeDOM (blaze.js:1483)
    (anonymous function) (blaze.js:2113)
    nonreactive (tracker.js:640)
    _materializeView (blaze.js:2079)
    render (blaze.js:2370)
    insert (iron_dynamic-template.js:518)
    insert (iron_router.js:1639)
    maybeAutoInsertRouter (iron_router.js:1629)
[Error] Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin.
[Error] Failed to load resource: Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin. (_timesync, line 0)
[Error] XMLHttpRequest cannot load http://000.000.00.000:3000/_timesync due to access control checks.
[Error] Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin.
[Error] Failed to load resource: Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin. (_timesync, line 0)
[Error] XMLHttpRequest cannot load http://00.000.00.000:3000/_timesync due to access control checks.
[Error] Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin.
[Error] Failed to load resource: Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin. (_timesync, line 0)
[Error] XMLHttpRequest cannot load http://000.000.00.000:3000/_timesync due to access control checks.
[Error] Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin.
[Error] Failed to load resource: Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin. (_timesync, line 0)
[Error] XMLHttpRequest cannot load http://000.000.00.000:3000/_timesync due to access control checks.
[Error] Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin.
[Error] Failed to load resource: Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin. (_timesync, line 0)
[Error] XMLHttpRequest cannot load http://000.000.00.000:3000/_timesync due to access control checks.

【问题讨论】:

  • Origin http://localhost:12952 is not allowed by Access-Control-Allow-Origin. 这个消息基本上告诉你你需要从服务器发送Access-Control-Allow-Origin: * 标头,以允许来自其他 IP 的连接。检查this link。
  • 嗨@AlejandroIván 谢谢你的帮助......我已经设置了 Access-Control-Allow-Origin: * 。即使在添加链接示例修复后,我仍然只能得到一个空白屏幕。
  • @GeekBoy 你解决过这个问题吗?我遇到了类似的错误。

标签: javascript ios xcode cordova meteor-ios


【解决方案1】:

我遇到了同样的错误,我通过以下方式解决了它:

  1. 删除node_modules 文件夹
  2. 执行meteor reset
  3. 删除.cache文件夹
  4. 再次安装依赖项(我使用了 yarn)。
  5. 完成了!!!该应用应在模拟器和设备中运行。

测试日期:

  • Mac OS 11.1 大苏尔
  • XCode 12.3
  • 流星 1.12.1
  • 前端使用 Vue 和 Vuetify 使用 akryum 包构建。
  • iPhone 12 Pro Max 上的 iOS 14.3 模拟器
  • iPhone SE 上装有 iOS 14.3 的物理设备

我希望这对你也有帮助。

【讨论】:

    猜你喜欢
    • 2020-06-15
    • 1970-01-01
    • 1970-01-01
    • 2014-12-03
    • 1970-01-01
    • 2017-03-09
    • 2014-11-16
    • 1970-01-01
    • 2022-08-19
    相关资源
    最近更新 更多