Reputation: 235
After updating Xamarin.Forms to latest version i am getting below error :
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 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 at Java.Interop.JniPeerMembers+JniInstanceMethods.InvokeVirtualVoidMethod (System.String encodedMember, IJavaPeerable self, Java.Interop.JniArgumentValue* parameters) [0x00068] in /Users/builder/data/lanes/3340/4e275588/source/Java.Interop/src/Java.Interop/Java.Interop/JniPeerMembers.JniInstanceMethods_Invoke.cs:31 at Android.Widget.ImageView.SetScaleType (Android.Widget.ScaleType scaleType) [0x0002c] in /Users/builder/data/lanes/3340/4e275588/source/monodroid/src/Mono.Android/platforms/android-23/src/generated/Android.Widget.ImageView.cs:1300 at Xamarin.Forms.Platform.Android.ImageRenderer.UpdateAspect () [0x00011] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\ImageRenderer.cs:56 at Xamarin.Forms.Platform.Android.ImageRenderer.OnElementChanged (Xamarin.Forms.Platform.Android.ElementChangedEventArgs
1 e) [0x0002e] in C:\BuildAgent2\work\aad494dc9bc9783\Xamarin.Forms.Platform.Android\Renderers\ImageRenderer.cs:40 at EForms.Droid.Controls.EImageRenderer.OnElementChanged (Xamarin.Forms.Platform.Android.ElementChangedEventArgs
1 e) [0x00002] in E:\Project\BBQMVP\BBQ\Mobile\Lib\EForms\EForms.Droid\Src\Renderers\Controls\EImageRenderer.cs:24 --- End of managed exception stack trace --- java.lang.NullPointerException at android.widget.ImageView.setScaleType(ImageView.java:549) at mono.java.lang.RunnableImplementor.n_run(Native Method) at mono.java.lang.RunnableImplementor.run(RunnableImplementor.java:30) at android.os.Handler.handleCallback(Handler.java:730) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:176) at android.app.ActivityThread.main(ActivityThread.java:5419) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:525) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1046) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:862) at dalvik.system.NativeStart.main(Native Method)
Can anyone suggest that is this the xamarin.forms issue or some android configuration issue after updating xamarin.forms ?
Upvotes: 0
Views: 1213
Reputation: 91
Xamarin forms, will not always be compatible with the latest version of the Android support libraries. If the android support libraries installed are not compatible to the install Xamarin Forms version, the solution wont compile.
To address the above issue, right click you solution and open nuget package manager. Go to the installed tabs and remove Xamarin forms and then remove all the android support libraries one by one.
Once both Xamarin Forms and all android support libs are uninstalled, Install a stable version of Xamarin Forms. This will in turn install the compatible set of Android support libraries.
If the solution doesnt compile still, then try these : 1) Make sure you have latest JDK installed and the VS points to it correctly 2) Go to C:\Users[UserName]\appdata\local, and delete the Xamarin folder 3) Open solution in VS, clean it and rebuild. It will take sometime to rebuild, wait and check it later.
Upvotes: 0
Reputation: 546
In ImageView source code
public void setScaleType(ScaleType scaleType) {
if (scaleType == null) {
throw new NullPointerException();
}
if (mScaleType != scaleType) {
mScaleType = scaleType;
setWillNotCacheDrawing(mScaleType == ScaleType.CENTER);
requestLayout();
invalidate();
}
}
And in ImageRenderer
void UpdateAspect()
{
AImageView.ScaleType type = Element.Aspect.ToScaleType();
Control.SetScaleType(type);
}
So, it looks like your Xamarin.Forms.Image's Aspect is set to null accidently?
Upvotes: 0