smstuebe / xamarin-fingerprint

Xamarin and MvvMCross plugin for authenticate a user via fingerprint sensor
Microsoft Public License
490 stars 115 forks source link

Galaxy S5 Neo #53

Closed nielscup closed 6 years ago

nielscup commented 7 years ago

I noticed a Google Play crash report for a Galaxy S5 Neo device. AFAIK this device does not have a fingerprint scanner. I don't own a Galaxy S5 Neo so I am unable to reproduce/debug this directly but I found the same crash report for this device in TestCloud.

Steps to reproduce

  1. Start fingerprint on Samsung Galaxy S5 Neo

Expected behavior

Fingerprint is not available and app should continue

Actual behavior

App crashes

Crashlog

MvvmCross.Platform.Exceptions.MvxException: Failed to construct and initialize ViewModel for type SetupWizardViewModel from locator MvxDefaultViewModelLocator - check InnerException for more information ---> MvvmCross.Platform.Exceptions.MvxException: Problem running viewModel lifecycle of type SetupWizardViewModel ---> System.AggregateException: One or more errors occurred. ---> Java.Lang.RuntimeException: Fingerprint Service is not running on the device. at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()(<01d641b861aa41a08c3977d4970a5f65>: 0) at Java.Interop.JniEnvironment+InstanceMethods.CallBooleanMethod(Java.Interop.JniObjectReference instance, Java.Interop.JniMethodInfo method)(<49e0625717b449b49bb626c364463a5a>: 0) at Android.Runtime.JNIEnv.CallBooleanMethod(System.IntPtr jobject, System.IntPtr jmethod)(<40271dd77dc34a1db428a92c6619a155>: 0) at Com.Samsung.Android.Sdk.Pass.SpassFingerprint.get_HasRegisteredFinger()(C:\Projekte\xamarin-fingerprint\src\Plugin.Fingerprint.Android.Samsung\obj\Release\generated\src\Com.Samsung.Android.Sdk.Pass.SpassFingerprint.cs: 482) at Plugin.Fingerprint.Samsung.SamsungFingerprintImplementation+d10.MoveNext()(<7c1c577fb1eb46b3b300c7b2befdf740>: 0) at --- End of stack trace from previous location where exception was thrown ---(Async call boundary: ) at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(System.Threading.Tasks.Task task)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task task)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(System.Threading.Tasks.Task task)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter`1[TResult].GetResult()(<01d641b861aa41a08c3977d4970a5f65>: 0) at Plugin.Fingerprint.Abstractions.FingerprintImplementationBase+d2.MoveNext()(C:\Projekte\xamarin-fingerprint\src\Plugin.Fingerprint.Abstractions\FingerprintImplementationBase.cs: 23) at --- End of stack trace from previous location where exception was thrown ---(Async call boundary: ) at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(System.Threading.Tasks.Task task)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task task)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(System.Threading.Tasks.Task task)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Runtime.CompilerServices.TaskAwaiter1[TResult].GetResult()(<01d641b861aa41a08c3977d4970a5f65>: 0) at SetupWizardViewModel+<InitWizardViewModels>c__AnonStorey6+<InitWizardViewModels>c__async5.MoveNext()(/Repos/SetupWizard/SetupWizardViewModel.cs: 95) : at System.Threading.Tasks.Task.ThrowIfExceptional(System.Boolean includeTaskCanceledExceptions)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Threading.Tasks.Task.Wait(System.Int32 millisecondsTimeout, System.Threading.CancellationToken cancellationToken)(<01d641b861aa41a08c3977d4970a5f65>: 0) at System.Threading.Tasks.Task.Wait()(<01d641b861aa41a08c3977d4970a5f65>: 0) atSetupWizardViewModel.InitWizardViewModels()(/Repos/SetupWizardViewModel.cs: 100) at ViewModels.BaseWizardPresentingViewModel.Start()(/Repos/BaseWizardPresentingViewModel.cs: 17) at SetupWizardViewModel.Start()(/Repos/SetupWizardViewModel.cs: 36) at MvvmCross.Core.ViewModels.MvxDefaultViewModelLocator.RunViewModelLifecycle(MvvmCross.Core.ViewModels.IMvxViewModel viewModel, MvvmCross.Core.ViewModels.IMvxBundle parameterValues, MvvmCross.Core.ViewModels.IMvxBundle savedState)(<69bce0378e8e413982d3b552d7e387a8>: 0) : at MvvmCross.Core.ViewModels.MvxDefaultViewModelLocator.RunViewModelLifecycle(MvvmCross.Core.ViewModels.IMvxViewModel viewModel, MvvmCross.Core.ViewModels.IMvxBundle parameterValues, MvvmCross.Core.ViewModels.IMvxBundle savedState)(<69bce0378e8e413982d3b552d7e387a8>: 0) at MvvmCross.Core.ViewModels.MvxDefaultViewModelLocator.Load(System.Type viewModelType, MvvmCross.Core.ViewModels.IMvxBundle parameterValues, MvvmCross.Core.ViewModels.IMvxBundle savedState)(<69bce0378e8e413982d3b552d7e387a8>: 0) at MvvmCross.Core.ViewModels.MvxViewModelLoader.LoadViewModel(MvvmCross.Core.ViewModels.MvxViewModelRequest request, MvvmCross.Core.ViewModels.IMvxBundle savedState, MvvmCross.Core.ViewModels.IMvxViewModelLocator viewModelLocator)(<69bce0378e8e413982d3b552d7e387a8>: 0) : at MvvmCross.Core.ViewModels.MvxViewModelLoader.LoadViewModel(MvvmCross.Core.ViewModels.MvxViewModelRequest request, MvvmCross.Core.ViewModels.IMvxBundle savedState, MvvmCross.Core.ViewModels.IMvxViewModelLocator viewModelLocator)(<69bce0378e8e413982d3b552d7e387a8>: 0) at MvvmCross.Core.ViewModels.MvxViewModelLoader.LoadViewModel(MvvmCross.Core.ViewModels.MvxViewModelRequest request, MvvmCross.Core.ViewModels.IMvxBundle savedState)(<69bce0378e8e413982d3b552d7e387a8>: 0) at MvvmCross.Droid.Views.MvxAndroidViewsContainer.ViewModelFromRequest(MvvmCross.Core.ViewModels.MvxViewModelRequest viewModelRequest, MvvmCross.Core.ViewModels.IMvxBundle savedState)(<f6aebf863dc84be7b380cfec8d459508>: 0) at MvvmCross.Droid.Views.MvxAndroidViewsContainer.CreateViewModelFromIntent(Android.Content.Intent intent, MvvmCross.Core.ViewModels.IMvxBundle savedState)(<f6aebf863dc84be7b380cfec8d459508>: 0) at MvvmCross.Droid.Views.MvxAndroidViewsContainer.Load(Android.Content.Intent intent, MvvmCross.Core.ViewModels.IMvxBundle savedState, System.Type viewModelTypeHint)(<f6aebf863dc84be7b380cfec8d459508>: 0) at MvvmCross.Droid.Views.MvxActivityViewExtensions.LoadViewModel(MvvmCross.Droid.Views.IMvxAndroidView androidView, MvvmCross.Core.ViewModels.IMvxBundle savedState)(<f6aebf863dc84be7b380cfec8d459508>: 0) at MvvmCross.Droid.Views.MvxActivityViewExtensions+<>c__DisplayClass1_0.<OnViewCreate>b__1()(<f6aebf863dc84be7b380cfec8d459508>: 0) at MvvmCross.Core.Views.MvxViewExtensionMethods.OnViewCreate(MvvmCross.Core.Views.IMvxView view, System.Func1[TResult] viewModelLoader)(<69bce0378e8e413982d3b552d7e387a8>: 0) at MvvmCross.Droid.Views.MvxActivityViewExtensions.OnViewCreate(MvvmCross.Droid.Views.IMvxAndroidView androidView, Android.OS.Bundle bundle)(: 0) at MvvmCross.Droid.Views.MvxActivityAdapter.EventSourceOnCreateCalled(System.Object sender, MvvmCross.Platform.Core.MvxValueEventArgs1[T] eventArgs)(<f6aebf863dc84be7b380cfec8d459508>: 0) at (wrapper delegate-invoke) System.EventHandler1[MvvmCross.Platform.Core.MvxValueEventArgs1[Android.OS.Bundle]]:invoke_void_object_TEventArgs(object,MvvmCross.Platform.Core.MvxValueEventArgs1)(: ) at MvvmCross.Platform.Core.MvxDelegateExtensionMethods.Raise[T](System.EventHandler1[TEventArgs] eventHandler, System.Object sender, T value)(D:\git\MvvmCross\MvvmCross\Platform\Platform\Core\MvxDelegateExtensionMethods.cs: 21) at MvvmCross.Droid.Support.V4.EventSource.MvxEventSourceFragmentActivity.OnCreate(Android.OS.Bundle bundle)(<d5dc0051f8034eea8dea8917e6cb2b88>: 0) at MvvmCross.Droid.Support.V4.MvxCachingFragmentActivity.OnCreate(Android.OS.Bundle bundle)(<d5dc0051f8034eea8dea8917e6cb2b88>: 0) at MvxStateSavingCompatView1[T].OnCreate(Android.OS.Bundle savedInstanceState)(/Repos/MvxStateSavingCompatView.cs: 48) at BaseView`1[T].OnCreate(Android.OS.Bundle savedInstanceState)(/Repos/BaseView.cs: 83) at SetupWizardView.OnCreate(Android.OS.Bundle savedInstanceState)(/Repos/SetupWizardView.cs: 55) at Android.Support.V4.App.FragmentActivity.n_OnCreate_Landroid_osBundle(System.IntPtr jnienv, System.IntPtr native__this, System.IntPtr native_savedInstanceState)(<7a2a36256f1648ecbd0c15a75bc5a349>: 0) at (wrapper dynamic-method) System.Object:d30270a0-8b89-4200-aa88-2dde3d5f4a32(intptr,intptr,intptr)(: ) java.lang.RuntimeException: java.lang.reflect.InvocationTargetException at com.android.internal.os.ZygoteInit.main(ZygoteInit.java: 1199) Caused by: java.lang.reflect.InvocationTargetException at java.lang.reflect.Method.invoke(Native Method: ) at java.lang.reflect.Method.invoke(Method.java: 372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java: 1404) at ... 1 more(: ) CRASH: Crash in native code ============PushLog. stop! [1][CommonFeature] ###versionCode : 115073101, CONTACT_PROFILE_SERVICE_ENABLE : true, FREE_MESSAGE_ENABLE : false [1][CommonFeature] ###versionCode : 115073101, CONTACT_PROFILE_SERVICE_ENABLE : true, FREE_MESSAGE_ENABLE : false [ELog][1][EasySignUp] [NotRegistered][012c34e954a8aa3a7bfe65a18da7d33ff7516ef282]

Configuration

Version of the Plugin: 1.4.2

Platform: Android 5.1.1

Device: Samsung Galaxy S5 Neo

smsissuechecker commented 7 years ago

Hi @nielscup,

I'm the friendly issue checker. Thanks for using the issue template :star2: I appreciate it very much. I'm sure, the maintainers of this repository will answer, soon.

smstuebe commented 7 years ago

Should be fixed in 1.4.5

smstuebe commented 6 years ago

no feedback = good feedback -> close