You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

全新Xamarin跨平台项目运行报错:找不到类型或命名空间‘App’

解决Xamarin Forms运行时找不到'App'类的问题

这种编译正常但运行时找不到类型的问题我碰到过好多次,大概率是项目引用或者Visual Studio缓存搞的鬼,给你整理几个靠谱的排查和修复步骤:

  • 检查Android项目对共享类库的引用
    右键Android项目 → 选择“项目引用”,确认那个定义了App的.NET Standard 2.0共享类库已经被勾选,引用状态正常。如果没找到,点击“添加引用”,手动选中共享类库添加进去。

  • 确认命名空间引用正确
    打开Android项目里的MainActivity.cs,看看顶部有没有添加共享类库的命名空间引用,比如你的App在MyCoolApp.Shared命名空间下,就得加using MyCoolApp.Shared;。要是嫌麻烦,也可以直接用完整命名空间实例化:LoadApplication(new MyCoolApp.Shared.App());

  • 彻底清理缓存和项目文件
    这是解决VS缓存问题的核心操作:

    1. 点击菜单栏“生成” → “清理解决方案”
    2. 右键每个项目,选择“在文件资源管理器中打开”,手动删除bin和obj文件夹
    3. 关闭Visual Studio,删除VS的缓存文件夹:
      • Windows用户:打开文件管理器,输入%LocalAppData%\Microsoft\VisualStudio\<你的VS版本号>\ComponentModelCache,删除里面的文件
      • Mac用户:打开访达,前往~/Library/Caches/VisualStudio/<你的VS版本号>,清理缓存文件
    4. 重新打开VS,点击“生成” → “重新生成解决方案”
  • 检查共享类库的项目属性
    右键共享类库 → “属性”,确认输出类型是“类库”,目标框架确实是.NET Standard 2.0,同时“生成”选项卡里的“输出路径”是默认的正常路径,没有被修改到奇怪的地方。

  • 验证Android项目的目标框架兼容性
    确认Android项目的目标框架版本和共享类库兼容,Xamarin Forms项目一般建议选Android 12.0(S)或更高版本,同时确保你已经安装了对应的Android SDK组件。

如果上面的步骤都试过还是不行,可以尝试删除解决方案的.sln文件和项目的.csproj.user文件,然后重新加载项目;实在不行就新建一个干净的Xamarin Forms项目,把现有代码迁移过去——虽然麻烦,但有时候是最快解决缓存顽疾的办法。

内容的提问来源于stack exchange,提问作者Hanch

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 08:26:46