是否可以在Android中创建推送通知?我真正想要的是每当我向我的应用程序的用户说些什么时,我想要一些警报对话框“只”,如果我有话要说“新的更新现在在市场上可用,请更新你的应用”。有人能引导我吗?
答案 0 :(得分:4)
有Android Cloud to Device Messaging framework(C2DM)。它需要Android 2.2或更高版本。如果您需要适用于以前版本的内容,Urban Airship可能会满足您的需求。我没有使用过,所以我不能说它们是否有任何好处。
修改:
重要提示:截至2012年6月26日,C2DM已正式弃用。 这意味着C2DM已停止接受新用户和配额 要求。 C2DM不会添加任何新功能。但是,应用程序使用 C2DM将继续发挥作用。鼓励现有C2DM开发人员 迁移到新版本的C2DM,称为Google Cloud Messaging for Android(GCM)。
答案 1 :(得分:2)
在Android中显示通知的标准方式是Status Bar Notifications。
如果您需要将通知从服务器推送到设备,可能需要查看Cloud to Device Messaging。
答案 2 :(得分:2)
您可以使用此help
答案 3 :(得分:1)
也许this会帮助你。
答案 4 :(得分:1)
当我创建一个具有类似要求的应用程序时,我曾经玩过这个项目(我需要从远程硬件设备接收状态更新):
http://tokudu.com/2010/how-to-implement-push-notifications-for-android/
这里有一个关于它的Stackoverflow主题:
Push Notifications in Android Platform
另一个可能的答案是谷歌自己的Android云架构,但我不知道目前的状态。
答案 5 :(得分:1)
许多用户将因应用程序在未运行时弹出推送通知而关闭。 Android市场和亚马逊市场为您处理更新通知,因此除非您使用其他分发方式,否则可能不需要这样做。
另一种较少侵入性的方法是让您的应用在实际运行时检查更新。
答案 6 :(得分:1)
我使用了推送通知功能..
我已经提到了http://developer.android.com/guide/google/gcm/gs.html链接..
这完全没问题,你肯定会学到很多东西。
你必须按照说明去做。并且您将能够执行推送通知。
答案 7 :(得分:0)
自由自在的方法:
如果您的目标用户群不是很大(小于1000)并且您想要免费服务,那么Airbop是最好和最方便的。
Airbop Website 它通过其API使用Google Cloud Messaging服务,并提供良好的性能。我已将它用于我的两个项目,并且很容易实现它。
Parse和Urbanship等服务非常出色但付费并提供整个部署堆栈而不仅仅是推送通知。
如果只有推送服务是您的目标,Airbop将正常工作。
我没有使用Pushwoosh,但也是一个很好的选择。它允许推送到1,000,000台设备。
答案 8 :(得分:0)
Firebase(FCM)是Google在Android上发送推送通知的新方式(18/05/2016)。 Getting started guide
答案 9 :(得分:0)
步骤: - 1.说明: - 从https://console.developers.google.com获取一个帐户,然后创建一个项目,此处此项目有一些我们称为senderid的唯一ID。 步骤: - 2.在从左侧菜单中选择项目之后,您将看到一些功能列表。 步骤: - 3.然后为Google Cloud Messaging for Android启用api功能。 步骤: - 4.现在创建可以从中生成的服务器密钥(应用程序密钥)。转到API&单击创建新密钥BUTTON并生成没有任何IP地址的服务器密钥(无输入),然后在applicationId下面使用该服务器密钥(API密钥),然后在凭据中进行验证。 步骤: - 5.现在按照以下代码。 步骤: - 6.传递DeviceId,它将由Android开发人员提供RegId,并将PassIt作为输入字符串传递给DeviceId。
以下是Android推送消息到GCM服务器方法
private Helpers.Response GCMAndroid(Notification notification)
{
var applicationID = " applicationID means google Api key"
var SENDER_ID = "SENDER_ID is nothing but your ProjectID (from API Console- google code)"
WebRequest tRequest;
tRequest = WebRequest.Create("https://android.googleapis.com/gcm/send");
tRequest.Method = "POST";
tRequest.ContentType = "application/x-www-form-urlencoded;charset=UTF-8";
tRequest.Headers.Add(string.Format("Authorization: key={0}", applicationID));
tRequest.Headers.Add(string.Format("Sender: id={0}", SENDER_ID));
//string postData = "data.Alert=" + alertmessage + "&data.action-loc-key=" + actionKey + " ®istration_id=" + deviceId + "&badge=" + (1).ToString() + "";
var Details = JsonConvert.SerializeObject(notification.alertmessage);
string postData = "collapse_key=score_update&time_to_live=108&delay_while_idle=1&data.message="
+ notification.alertmessage + "&data.time=" + System.DateTime.Now.ToString() + "&data.details=" + Details + "®istration_id=" + notification.deviceId + "";
try
{
Byte[] byteArray = Encoding.UTF8.GetBytes(postData);
tRequest.ContentLength = byteArray.Length;
Stream dataStream = tRequest.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
WebResponse tResponse = tRequest.GetResponse();
dataStream = tResponse.GetResponseStream();
StreamReader tReader = new StreamReader(dataStream);
String sResponseFromServer = tReader.ReadToEnd(); //Get response from GCM server.`enter code here`enter code here`
enter code here
tReader.Close();
dataStream.Close();
tResponse.Close();
Helpers.Response Response = new Helpers.Response();
Response.Message = "Success";
Response.result = 1;
return Response;
}
catch (Exception ex)
{
Helpers.Response Response = new Helpers.Response();
Response.Message = ex.ToString();
Response.result = 0;
return Response;
}
}
答案 10 :(得分:0)
不推荐使用GCM发送推送通知,使用Firebase云消息传递(FCM)
Google弃用了Google云消息传递(GCM)并推出了新的推送通知服务器,即Firebase云消息传递(FCM)。 FCM与GCM相同,FCM也是移动平台的跨平台消息传递解决方案
请查看此答案以获取更多详细信息: How to add a push notification in my own android app
答案 11 :(得分:0)
要在Android应用程序中send push notification,您需要在创建项目后在Firebase控制台中创建一个项目,然后将您重定向到项目仪表板,单击android图标并添加android项目包并保存。您需要下载google-services.json文件,该文件需要添加到您的android项目中。 您需要在项目依赖项中添加firebase库并同步您的项目。
您可以阅读有关Firebase push notification android实施的完整教程