如何在android中向同一应用程序的注册用户发送通知
Posted
技术标签:
【中文标题】如何在android中向同一应用程序的注册用户发送通知【英文标题】:How to send notification to registered users of same application in android 【发布时间】:2014-04-10 05:05:03 【问题描述】:每当我以管理员身份添加某些内容时,我想通知已下载应用程序的用户。
每个下载该应用程序的用户都会注册。我有关于用户的所有信息。
我想在添加到我的应用程序时通知(通常我添加的数据将存储在数据库中)。
请告诉我如何做到这一点。
【问题讨论】:
【参考方案1】:您应该使用GCM 进行推送通知。 您可以关注this tutorial 获取 GCM 推送通知。
【讨论】:
我以前看过这个 tut,它显示了如何从 Web 控制台推送,但我希望它在从应用程序更新时完成。 好的。所以当你在你的应用中更新一些东西时会通知网络还是什么? 它必须通知注册用户我的应用程序。 是的,同意这一点。但是,如果您更新应用程序中的某些内容,则它应该通知网络,网络将通过推送通知通知所有注册用户。是这样的吗? 我需要一些服务器端代码,如果你知道任何请在此处发布链接【参考方案2】:如果您想向安装您的应用程序的用户发送消息,您必须有一个服务器。您有以下选择,
1.谷歌云消息
您可以通过 GCM 向您的用户发送推送通知,例如“有新更新可用”之类的。
您可以使用 Google Appengine 作为服务器,而且它是免费的。有一个GCM集成的开源项目http://gcm4public.appspot.com/
2。解析 SDK
您可以将 Parse SDK 用于推送通知和在线数据。如果您使用 Parse SDK,则不需要进行任何服务器端编码。您可以使用 Parse 进行社交媒体登录、注册、在线分数、数据、推送通知等。
Parse SDK
3.如果您拥有用于通知更新的服务器,请参考此内容,
http://www.androidsnippets.com/check-for-updates-once-a-day
4.如果您可以将更新后的更改放在文本文件中并像在线存储一样上传到 Dropbox 中,请参考此内容,
Android-WVersionManager
5.如果您只是想检查 google play 是否有新版本,请使用以下功能(注意:- 不要忘记添加 Jsoup 库)
private boolean isNewVersionReleasedONGooglePlay()
try
String currentVersion = applicationContext.getPackageManager().getPackageInfo(package_name, 0).versionName;
String newVersion = currentVersion;
newVersion = Jsoup.connect("https://play.google.com/store/apps/details?id=" + package_name + "&hl=en")
.timeout(30000)
.userAgent("Mozilla/5.0 (Windows; U; WindowsNT 5.1; en-US; rv1.8.1.6) Gecko/20070725 Firefox/2.0.0.6")
.referrer("http://www.google.com")
.get()
.select("div[itemprop=softwareVersion]")
.first()
.ownText();
return (value(currentVersion) < value(newVersion)) ? true : false;
catch (Exception e)
e.printStackTrace();
return false;
6.欲了解更多信息,请查看 Apptentive 和 Turkcell SDK
Apptentive SDK
TurkcellUpdater
【讨论】:
我看过很多教程,它们展示了如何通过服务器推送通知,但我想从我的 android 应用程序推送,每当我添加新数据时,它必须像添加新事件一样通知。以上是关于如何在android中向同一应用程序的注册用户发送通知的主要内容,如果未能解决你的问题,请参考以下文章