Android 无法从包中获取布尔值
Android cannot get boolean value from bundle
在我的 GcmListenerService 中,我得到了这个包数据:
Bundle[{gcm.notification.e=1, gcm.notification.title=SomeApp, proceed=true, gcm.notification.body=Some text, message=Some message, collapse_key=example.com.SomeApp}]
我可以通过
收到 消息
bundle.getString("message");
但是我无法在包数据中获取 proceed 布尔值。
我用过:
bundle.getBoolean("proceed",false);
这总是给出 false,即使包数据中的值为 true。
它是如此简单,我不知道我错过了什么。
谢谢
即使 proceed
的值看起来是 boolean
,它也可能作为 String
存储在 Bundle
中,这就是为什么您无法获取它的值使用 bundle.getBoolean()
.
您应该改用 bundle.getString("proceed");
。
如果需要,您可以将 String
解析为 boolean
。
boolean proceed = Boolean.parseBoolean(bundle.getString("proceed", "false"));
在我的 GcmListenerService 中,我得到了这个包数据:
Bundle[{gcm.notification.e=1, gcm.notification.title=SomeApp, proceed=true, gcm.notification.body=Some text, message=Some message, collapse_key=example.com.SomeApp}]
我可以通过
收到 消息bundle.getString("message");
但是我无法在包数据中获取 proceed 布尔值。 我用过:
bundle.getBoolean("proceed",false);
这总是给出 false,即使包数据中的值为 true。 它是如此简单,我不知道我错过了什么。 谢谢
即使 proceed
的值看起来是 boolean
,它也可能作为 String
存储在 Bundle
中,这就是为什么您无法获取它的值使用 bundle.getBoolean()
.
您应该改用 bundle.getString("proceed");
。
如果需要,您可以将 String
解析为 boolean
。
boolean proceed = Boolean.parseBoolean(bundle.getString("proceed", "false"));