我目前正在开发在服务器上运行WebLogic的Java Web服务。这些Web服务由移动应用程序调用,该应用程序由另一个团队开发。我需要向移动应用程序发送推送通知。我目前的开发并不需要我进行任何移动开发,因为我只进行服务器端开发。我也没有移动开发方面的经验。如何开发推送通知到两个Android设备?
感谢。
答案 0 :(得分:1)
GCM申请的先决条件
如果您对GCM有明确的概念,请访问here
您的托管服务器无需任何Ip / HostName即可发送消息,因此此消息将通过com.google.android.gcm.server.Sender
此类进行审议。此类将在内部与GCM Server进行通信。
您正在使用以下方式配置此类:
Sender sender = new Sender(API_KEY);
您可以使用GCM服务器发送消息。此代码适用于向设备发送推送通知。这可以从java服务器向任何Android / IOS应用程序发送通知。
Here是此GCM服务器库的jar。
这里,这个构造函数获取MESSAGE和deviceGcmId,其中必须发送Push Message。
public PushNotification(String id, String message) {
this.receiverID = id;
this.gcmMessage = message;
}
以下是示例代码:
import com.google.android.gcm.server.Message;
import com.google.android.gcm.server.MulticastResult;
import com.google.android.gcm.server.Result;
import com.google.android.gcm.server.Sender;
public class PushNotification {
private String receiverID;
private String gcmMessage;
String MESSAGE_KEY = "YOUR_MESSAGE_KEY";
String API_KEY = "YOUR_API_KEY";
Result result;
Sender sender;
Message message;
MulticastResult multicastResult;
public PushNotification() {
}
public PushNotification(String id, String message) {
this.receiverID = id;
this.gcmMessage = message;
}
public boolean sendSinglePushNotification() {
try {
sender = new Sender(API_KEY);
message = new Message.Builder().timeToLive(30).addData(MESSAGE_KEY, gcmMessage).build();
result = sender.send(message, receiverID, 1);
if (result != null && result.getErrorCodeName() == null) {
return true;
}
} catch (Exception ex) {
System.err.println(ex.getMessage());
}
return false;
}
}
您可以使用以下方式调用此类:
PushNotification notification=new PushNotification("DEVICE_GCM_ID","MESSAGE HAVE To SEND");
notification.sendSinglePushNotification();
就是这样:))
答案 1 :(得分:0)
如果您想在多个平台上使用推送通知 Parse.com但问题是Parse.com将于2017年1月28日停止服务。您可以使用urban airship等替代方案。我个人建议使用城市飞艇。
答案 2 :(得分:0)
您可以尝试来自泽西岛的Sever Sent Event(SSE),看看是否符合您的要求。
答案 3 :(得分:0)
您可以使用Google Cloud Messaging执行此操作,它现在支持Android和iOS。它是免费的,并且对通知的数量没有限制。
如何运作?
简单地说,您需要从手机生成注册ID并将其发送到您的服务器,然后当您需要发送通知时,只需将注册ID和消息发送给GCM。
请查看Google关于GCM的链接:
https://developers.google.com/cloud-messaging/
此链接只是快速了解服务器代码(用PHP编写):
您可以在第一个链接中注意到一些更改。
最后,请查看此链接,逐步说明客户端代码:
http://www.androidwarriors.com/2015/10/push-notification-using-gcm-in-android.html
我希望这会对你有所帮助,不要犹豫,提出任何问题。
答案 4 :(得分:0)
<div class="col-md-4">
<?php if($product->is_on_sale())
{
$price = $product->get_sale_price();
echo 'sale';
}else{
$price = $product->get_price();
echo 'Normal';
}
echo 'The Price is:'. $price;
?>
<script async src="widget-0.1.0.js?type=calculator&min=50&max=400&amount=".<?php echo $price;?>" type="application/javascript"></script>