【问题标题】:NativeScript - apk build fails due to unsupported platform for tns-ios?NativeScript - 由于 tns-ios 平台不受支持,apk 构建失败?
【发布时间】:2020-10-01 17:20:05
【问题描述】:

我对 NativeScript 有点陌生,所以如果这个答案很明显,我很抱歉,但我有点困惑。我开始在 Windows PC 上为 android 构建应用程序。构建 apk 文件或在模拟器中运行它没有任何问题。

我最终将相同的代码转移到了 mac,这样我就可以更新应用程序的 ios 端,并构建一个 ipa 并在 iPhone 模拟器中运行它。一切正常。

现在,我将使用更新的 IOS 代码将该 相同 代码带回 PC,但是当我运行 tns build android 时出现以下错误:

npm ERR! notsup Unsupported platform for tns-ios@2.0.0: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
npm ERR! notsup Valid OS:    darwin
npm ERR! notsup Valid Arch:  any
npm ERR! notsup Actual OS:   win32
npm ERR! notsup Actual Arch: x64

如果我故意(并且只是)尝试在 Windows 中构建 apk 文件,为什么 NativeScript 会强迫我在 Mac 上执行此操作?看来我现在转移到 Mac 的事实迫使我留在 Mac 上?

除了维护两个代码库之外,有没有办法让 NativeScript 在编译 apk 时忽略 IOS 内容?我觉得有些不对劲。我删除了 platforms node_moduleshooks 目录并尝试重建,但我一直收到同样的错误。如果我将代码恢复到我将其移至 mac 之前的状态,我可以在 windows 中成功编译 APK 文件。

我在两者之间做的唯一一件事就是添加 firebase 云消息传递——在我迁移到 mac 之前,它实际上存在于 android 版本中,还有一些图像。我想也许 firebase 可能会干扰,但我在 firebase.nativescript.json 中将 using_ios 设置为 false 但这也没有做任何事情。

我也尝试了tns platform remove ios,但显然它甚至没有添加到 PC 端,这是有道理的,因为你必须有一个 mac 才能添加它。因此,我为什么要为此挠头。

【问题讨论】:

    标签: android ios nativescript


    【解决方案1】:

    我不知道 package.json 中 tns-ios 版本如何/何时/为什么是 2.0.0,但将其更新到 6.5.2 解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2019-02-25
      • 1970-01-01
      • 1970-01-01
      • 2019-08-04
      • 2019-06-05
      • 2019-06-26
      • 1970-01-01
      • 1970-01-01
      • 2016-03-27
      相关资源
      最近更新 更多