【问题标题】:Intellisense broken in latest stable Xamarin iOS after updating to XCode 8.3.1更新到 XCode 8.3.1 后,Intellisense 在最新稳定的 Xamarin iOS 中出现故障
【发布时间】:2017-05-11 06:20:15
【问题描述】:

直到最近,我的 iOS 应用程序都是在运行 xCode 7.x 的构建机器上构建的。现在我们正在准备使用 xCode 8.3.1 进行构建。带有 xCode 8.3.1 的最新 Xamarin Studio iOS 稳定版似乎认为我的所有代码都无效。尽管代码是完全可编译和部署的,但几乎每个类和每一行都有某种错误。请注意,屏幕截图最右侧的语法栏是纯红色的。在更新到最新的稳定 Xamarin Studio 和 xCode 之前,这并没有发生。

Xamarin 版本:

Xamarin Studio Community
Version 6.3 (build 863)
Installation UUID: 87149f4b-0f09-4f27-8133-582330f3df28
Runtime:
    Mono 4.8.1 (mono-4.8.0-branch/22a39d7) (64-bit)
    GTK+ 2.24.23 (Raleigh theme)

    Package version: 408010000

NuGet
Version: 3.5.0.0

Xamarin.Profiler
Version: 1.4.0
Location: /Applications/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler

Apple Developer Tools
Xcode 8.3.1 (12170)
Build 8E1000a

Xamarin.Android
Version: 7.2.0.7 (Xamarin Studio Community)
Android SDK: /Users/joeyz/Library/Developer/Xamarin/android-sdk-macosx
    Supported Android versions:
        5.0 (API level 21)
        6.0 (API level 23)
        7.0 (API level 24)
        7.1 (API level 25)

SDK Tools Version: 25.2.5
SDK Platform Tools Version: 25.0.4
SDK Build Tools Version: 25.0.2

Java SDK: /usr
java version "1.8.0_101"
Java(TM) SE Runtime Environment (build 1.8.0_101-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode)

Android Designer EPL code available here:
https://github.com/xamarin/AndroidDesigner.EPL

Xamarin.Mac
Version: 3.2.0.175 (Xamarin Studio Community)

Xamarin.iOS
Version: 10.8.0.175 (Xamarin Studio Community)
Hash: a04678c2
Branch: d15-1
Build date: 2017-03-28 14:05:38-0400

Xamarin Inspector
Version: 1.2.2
Hash: b71b035
Branch: d15-1
Build date: Fri, 21 Apr 2017 17:57:12 GMT

Build Information
Release ID: 603000863
Git revision: a2163670efe259c85cd8f335d95b175068fbbe2a
Build date: 2017-04-03 14:33:15-04
Xamarin addins: 2045d688ea1420e0381b473360ca62a763eb7d04
Build lane: monodevelop-lion-d15-1

Operating System
Mac OS X 10.12.4
Darwin Pako-2.local 16.5.0 Darwin Kernel Version 16.5.0
    Fri Mar  3 16:52:33 PST 2017
    root:xnu-3789.51.2~3/RELEASE_X86_64 x86_64

编辑:

所以 Visual Studio for mac 在智能感知方面也存在同样的问题。唯一的区别是它实际上给了我每条红线的错误(与 Xamarin Studio 不同,无论红线如何都构建)。这没有任何意义。例如它说“预定义类型'System.Booleon'没有定义或实现”尽管我有“使用系统;”

r.com/Aahaf.png

【问题讨论】:

    标签: xamarin xamarin.ios intellisense


    【解决方案1】:

    我记得 2014 年列出的一个旧错误,我找不到 bugzilla 链接,但基本上它指出了本地构建的相同问题,我认为有人强调了自动构建的类似问题。早期的解决方法之一是将 Xamarin 回滚到旧版本并更新,或者删除并重新安装。这不是很实用,但应该可以解决问题。删除某些缓存文件也完全有可能解决问题,但很难准确确定哪些与此问题相关。

    编辑:

    所以我花了一些时间寻找一些可能有助于解决问题的各种修复程序,显然我不知道您在构建机器上的确切设置,但这里有一些尝试过并且解决一般智能感知问题的经过测试的方法。

    1。 确保“自动列表成员”和“参数信息”都被勾选,位于:工具 -> 选项 -> 文本编辑器 -> 所有语言 -> 常规

    2。 只需删除文件夹“ReflectedSchemas”。位置取决于所使用的 Visual Studio 版本,但通常在此区域:%AppData%\Microsoft\VisualStudio\11.0\ReflectedSchemas

    3。 在 VS 中重置设置:工具->导入和导出设置->重置所有设置。

    4。 刷新智能感知本地缓存:编辑->智能感知->刷新本地缓存

    5。 删除项目中的 Psess 文件。

    这些都是尝试将智能感知信息恢复到正确状态的有效方法。它们更像是一种全面的尝试方法。如果这些都不起作用,请大声告诉我,我们会尝试考虑更多。

    【讨论】:

    • 这很奇怪,理论上任何与通过 xamarin 解析相关的智能感知缓存都应该通过重新安装来重置。今晚我会尝试做一些测试,看看是否有替代解决方案。
    • @lampshade 我已经为我的答案添加了一些可能的解决方案,试一试。
    • 感谢您的建议!所以我在 MacOS Sierra 上使用 Xamarin Studio,而不是在 Windows 上使用 Visual Studio。我将尝试在 XS 中找到您建议的设置/文件的等效项。看起来 Visual Studio 是 mac 的 beta/alpha 版本。我自己没有尝试过,因为一位同事尝试过并且遇到了一些问题。
    • @lampshade ahhh 在这种情况下尝试删除 .userprefs 文件并重新打开 xamarin studio,我知道这已经解决了过去一些人的问题。
    • 这似乎没有帮助 :-( 奇怪的是,我有一个没有这个问题的 Android 解决方案。只有这个 iOS 解决方案有。但是这些解决方案非常不同。Android解决方案是使用“Multiplatform -> Portable Library”制作的,而 iOS 是使用“Multiplatform -> Shared Project”制作的。我想知道 Shared Project 中是否有什么不同会导致这个问题。
    猜你喜欢
    • 2018-11-20
    • 1970-01-01
    • 1970-01-01
    • 2021-09-17
    • 2020-08-16
    • 1970-01-01
    • 2023-04-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多