Visual Studio 2017 - Xamarin - 文件“objDebugandroidinpackaged_resources"不存在 [英] Visual Studio 2017 - Xamarin - The file "objDebugandroidinpackaged_resources" does not exist
问题描述
我已经与这个问题斗争了 2 天,但找不到任何解决方案.
我在 Visual Studio 2017 中有一个 Xamarin Android 应用,包含三个项目:
- Xamarin.Android 项目(主要项目)
- Android 特定的单元测试在设备上运行 - 使用
正如其他 SO 线程所建议的那样,我尝试卸载最新的 Android SDK Build-tools (25.0.2) 并安装了 23.0.3 版本(我的所有项目都针对 Android 6.0),但它也没有帮助,我仍然有同样的错误.
也许值得补充的是,当我尝试在我的应用程序中实现 RecyclerView 阅读 this 教程,他们建议在 SDK 管理器中安装 Android 7.1.1 (API 25).但是,在那之后我撤消了所有更改,甚至重新安装了 VS2017 + Xamarin.
你知道为什么会这样吗?我真的很感激任何帮助.谢谢!
编辑 2017-04-09:
呃,我删除了 VS2017,使用全新的 Android SDK 安装了 VS2015,但仍然是同样的问题:(
解决方案我终于找到了问题所在.它与 SDK Manager 或 VS 版本的任何组件无关.
按照 来自 developer.xamarin.com 的本地化教程,我玩了一个在我的 Android 项目中使用
Strings.xml
位.我也想从资源中获取我的活动标签,所以在ActivityAttribute
中我定义了:[Activity(Label = "@string/peopleListTitle")]
并在
Strings.xml
文件中添加此值:在这种情况下,我的构建失败并出现上述错误:
文件objDebugandroidinpackaged_resources"不存在
当我将
ActivityAttribute
更改为直接使用字符串时:[Activity(Label = "People List")]
构建顺利通过.
我设法找到了一个解决方案,但实际上我不知道为什么当我尝试使用
Strings.xml
中定义的标签文本时它没有构建.顺便说一句,我设法通过在 Tools -> Options -> Projects and Solutions -> Build and Run 中将构建输出详细程度设置为
Diagnostic
来找到问题所在,这给出了输出窗口中构建失败的详细信息.I'm fighting with that issue for 2 days already and can't find any solution.
I have an Xamarin Android app in Visual Studio 2017 consisting of three projects:
- Xamarin.Android project (main one)
- Android-specific unit tests run on the device - project of type
NUnit 3 Test Project (Android)
created using NUnit Templates for Visual Studio - Platform-independent unit tests project (project of type
Unit Test Project (.NET Framework)
)
Everything worked just fine until now. When I selected my main project as the Startup one, my app was deployed to the device/emulator. When I selected my Android-specific unit tests project, the test project was deployed and unit tests executed by nUnit Xamarin Runners on the device/emulator.
However few days ago I updated my Visual Studio 2017 with the newest available update and now, when trying to build this android-specific unit tests project I get the following error:
The file "objDebugandroidinpackaged_resources" does not exist.
I've searched everywhere, including this and this SO topics. I also totally reinstalled Visual Studio 2017 and Xamarin with Android SDK included. Nothing helped. From what I read I suspect there is something wrong with the versions of Android SDK Build-tools I have installed. Here's what I have currently installed in SDK Manager:
As the other SO threads suggested, I tried uninstalling the newest Android SDK Build-tools (25.0.2) and installed version 23.0.3 (all my projects target Android 6.0), but it also doesn't help, I still have the same error.
Maybe it's worth adding that this issue may have started to happen when I tried to implement RecyclerView in my app reading this tutorial, where they suggested to install Android 7.1.1 (API 25) in SDK Manager. However I undoed my all changes after that and even reintalled VS2017 + Xamarin.
Do you have any other idea why this can be ? I'd really appreciate any help. Thanks!
EDIT 2017-04-09:
Egh, I removed VS2017, installed VS2015 with brand new Android SDK and still the same issue :(
解决方案I've finally found what was the issue. It wasn't related to any component from SDK Manager or VS version.
Following localization tutorial from developer.xamarin.com, I played a bit with
Strings.xml
in my Android project. I wanted to have my Activities Label taken from resources as well, so in theActivityAttribute
I defined:[Activity(Label = "@string/peopleListTitle")]
and added this value in
Strings.xml
file:<?xml version="1.0" encoding="utf-8"?> <resources> <!-------Other resources values -----> <string name="peopleListTitle">People List</string> </resources>
In that case my build is failing with above-mentioned error:
The file "objDebugandroidinpackaged_resources" does not exist
When I change
ActivityAttribute
to use a string directly:[Activity(Label = "People List")]
the build is passing without any issues.
I managed to find a solution, but actually I don't know why it's not building when I try to use Label text defined in
Strings.xml
.BTW, I managed to find what's the problem by setting build output verbosity to
Diagnostic
in Tools -> Options -> Projects and Solutions -> Build and Run which gives a detailed info why the build failed in the Output window.这篇关于Visual Studio 2017 - Xamarin - 文件“objDebugandroidinpackaged_resources"不存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!