gpt4 book ai didi

android - 有android :label changed in Android Nougat (7)?的解释

转载 作者:太空宇宙 更新时间:2023-11-03 11:02:21 25 4
gpt4 key购买 nike

我已经添加了 applicationIdSuffix在 gradle 中的每个构建类型中,能够同时在同一设备上安装每个构建类型。对于每种构建类型,我也有不同的字符串资源,这意味着我可以拥有一个字符串资源 "app_name"对于每种构建类型(例如我的应用程序、我的应用程序(测试版)、我的应用程序(调试))都是唯一的。我用 android:label="app_name"<application> AndroidManifest.xml 中的元素, android:label="app_title"<activity>android:label="app_name"<intent-filter>元素,这给了我一个完美的设置:在启动器中,每个构建类型都有其唯一的启动器名称,但工具栏中的标题是相同的(app_title 没有唯一的资源)。

但是在 Android Nougat 手机(和模拟器)上运行具有多种构建类型的相同应用程序会为 med 提供相同的启动器名称。我可以同时安装,但应用程序启动器的标题是相同的...知道如何在牛轧糖设备上解决这个问题吗?它适用于 Marshmallow 及以下版本。

更新 1:无法正常工作。让我分享一些代码:

<application
...
android:label="@string/launcher_name">
<a... android:name=".MainActivity"
android:label="@string/app_name">
<i...
android:label="@string/launcher_name">
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</i...>
</a...>
</app...>

/debug/res/values/strings.xml 包含 launcher_name="My app -D"但是在 emu 的 AS 中运行时,启动器标签是我的应用程序。

更新 2:在 Android.com 上提交了错误。 http://code.google.com/p/android/issues/detail?id=223706

BR,J

最佳答案

好的,我刚刚自己测试过,无法重现问题。我的建议是检查资源字符串的放置方式。如果您希望每个构建类型的应用程序名称不同,请确保将该资源放置在每个不同的构建中,而不是在 main/res/ 中。文件夹。

我创建了一个 labels.xml,其中添加了 <string name="app_name">My App (X)</string>其中 X 是 release , debugbeta取决于构建类型。这适用于我能够测试的所有 Android 版本。

只需确保主文件夹中也没有字符串资源。虽然,由于重复资源,这应该会导致构建错误。

关于android - 有android :label changed in Android Nougat (7)?的解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39631757/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com