Xamarin android应用抛出ResourceNotFoundException [英] Xamarin android app throws ResourceNotFoundException

查看:61
本文介绍了Xamarin android应用抛出ResourceNotFoundException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

从1周开始,我发现了Xamarin框架,我的工作是使Android应用程序正常工作. iOS应用程序之前已经启动过.

Since 1 week I discovered Xamarin framework, and my job is to make Android app work. iOS app has been already launched before.

我必须首先处理一些NuGet Packages依赖项,但现在唯一的例外是:

I had to deal first with some NuGet Packages dependencies, but now the only exception I get is :

06-26 15:01:40.719 E/mono-rt (20038): [ERROR] FATAL UNHANDLED EXCEPTION: Android.Content.Res.Resources+NotFoundException: Resource ID #0x0
06-26 15:01:40.719 E/mono-rt (20038):   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /Users/builder/data/lanes/2923/52635947/source/mono/external/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:143 
06-26 15:01:40.719 E/mono-rt (20038):   at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod (JniObjectReference instance, JniObjectReference type, Java.Interop.JniMethodInfo method, Java.Interop.JniArgumentValue* args) [0x000a7] in /Users/builder/data/lanes/3340/4e275588/source/Java.Interop/src/Java.Interop/Java.Interop/JniEnvironment.g.cs:12083 
06-26 15:01:40.719 E/mono-rt (20038):   at Android.Runtime.JNIEnv.CallNonvirtualVoidMethod (IntPtr jobject, IntPtr jclass, IntPtr jmethod, Android.Runtime.JValue* parms) [0x00000] in /Users/builder/data/lanes/3340/4e275588/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:444 
06-26 15:01:40.719 E/mono-rt (20038):   at Android.Runtime.JNIEnv.FinishCreateInstance (IntPtr instance, IntPtr jclass, IntPtr constructorId, Android.Runtime.JValue* constructorParameters) [0x0000b] in /Users/builder/data/lanes/3340/4e275588/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.cs:339 
06-26 15:01:40.719 E/mono-rt (20038):   at Android.Support.V4.App.ActionBarDrawerToggle..ctor (Android.App.Activity activity, Android.Support.V4.Widget.DrawerLayout drawerLayout, Int32 drawerImageRes, Int32 openDrawerContentDescRes, Int32 closeDrawerContentDescRes) [0x00124] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at Xamarin.Forms.Platform.Android.Platform.GetNewMasterDetailToggle () [0x00030] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at Xamarin.Forms.Platform.Android.Platform.UpdateMasterDetailToggle (Boolean update) [0x00075] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at Xamarin.Forms.Platform.Android.Platform.UpdateActionBar () [0x000a6] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at Xamarin.Forms.Platform.Android.Platform.SetPage (Xamarin.Forms.Page newRoot) [0x000bd] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at Xamarin.Forms.Platform.Android.FormsApplicationActivity.InternalSetPage (Xamarin.Forms.Page page) [0x000b7] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at Xamarin.Forms.Platform.Android.FormsApplicationActivity.SetMainPage () [0x0000c] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at Xamarin.Forms.Platform.Android.FormsApplicationActivity.LoadApplication (Xamarin.Forms.Application application) [0x0002d] in <filename unknown>:0 
06-26 15:01:40.719 E/mono-rt (20038):   at savtime.Droid.MainActivity.OnCreate (Android.OS.Bundle bundle) [0x0001e] in D:\sources\savtime-mobile\Droid\MainActivity.cs:27 
06-26 15:01:40.719 E/mono-rt (20038):   at Android.App.Activity.n_OnCreate_Landroid_os_Bundle_ (IntPtr jnienv, IntPtr native__this, IntPtr native_savedInstanceState) [0x00011] in /Users/builder/data/lanes/3340/4e275588/source/monodroid/src/Mono.Android/platforms/android-23/src/generated/Android.App.Activity.cs:2426 
06-26 15:01:40.719 E/mono-rt (20038):   at (wrapper dynamic-method) System.Object:72e9ca78-aec6-45d3-82e8-45b117f59475 (intptr,intptr,intptr)
06-26 15:01:40.719 E/mono-rt (20038):   --- End of managed exception stack trace ---
06-26 15:01:40.719 E/mono-rt (20038): android.content.res.Resources$NotFoundException: Resource ID #0x0
06-26 15:01:40.719 E/mono-rt (20038):   at android.content.res.Resources.getValue(Resources.java:1243)
06-26 15:01:40.719 E/mono-rt (20038):   at android.content.res.Resources.getDrawable(Resources.java:766)
06-26 15:01:40.719 E/mono-rt (20038):   at android.content.Context.getDrawable(Context.java:402)
06-26 15:01:40.719 E/mono-rt (20038):   at android.support.v4.content.ContextCompatApi21.getDrawable(ContextCompatApi21.java:26)
06-26 15:01:40.719 E/mono-rt (20038):   at android.support.v4.content.ContextCompat.getDrawable(ContextCompat.java:321)
06-26 15:01:40.719 E/mono-rt (20038):   at android.support.v4.app.ActionBarDrawerToggle.<init>(ActionBarDrawerToggle.java:277)
06-26 15:01:40.719 E/mono-rt (20038):   at android.support.v4.app.ActionBarDrawerToggle.<init>(ActionBarDrawerToggle.java:229)
06-26 15:01:40.719 E/mono-rt (20038):   at md5daa929973e91d615883be6545c9acbac.MainActivity.n_onCreate(Native Method)
06-26 15:01:40.719 E/mono-rt (20038):   at md5daa929973e91d615883be6545c9acbac.MainActivity.onCreate(MainActivity.java:29)
06-26 15:01:40.719 E/mono-rt (20038):   at android.app.Activity.performCreate(Activity.java:5975)
06-26 15:01:40.719 E/mono-rt (20038):   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
06-26 15:01:40.719 E/mono-rt (20038):   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2269)
06-26 15:01:40.719 E/mono-rt (20038):   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2387)
06-26 15:01:40.719 E/mono-rt (20038):   at android.app.ActivityThread.access$800(ActivityThread.java:147)
06-26 15:01:40.719 E/mono-rt (20038):   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1281)
06-26 15:01:40.719 E/mono-rt (20038):   at android.os

我在这里看到很多帖子,这似乎是一个图标问题,但是我检查了项目中的所有资源定义,资源名称,并且一切似乎都很好.

I saw many posts here and it seems to be an icon problem, but i've checked all resource definitions in the project, resource names, and everything seems to be fine.

此问题是否可能是由错误的引用(例如Xamarin Forms或Iconize)引起的?还是仅是因为缺少资源?

Is it possible that this problem is caused by bad References (Like Xamarin Forms, or Iconize) ? Or this can be only because of missing resources ?

我已经清理了我的解决方案,对我的程序包进行了更新或降级,但无济于事.

I've already clean my solution updated or downgraded my packages but nothing work..

我还必须指出我使用F#而不是C#进行开发.而我的观点是通过XAML提出的.

I must also indicate that I use F# instead of C# to develop. And my views are made with XAML.

推荐答案

最后发现了问题所在.

首先,我必须在构建操作"字段中为所有资源文件设置"AndroidResource"(选择资源时请参阅属性)

First, I must set for all my resources files 'AndroidResource' in Build Action field (See in properties when you select a resource)

第二,我不能使用其他字符从A到Z,0到9和'_'命名我的资源.

Second, I must not use other characters as A to Z, 0 to 9, and '_' to name my resources.

这篇关于Xamarin android应用抛出ResourceNotFoundException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆