【问题标题】:Main launcher =true not working in Xamarin android (system.typeloadexception)主启动器 =true 在 Xamarin android 中不起作用(system.typeloadexception)
【发布时间】:2020-12-13 08:37:01
【问题描述】:

当我在此活动上实现地图 API 时,我将 MapActivity.cs 作为主启动器,然后在我的应用程序的 mainactivity 中更改“MainLauncher = true”并将其从 Mapactivity 中删除,但是当我调试应用程序时它保留在 mapactivity.cs 中打开,所以我将其删除并再次调试,然后它在开始时抛出此异常。

System.TypeLoadException: 'Could not load type 'FinalProject_PU.MapActivity' from assembly 'FinalProject_PU, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.'

我试过了:

  1. 从项目中删除 bin 和 obj 并重新构建解决方案。
  2. 将 mainactivity.cs 名称更改为 mapactivity.cs(它有效,但我想要最佳实践方法,以及为什么会发生这种情况)

【问题讨论】:

  • mapactivity和mainactivity是两个不同的activity吗?如果是,您是否对其名称进行了任何更改?尝试关闭项目和VS重启,然后再次调试。

标签: java c# android android-activity xamarin.android


【解决方案1】:

检查 MainLauncher 是否在 AndroidManifest.xml 中硬编码

<activity android:icon="@drawable/icon" android:noHistory="true" android:screenOrientation="portrait" android:theme="@style/Theme.Splash" android:name=".SplashActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>

https://docs.microsoft.com/en-us/xamarin/android/platform/android-manifest#launchable-from-application-chooser

【讨论】:

    猜你喜欢
    • 2016-11-02
    • 1970-01-01
    • 1970-01-01
    • 2011-11-24
    • 1970-01-01
    • 1970-01-01
    • 2014-12-19
    • 1970-01-01
    • 2021-10-17
    相关资源
    最近更新 更多