您好我正在使用产品口味,以获得我的应用程序的付费和免费版本。我设法做了所需的一切。然而,laucher中的应用程序名称对于这两种口味看起来都是相同的。这就是我这样做的方式。
productFlavors {
free {
applicationId "com.my.app"
versionCode 11
versionName "1.11"
resValue "string", "app_name", "App free"
}
pro {
applicationId "com.my.app.pro"
versionCode 1
versionName "1.0"
resValue "string", "app_name", "App pro"
}
}
然后在我的清单文件中,我有以下行
android:label="@string/app_name" >
之前我的字符串资源文件中有一个字符串app_name,其值为“App free”。我从文件中删除了该字符串,而是将字符串添加到产品flavor块中,如上所述。
问题是,在付费和免费版本中,启动器中的应用程序名称显示为“App free”,即使它应该是专业版中的“App pro”。
该名称显示在设置或安装时的应用列表中。只有这个名称位于启动器中的图标下方才会发生变化。
我尝试重新启动手机但是徒劳无功。有人可以请帮助。我正在使用Nexus 5 Android 6.谢谢!!
答案 0 :(得分:1)
您可以尝试在终端中运行以下命令:
adb shell am broadcast -a "android.intent.action.PACKAGE_CHANGED" -d "package:com.your.package"
用您的应用程序包名替换com.your.package
。如果它不起作用,您可以尝试按照here in the documentation提及的更多具体细节添加。
如果此技巧有效,您可以在应用程序的风格发生变化时发送相同的广播,以便启动器应用程序可以知道何时需要刷新您的应用程序详细信息。