Closed nielscup closed 6 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.
Should be fixed in 1.4.5
no feedback = good feedback -> close
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
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+d 2.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.TaskAwaiter: 0)
at MvvmCross.Droid.Views.MvxActivityAdapter.EventSourceOnCreateCalled(System.Object sender, MvvmCross.Platform.Core.MvxValueEventArgs)(: )
at MvvmCross.Platform.Core.MvxDelegateExtensionMethods.Raise[T](System.EventHandler
1[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.Func
1[TResult] viewModelLoader)(<69bce0378e8e413982d3b552d7e387a8>: 0) at MvvmCross.Droid.Views.MvxActivityViewExtensions.OnViewCreate(MvvmCross.Droid.Views.IMvxAndroidView androidView, Android.OS.Bundle bundle)(1[T] eventArgs)(<f6aebf863dc84be7b380cfec8d459508>: 0) at (wrapper delegate-invoke) System.EventHandler
1[MvvmCross.Platform.Core.MvxValueEventArgs1[Android.OS.Bundle]]:invoke_void_object_TEventArgs(object,MvvmCross.Platform.Core.MvxValueEventArgs
11[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 MvxStateSavingCompatView
1[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