Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Ionic应用程序使用Ionic serve加载,但不使用Xcode加载_Ios_Xcode_Cordova_Ionic Framework_Capacitor - Fatal编程技术网

Ios Ionic应用程序使用Ionic serve加载,但不使用Xcode加载

Ios Ionic应用程序使用Ionic serve加载,但不使用Xcode加载,ios,xcode,cordova,ionic-framework,capacitor,Ios,Xcode,Cordova,Ionic Framework,Capacitor,我目前正忙于一个与我的爱奥尼亚项目有关的问题 我在GitHub上有一个Ionic项目,我在过去几周一直在做这个项目,我有一些Cordova插件作为项目的一部分 从GitHub下载项目时,我可以使用Ionic Serve毫无问题地运行应用程序。然而,当我试图为xCode设置在本地设备上运行的项目时,我遇到了许多错误 其中包括: 运行ionic“cordova平台添加ios”时,出现以下错误 错误:无法从“ios”安装,因为它不包含package.json文件 尝试运行“ionic cordova

我目前正忙于一个与我的爱奥尼亚项目有关的问题

我在GitHub上有一个Ionic项目,我在过去几周一直在做这个项目,我有一些Cordova插件作为项目的一部分

从GitHub下载项目时,我可以使用Ionic Serve毫无问题地运行应用程序。然而,当我试图为xCode设置在本地设备上运行的项目时,我遇到了许多错误

其中包括:

  • 运行ionic“cordova平台添加ios”时,出现以下错误
  • 错误:无法从“ios”安装,因为它不包含package.json文件

  • 尝试运行“ionic cordova run ios-l--外部”时
  • 错误:错误:以NSException类型的未捕获异常终止

    我还没有尝试将我的代码转移到一个新的Ionic项目中,因为我希望看看我的问题是否可以在没有这些麻烦的情况下得到解决


    在这里查看项目代码:

    我找到了。您的问题与我在
    android
    平台上遇到的问题完全相同。
    正如我在评论中指出的,它确实是由“损坏的”项目体系结构引起的

    事情是怎么发生的 最初,我对cordova生成的资源有一个问题,不知何故没有被复制到
    android
    平台目录中。我使用
    cordova res
    CLI尝试了很多方法,包括使用
    --copy
    --ios项目
    标志强制在我选择的目录中进行复制

    我无法解决我的问题,然后决定回滚所有更改,重新开始一个干净的项目,尝试其他东西。从那以后,我再也不能添加
    android
    平台了。每次都会引发以下错误:

    错误:无法从“android”安装,因为它不包含package.json文件。
    
    解释 在所有的测试中,我注意到当使用
    cordova
    添加平台或复制资源时,不知何故,它在错误的目录中创建了
    android
    平台,位于我项目的
    根目录下,而不是
    platforms
    文件夹中。这就是问题的根源

    我无法解释这一点,但如果您在项目的根目录下有一个具有此平台名称的文件夹,而尝试添加带有
    cordova
    的平台,则每次都会遇到此错误。我不知道为什么这会阻止将平台添加到项目中,可能CLI将此文件夹用作
    temp
    文件夹

    解决方案 修复方法是简单地删除项目的
    根目录下的任何
    ios
    android
    目录。
    错误将消失,您将能够再次添加平台


    关于您在文章中提供的Github存储库,如果您使用
    cordova@>=9.0.0
    ,则在尝试添加
    ios
    平台时可能会遇到另一个错误

    不支持使用“RequireRecordovaModule”加载非cordova模块“xcode”。
    相反,将此模块添加到依赖项中,并使用常规的“require”加载它。
    
    检查此项以找到解决方法。但是,不建议直接编辑插件源代码,您可能需要寻找另一个cordova Firebase插件

    我还注意到您在项目中有点混淆了
    cordova
    电容器

    确保使用一个或另一个以避免潜在的错误

    希望这有帮助

    @Reqven

    谢谢你的支持我确信我在试图解决问题时已经完成了这一步。这是一个如此荒谬的问题,似乎有一个新的项目架构,正如你所提到的,需要遵循。当我在iIOS平台上工作时,我按照你的步骤做了一小步:

  • 删除iOS文件夹
  • cordova平台添加ios
  • 科尔多瓦
  • 离子构建

  • 如果步骤2抛出错误,导致找不到版本或无法集成到项目运行中-包括“@latest”,这也解决了我的问题

    您是否尝试过擦除
    节点模块
    并删除
    包锁.json
    ?是的,问题仍然存在。我仍然可以继续开发,然而,我将无法在需要时测试任何插件,如imagePicker或Camera。有什么想法吗?它现在可以工作了吗?不幸的是,没有,我做了一个新项目并将代码转移过来,同样的问题仍然存在。我不确定isI最近在尝试添加android平台时,在哪里遇到了同样的错误。它不知何故是由损坏的项目架构造成的。有没有一种方法可以让你分享你的项目,这样我就可以查看它?