Forum Xamarin.Android

Invalid Resource Directory Name: obj/Debug/res/ fonts

I'm currently trying in change our fonts to be referenced as resources following the Xamarin Fonts Guide, but I'm seeing a weird issue where if i add my font and set the build action to 'AndroidResource', the build fails with the following error:
invalid resource directory name : error APT0000: obj/Debug/res/ fonts

The strange part is that the invalid file path has an extra space, but I don't know where its coming from. I've tried and recreated this with different directory names. I've also checked my csproj file in case the space was added there with no luck.

Has anyone else seen this issue or know a fix?


  • CharwakaCharwaka INMember ✭✭✭✭✭

    Hi @slajalin

    delete font folder and create folder in assets/fonts and clean Rebuild

  • slajalinslajalin USMember ✭✭

    Hi @Charwaka , thanks for the suggestion. However, I want to build the font as an AndroidResource, not as an asset. I did try to add the font to assets/fonts folder but once I set the build action to AndroidResource, I get a
    invalid resource directory name : error APT0000: obj/Debug/res/ assets

    I believe this is something strange with setting a build action to be AndroidResource for a font.

  • LesterBotelloLesterBotello DOMember ✭✭

    Hey @slajalin! Did you manage to solve this? I'm getting the same, but a coworker is working with the exact same project in Windows and it compiles just fine. Are you by any chance working on VS for Mac?

  • JonDouglasJonDouglas USXamarin Team, University, Developer Group Leader Xamurai

    We have a sample demonstrating a font as an AndroidResource:

    This is a fairly new feature as of Android 8.0(API 26) and Support Library v26 to include fonts as XML. Documentation available here:

    Do you perhaps have a project that you can upload to this post that is failing on your end?

  • slajalinslajalin USMember ✭✭

    @LesterBotello Thanks for the headsup! Yes, my entire team is developing through VS for Mac which might be why we couldn't get ours to compile at all. We've pulled out our task to our backlog for now for us to revisit, but that's hardly a solution.

    @JohnDouglas Thanks for your reply. Yes, that's the tutorial i've been following, but could not get past pulling in the font. I cannot upload our actual project, but I've created a small sample app where I get the same error when trying to build the android app. I unfortunately can't post links yet with this account, but it's the only project i have on github on an account with the same name.

    It's interesting to see that this may be only a VS for Mac issue. Hope this helps and thank for your help!

  • JonDouglasJonDouglas USXamarin Team, University, Developer Group Leader Xamurai


    Can you double check that your Build Tools version inside your Android SDK is >= 26.0.0? Can you also get me a Diagnostic Build Output?

  • slajalinslajalin USMember ✭✭

    Unless there is a different Build Tools I need to look at, I checked and do have 26 installed in my instance of Visual Studio.
    Unfortunately, I can't show a screenshot, but It's in my Preferences -> Projects -> SDK Locations -> Android and there's a tab named 'Tools' where it lists all available versions of 'Android SDK Build Tools'.

    I've also attached my diagnostic logs.

  • Experiencing the same problem, any ideas? I double checked my VS for mac and Android SDK and everything is updated to the latest version.

  • In my case the error was caused by incorrect folder name - I had Resources/fonts, but the correct folder name is Resources/font.

    @slajalin From your logs it seems you have the same problem.

  • Jesse_JiangJesse_Jiang USMember ✭✭✭

    I met this issue in AppCenter, that is caused by AppCenter will use the old Android build tool to do the build.
    To solve this issue, you can add
    into PropertyGroup

  • RichardRoutRichardRout USMember

    I was experiencing the same problem; it wasn't working in Debug, but I would switch to Release and it would work.

    I tried deleting my obj + bin folders in my project, then redeployed Debug and it seems to work fine now.

  • Michael_ShapiroMichael_Shapiro USMember ✭✭✭

    @Jesse_Jiang - Can you explain why it works? Is it because AppCenter has an outdated build server?

  • Jesse_JiangJesse_Jiang USMember ✭✭✭

    @Michael_Shapiro said:
    @Jesse_Jiang - Can you explain why it works? Is it because AppCenter has an outdated build server?

    The root cause is AppCenter will use Android SDK 23(I forgot) as default one, the old SDK, don't support the font feature when building it.
    This line will make sure the App Center will use SDK 26.

  • I resolved issue by adding build tools version 27.0.3 to my sdk location/build-tools. check the required build tools version in obj/debug/[compile-version]/build.props

  • MarcioOrdonezMarcioOrdonez USMember ✭✭

    Android Project:

    Put image/font in Asset root folder. Open file properties and set Build Action as "AndroidAsset". Go Happy!

  • DanielVidalesDanielVidales USMember ✭✭

    The solution is amazingly simple. This error is brought when accidentally you paste an image on the Resource folder. It´s Build Action will be defined by default as Android Resource when pasted on this folder, leading to this compilation error that you are seeing. Android resources such as fonts or other xmls should be on it´s corresponding subfolder of the Resource folder only, following Android conventions (drawable for images, font for fonts, etc)

Sign In or Register to comment.