我已经在我的应用程序中实现了GCM,并且我通过两个Android设备进行了测试,并且它可以工作。我正在我的应用中实现一个简单的聊天应用程序。我的应用实际上是在销售或购买产品。
当用户想要出价时,他键入他的消息并将其发送到服务器并激活gcm并且卖家接收潜在客户的消息。当卖家点击收到的推送通知消息时,应该将他带到聊天活动。通过这条简单的短信,我如何知道哪个相应的产品?
答案 0 :(得分:4)
我在评论中提到过,如果您通过服务器发送,则可以执行此操作:
$registatoin_ids = array($regId);
$message = array("message" => $message, "productId" => $uniqueProductId);
$result = $gcm->send_notification($registatoin_ids, $message);
echo $result;
然后在你的意图服务中:
Bundle extras = intent.getExtras();
GoogleCloudMessaging gcm = GoogleCloudMessaging.getInstance(this);
String messageType = gcm.getMessageType(intent);
String message = extras.getString("message");
String productId = extras.getString("productId");
当你去构建通知时:
Intent productWindow = new Intent(this, ProductActivity.class);
productWindow.putExtra("productId", productId);
PendingIntent contentIntent = PendingIntent.getActivity(this,0,productWindow , 0);
答案 1 :(得分:1)
您可以以特定方式格式化GCM消息,因此消息开销将以您知道的格式发送,然后您可以解析它并采取任何所需的操作。例如,您可以通过以下方式发送消息:
ProdID:123456,Action:Bid,...
您可以将逗号(或任何其他符号)作为分隔符,获取其中的部分并随意执行任何操作。