2017-08-31 44 views
1

我在Unity中为Android制作游戏。我已经实施了一个通知系统。通知显示并点击它们可打开游戏。我坚持的是如何通过点击通知来知道游戏/应用程序是否启动?如何通过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。所以任何帮助将不胜感激。

在此先感谢。

回答

相关问题