【HMS Core】HarmonyOS鸿蒙Next集成推送服务,打包后应用名乱码
【HMS Core】HarmonyOS鸿蒙Next集成推送服务,打包后应用名乱码 【问题描述】
使用flutter进行移动端开发,导入了agconnect-services.json之后,成功集成了华为推送,但是应用打包如果应用名为中文,debug包生成的应用名会是乱码。
【问题分析】
1、经推测可能是agc插件与开发者引入的另外的sdk相冲突导致的,但即使去掉其他的sdk也会导致该问题。 2、查询代码时检查出开发者的Mainfest.xml文件中的<application>标签下的应用名属性值是直接赋值的中文字符,在一般情况下这样赋值没有问题,但大多数情况应放在strings文件中定义参数然后引用。
【解决方案】
<application>标签下的应用名属性值不直接赋值中文字符串,应用名属性值引用strings文件中定义的参数。
<application
android:label="@string/app_name">
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">中文名称</string>
</resources>
参考链接:https://developer.huawei.com/consumer/cn/forum/topic/0201802159554580366?fid=18
更多关于【HMS Core】HarmonyOS鸿蒙Next集成推送服务,打包后应用名乱码的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于【HMS Core】HarmonyOS鸿蒙Next集成推送服务,打包后应用名乱码的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在集成HMS Core推送服务时,如果打包后应用名出现乱码,可能是由于以下原因:
-
编码问题:检查项目中的资源文件(如
strings.xml
)是否使用了正确的编码格式(建议使用UTF-8)。 -
资源文件配置:确保应用名称在
strings.xml
中正确配置,且未在其他地方被覆盖或修改。 -
打包工具配置:检查打包工具(如Gradle)的配置,确保未对资源文件进行错误的编码转换。
-
HMS Core SDK版本:确保使用的HMS Core SDK是最新版本,避免已知的兼容性问题。
建议逐一排查以上问题,确保资源文件的编码和配置正确。