Unity3d:Android和iOS推送通知



我正在用Unity开发一款手机游戏,并将使用推送通知。我发现了仅适用于iOS的NotificationServices类。但是我没有找到任何服务器端的代码示例。

我要求任何提供服务器和客户端代码的好例子或解决方案(Android客户端和Android和iOS的后端)。

我知道诸如pushwoosh之类的服务。它们不适用于我,因为我的公司有自己的游戏服务器,并希望从中发送通知

我想这不是什么独特的东西,应该有人已经这样做了。

谢谢。

你是对的,确实有人这么做了:)我是新Unity资产UTNotifications的开发人员之一。它可以满足你的所有需求,甚至更多。还请注意,没有一种单一的方法可以实现推送通知与任何安卓设备协同工作——有谷歌云消息(GCM),它仅与基于Google Play的设备协同工作,还有亚马逊设备消息(ADM)用于亚马逊设备。幸运的是,UTNotifications支持这两项服务,也支持iOS版的Apple推送通知服务(APNS)。它提供了完整的源代码,因此您可以调整任何您喜欢的内容。它还包括演示服务器源代码,因此您可以使用自己的服务器发送推送通知,而无需使用任何第三方服务。

更多信息:http://forum.unity3d.com/threads/released-utnotifications-professional-cross-platform-push-notifications-and-more.333045/

以下是一些代码示例。
例如,以下是如何初始化系统并将推送通知注册id发送到服务器:

public void Start()
{
    UTNotifications.Manager notificationsManager = UTNotifications.Manager.Instance;
    notificationsManager.OnSendRegistrationId += SendRegistrationId;
    bool result = notificationsManager.Initialize(false);
    Debug.Log("UTNotifications Initialize: " + result);
}
private void SendRegistrationId(string providerName, string registrationId)
{
    StartCoroutine(_SendRegistrationId(providerName, registrationId));
}
private IEnumerator _SendRegistrationId(string providerName, string registrationId)
{
    WWWForm wwwForm = new WWWForm();
    wwwForm.AddField("provider", providerName);
    wwwForm.AddField("id", registrationId);
    WWW www = new WWW(m_webServerAddress + "/register", wwwForm);
    yield return www;
    if (www.error != null)
    {
        Debug.LogError(www.error);
    }
}

这就是你请求演示服务器向Unity的每个注册设备发送推送通知的方式:

public IEnumerator NotifyAll(string title, string text)
{
    title = WWW.EscapeURL(title);
    text = WWW.EscapeURL(text);
    WWW www = new WWW(m_webServerAddress + "/notify?title=" + title + "&text=" + text);
    yield return www;
}

您还可以处理传入通知:

UTNotifications.Manager.Instance.OnNotificationsReceived += (receivedNotifications) =>
{
    Debug.Log(receivedNotifications[0].userData["CustomMessage"]);
};

你可以用类似的语法做很多其他的事情。该资产包括SampleUI类。这将对你有很大帮助。还有API参考(http://universal-tools.github.io/UTNotifications/html/annotated.html)以及详细的手册。

相关内容

  • 没有找到相关文章

最新更新