【问题标题】:How to change Android application name in Xamarin.Forms?如何在 Xamarin.Forms 中更改 Android 应用程序名称?
【发布时间】:2017-11-20 16:34:35
【问题描述】:

我正在 Visual Studio For Mac 中使用 Xamarin.Forms,并且我创建了一个非常基本的 Xamarin.Forms 应用程序。

我已经检查了 Android 和 iOS 目标。我有 3 个项目:

  • 一个普通的项目
  • iOS 特定项目
  • 还有一个 Droid 特定项目。

Android 特定应用在应用名称中具有“.Droid”后缀。

所以我决定右键单击 droid 项目,并在“程序集名称”字段中删除此后缀。

我在运行应用程序时遇到了异常(在启动时)。如果我再次更改程序集名称以放置 droid 后缀,它将不再起作用。

您可以使用最新版本的 Xamarin.Forms 对空白项目进行尝试。

我不明白为什么?

【问题讨论】:

    标签: xamarin xamarin.forms deployment xamarin.android


    【解决方案1】:

    问题是您正在更改应用程序的程序集名称,而不是名称。

    如果您想更改Xamarin.Forms Android 中的应用程序名称,您有两个选项

    • 转到您的 MainActivity 并更改 Label 属性:

    • 删除MainActivityLabel,并通过UI或代码在Manifest.xml中添加名称:


    在 iOS 上,您必须在 Info.plist 中更改它。

    【讨论】:

    • 我在 Manifest.xml 中只有“myappname”。我不明白为什么我在图标应用下看到“.Droid”后缀...
    • 事实上,空白表单应用程序项目模板存在这个问题。我使用 xamarin for mac
    • Visual Studio for mac
    • 请清除旧的 cmets,这样我们这里就没有太多文字了。它更适合未来的用户。我已经更新了我的答案,请阅读。
    【解决方案2】:

    其他答案效果很好。 但我正在添加更多细节。

    应用程序名称取自 AndroidManifest.xml 文件,即<application android:label=@string/app_name ,它又引用 values>strings.xml 文件。不要在这里硬编码应用程序名称。它的良好做法是将strings.xml 文件中使用的所有字符串分开。

    strings.xml

    <resources>
      <string name="app_name">App Name</string>
    </resources>
    

    Label 属性覆盖此属性并将应用程序标题、apk 名称设置为 MainActivity 中设置的标签值。

    最好从 MainActivity.cs 的汇编指令 [Activity 中删除 Label 值(因为它在调试时会覆盖此清单值)更改 strings.xml 中的值,以便其全局和一致。

    【讨论】:

      【解决方案3】:

      安卓版 在 android 文件夹 mainactivity.cs 中进行更改

      [Activity(Label = "Myappname", Icon = "@mipmap/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
      

      Fos iOS 在 info.plist 中进行以下更改

      Bundle display nameMyappname

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-23
        • 2017-02-11
        • 2021-07-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多