情况:
我有正在读取通知文本的代码
String notificationText = sbn.getNotification().extras.getString("android.text");
,当读取带有特殊字符的通知时,它将导致以下错误:
Key android.text expected String but value was a android.text.SpannableString.
The default value <null> was returned.
java.lang.ClassCastException: android.text.SpannableString cannot be cast to java.lang.String
引起此错误的特定文本是来自com.whatsapp的通知,其内容为:“ 粗体常规文本”
请注意,某些字符以粗体显示。 (如果没有加粗,则不会引发异常)。
问题:
有没有办法让我以字符串形式获取此文本?
我已经尝试失败了:
- 将其投射到字符串中。
- 正在寻找不同于getString的其他方法来获取文本 来自临时演员
- 在字符串末尾添加“”
- 检查函数是否使用以下命令返回SpannableString 'instanceof',然后将其转换为SpannableString