【问题标题】:How to know if app/game was launched via notification on Android?如何知道应用程序/游戏是否通过 Android 上的通知启动?
【发布时间】:2017-08-31 18:22:07
【问题描述】:

我正在使用 Unity for Android 制作游戏。我已经实施了一个通知系统。通知显示并单击它们打开游戏。我坚持的事情是如何通过点击通知知道游戏/应用程序是否启动?

这是我正在使用的通知插件的java代码https://github.com/GoShikhar/unity-android-notifications/blob/master/PluginSrc/app/src/main/java/net/agasper/unitynotification/UnityNotificationManager.java

这是我的清单https://github.com/GoShikhar/unity-android-notifications/blob/master/UnityProject/Assets/Plugins/Android/AndroidManifest.xml

在我的统一开始场景中,我使用它来检查意图消息。

void Start(){
 AndroidJavaClass unityPlayerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
 var activityObject = unityPlayerClass.GetStatic<AndroidJavaObject>("currentActivity");
 AndroidJavaObject intent = activityObject.Call<AndroidJavaObject>("getIntent");
 int NotificationID = intent.Call<int>("getIntExtra", "id", -1);
 print("NOTIFDICATION ID " + NotificationID);
 bool hasExtra = intent.Call<bool>("hasExtra", "arguments");
 string arguments = null;
 if (hasExtra)
 {
    AndroidJavaObject extras = intent.Call<AndroidJavaObject>("getExtras");
    arguments = extras.Call<string>("getString", "title");
    print("title : " + arguments);
    arguments = extras.Call<string>("getString", "message");
    print("message: " + arguments);
 }

 if (arguments != null)
 {
        print("App opened via notification");
 }
}

这不起作用。正在打印默认通知 ID,即 -1。标题和消息也为空。即使通知具有标题和消息参数。

我已经看到了很多 Android Studio 的示例,但没有看到 Unity 的示例。因此,我们将不胜感激。

提前致谢。

【问题讨论】:

    标签: java c# android unity3d push-notification


    【解决方案1】:

    你的意思是深度链接?也许这个 Github 项目会有所帮助:https://github.com/TROPHiT/UnityDeeplinks

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-11
      相关资源
      最近更新 更多