我最近在项目中将MvvmCross从3.5.1更新到4.1.4,并随之发布了应用更新。
之后,我从Xamarin Insights看到很多用户的体验;
Could not activate JNI Handle 0xffb35af8 (key_handle 0xe888654) of Java type 'md53997af0c1a24144057e197743f9f827a/HomeView' as managed type 'package.name.HomeView'
几乎所有活动及其各自的活动名称。所有这些活动都是MvxActivities。
我的Setup.cs -
public class Setup : MvxAndroidSetup
{
public Setup(Context applicationContext)
: base(applicationContext)
{
}
protected override IMvxApplication CreateApp()
{
return new MVVM.App();
}
protected override IMvxTrace CreateDebugTrace()
{
return new MvxDebugTrace();
}
protected override MvvmCross.Droid.Views.IMvxAndroidViewPresenter CreateViewPresenter()
{
var presenter = new MyViewPresenter();
Mvx.RegisterSingleton<IMvxViewPresenter>(presenter);
return presenter;
}
protected override void FillTargetFactories(MvvmCross.Binding.Bindings.Target.Construction.IMvxTargetBindingFactoryRegistry registry)
{
registry.RegisterCustomBindingFactory<View>(
"ShowMe",
v => new ViewScalingCustomBinding(v));
registry.RegisterCustomBindingFactory<View>(
"ScaleMe",
v => new ViewSizingCustomBinding(v));
registry.RegisterCustomBindingFactory<View>(
"CustomFont",
v => new FontCustomBinding(v));
registry.RegisterCustomBindingFactory<View>(
"OtherCustomFont",
v => new FontDincCustomBinding(v));
registry.RegisterCustomBindingFactory<View>(
"ImageResize",
v => new ImageResizeCustomBinding(v));
base.FillTargetFactories(registry);
}
protected override IMvxPluginConfiguration GetPluginConfiguration(Type plugin)
{
if (plugin == typeof(MvvmCross.Plugins.DownloadCache.Droid.Plugin))
{
return new MvvmCross.Plugins.DownloadCache.Droid.MvxDownloadCacheConfiguration()
{
CacheName = "Pictures.MvvmCross",
CacheFolderPath = "../Library/Caches/Pictures.MvvmCross/",
MaxFiles = 500,
MaxFileAge = TimeSpan.FromDays(1),
MaxInMemoryBytes = 4000000, // 4 MB
MaxInMemoryFiles = 1,
MaxConcurrentDownloads = 10,
DisposeOnRemoveFromCache = false
};
}
return null;
}
}
可能导致此问题的原因是什么?
答案 0 :(得分:3)
我没有使用任何自定义视图就有异常。只是尝试清理项目,它解决了我的问题,但仍然有点让我害怕使用Xamarin。