2015-06-16 4 views
2

Я пытаюсь реализовать ZXing.Net.Mobile для Android и иметь ошибку времени выполнения.ZXing.Net.Mobile on Android - Resource NotFoundException

 MobileBarcodeScanner scanner = new MobileBarcodeScanner(_activity); 
     ZXing.Result result = await scanner.Scan(); // crashes here 
     HandleZXingResult(result); 

Я использую Xamarin для Visual Studio.

Проблема, кажется, связана с отсутствующими Ресурсами и при попытке SetContentView(layout). Я просто использую ZXing Dlls. Не уверен, куда включать ресурсы.

Трассировка стека:

 
06-16 01:03:44.353 I/MonoDroid(7783): UNHANDLED EXCEPTION: 
06-16 01:03:44.413 I/MonoDroid(7783): Android.Content.Res.Resources+NotFoundException: Exception of type 'Android.Content.Res.Resources+NotFoundException' was thrown. 
06-16 01:03:44.413 I/MonoDroid(7783): at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 
06-16 01:03:44.413 I/MonoDroid(7783): at Android.Runtime.JNIEnv.CallNonvirtualVoidMethod (intptr,intptr,intptr,Android.Runtime.JValue[]) [0x00084] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.20-series/ba9bbbdd/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:896 
06-16 01:03:44.413 I/MonoDroid(7783): at Android.App.Activity.SetContentView (int) [0x00070] in /Users/builder/data/lanes/monodroid-mlion-monodroid-4.20-series/ba9bbbdd/source/monodroid/src/Mono.Android/platforms/android-8/src/generated/Android.App.Activity.cs:3244 
 
android.content.res.Resources$NotFoundException: File res/drawable-hdpi-v4/icon.png from xml type layout resource ID #0x7f020000 
    at android.content.res.Resources.loadXmlResourceParser(Resources.java:3733) 
    at android.content.res.Resources.loadXmlResourceParser(Resources.java:3680) 
    at android.content.res.Resources.getLayout(Resources.java:2166) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:354) 
    at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:366) 
    at android.app.Activity.setContentView(Activity.java:2031) 
    at zxing.mobile.ZxingActivity.n_onCreate(Native Method) 
    at zxing.mobile.ZxingActivity.onCreate(ZxingActivity.java:31) 
    at android.app.Activity.performCreate(Activity.java:5451) 
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093) 
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2377) 
    at android.app 

ответ

0

Не используйте NuGet для Android, попробуйте установить компоненты из Xamarin компонентов Store. Это сработало для меня.

+0

Моя проблема была другой. Это было из-за того, как мои проекты были настроены. Теперь все хорошо. Еще раз спасибо. – HanVo

+0

У меня также есть эта ошибка - не могли бы вы быть более ясными, и что случилось с настройкой проекта? – InquisitorJax

+0

Надеюсь, вы используете nuget для этого, щелкнув правой кнопкой мыши проект и выбрав опцию управления nuget. Вместо этого добавьте компонент в свой проект. См. Ссылку для добавления компонента в визуальную студию: https://developer.xamarin.com/guides/cross-platform/application_fundamentals/components_walkthrough/#Using_the_Component_Store_from_Visual_Studio –

0

У меня была эта проблема, потому что пакет zxing nuget ссылался на сборку зависимостей (наша собственная абстракция сборки плагинов штрих-кода), но не в родительской сборке приложений. Ссылка на пакет в обоих проектах, и тогда он работал нормально.

Смежные вопросы