在我的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");
但我无法在捆绑数据中获得继续布尔值。 我用过:
bundle.getBoolean("proceed",false);
即使数据包数据中的值为 true ,也总是给出错误。 这很简单,我不知道自己错过了什么。 感谢。
答案 0 :(得分:3)
即使proceed
的值看起来像boolean
,它也可能存储在Bundle
String
中,这就是为什么你无法得到bundle.getBoolean()
的价值它使用bundle.getString("proceed");
。
您应该使用String
代替。
如果需要,您可以将boolean
解析为boolean proceed = Boolean.parseBoolean(bundle.getString("proceed", "false"));
。
procedure TForm1.FormCreate(Sender: TObject);
begin
TIPropertyGrid1.TIObject := self;
end;