且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Xamarin.Android 应用程序仅在干净编译时查找启动器活动

更新时间:2023-01-25 20:26:29

此问题已修复,将包含在 Visual Studio 15.5.5Visual Studio 15.6 Preview 3代码>.

此修复程序包含的相应 Xamarin.Android 版本为 Xamarin.Android 8.1.5.0(稳定版)Xamarin.Android 8.2.0.6(预览版)>

敬请关注此版本,因为它即将推出!

(如果您今天需要解决方法,请按照此处的步骤操作:https://bugzilla.xamarin.com/show_bug.cgi?id=61073#c40)

I have an Xamarin.Android with the activity marked as MainLauncher called Login.

When I press F5 for first time the app starts ok in the emulator. Then I stop, do some code change, press F5 again I can see the app starting in the emulator and it's UI starting to show when I get this:

Java.Lang.RuntimeException: Unable to instantiate activity ComponentInfo{MyApp.MyApp/md5b14ee1c038eed1ee5328e926d768294f.Login}: java.lang.ClassNotFoundException: Didn't find class "md5b14ee1c038eed1ee5328e926d768294f.Login" on path: DexPathList[[zip file "/data/app/MyApp.MyApp-1/base.apk"],nativeLibraryDirectories=[/data/app/MyApp.MyApp-1/lib/x86, /vendor/lib, /system/lib]]

Then I will get this error on all attempts to start it. The only solution is to delete the bin and obj folders and press F5 again. After that the app will normally start once before I have to remove the folders again.

This issue has been fixed and will be included in Visual Studio 15.5.5 or Visual Studio 15.6 Preview 3.

The respective Xamarin.Android version this fix is included in are Xamarin.Android 8.1.5.0 (Stable) and Xamarin.Android 8.2.0.6 (Preview)

Be on the look-out for this release as it will be available soon!

(If you need a workaround today, please follow the steps here: https://bugzilla.xamarin.com/show_bug.cgi?id=61073#c40)