【发布时间】:2022-02-21 20:50:32
【问题描述】:
我正在使用 Xamarin 进行开发。 当我为 Android 创建启动画面时,我遇到了一个问题。 当我在真实设备上构建它时,手机上会显示两个图标。 当我卸载其中一个时,两个都被删除。
这是什么意思? 我的设置有问题吗? 请让我知道如何解决它。 非常感谢。 我采取的步骤如下
启动画面 启动画面将在 Android 中实现。 (1) 将 SplashActivity 添加到 Droid。 (2) 将MainActivity的属性由MainTheme改为SplashTheme。
[Activity(Label = "RG2022",
Icon = "@mipmap/icon",
//Theme = "@style/MainTheme", //comment out
Theme = "@style/SplashTheme", //change to this
(3)添加MainActivity Oncreate
Window.RequestFeature(Android.Views.WindowFeatures.ActionBar);
SetTheme(Resource.Style.MainTheme);
(4)添加RG2022\RG2022\RG2022.Android\Resources\drawable\splash_screen.xml
<?xml version="1.0" encoding="UTF-8" ?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle" >
<solid android:color="#00000000" />
</shape>
</item>
<item>
<bitmap
android:src="@drawable/splash"
android:tileMode="disabled"
android:gravity="center"/>
</item>
</layer-list>
(5)添加RG2022\RG2022\RG2022.Android\Resources\values\styles.xml
<style name="SplashTheme" parent ="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowBackground">@drawable/splash_screen</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowActionBar">true</item>
</style>
(6)在drowable处添加Splash.png AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="1" android:versionName="1.0" package="com.companyname.rg2022" android:installLocation="auto">
<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="30" />
<application android:icon="@mipmap/icon" android:theme="@style/MainTheme" android:label="RG2022"></application>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
</manifest>
【问题讨论】:
-
您可以在 Android 上使用自己的图标公开多个活动。但我不确定如何使用 Xamarin 激活此功能,因为您的 AndroidManifest.xml 看起来太空了(根本没有定义活动)。