gpt4 book ai didi

java - FCM 主题名称无效。 Base64 生成带有无效字符的字符串

转载 作者:行者123 更新时间:2023-12-02 09:40:04 28 4
gpt4 key购买 nike

我正在创建一个为用户订阅 FCM 主题的应用。在许多情况下,该主题的名称中都有特殊字符。因此,我将此主题名称转换为 Base64 字符串,如下所示:

    byte[] data = myText.getText().toString().getBytes(StandardCharsets.UTF_8);
String base64 = Base64.encodeToString(data, Base64.DEFAULT);
String converted = base64.replace("\n","");

在许多情况下,上述代码可以完美运行。但在某些情况下,base64 函数会生成如下字符串:“UHJvcHJpw6E=”。 FCM 主题名称中不允许使用等号符号。如何解决这个问题?

最佳答案

基于documentation NO_PADDING 标志应该可以解决问题。

int NO_PADDING Encoder flag bit to omit the padding '=' characters at the end of the output (if any).

String base64 = Base64.encodeToString(data, Base64.NO_PADDING);

为了更好地理解,请检查 Base64 documantation .

关于java - FCM 主题名称无效。 Base64 生成带有无效字符的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57149837/

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