[英]Access Notifications from other apps on Android
我目前正在使用 Unity 的移動通知插件並開始想知道是否有可能在 Anroid 手機上獲取新傳入通知的信息。
例如:當我的 Unity 應用程序正在運行時,如果出現來自另一個應用程序的新通知,是否可以獲取它的文本、描述等? 當我嘗試時,我在這里使用了這段代碼:
void Start()
{
AndroidNotificationCenter.OnNotificationReceived += receivedNotificationHandler;
}
AndroidNotificationCenter.NotificationReceivedCallback receivedNotificationHandler =
delegate (AndroidNotificationIntentData data)
{
TMP_Text textBox = GameObject.Find("NotificationsInfo").GetComponent<TMP_Text>();
StringBuilder messageBuilder = new StringBuilder()
.AppendLine("Notification received : " + data.Id)
.AppendLine(" .Title: " + data.Notification.Title)
.AppendLine(" .Body: " + data.Notification.Text)
.Append(" .Channel: " + data.Channel);
textBox.text = messageBuilder.ToString();
};
有了它,我只能獲取應用程序本身發送的通知信息,而不是其他應用程序發送的信息。 有沒有辦法從其他應用程序獲取信息?
你有兩種情況:
他們之間的更多區別在這里。
如果您的情況是第二種情況(我認為是),我認為不,出於安全原因,您不能攔截來自另一個應用程序的推送通知。
如果是第一個,是的,您可以創建一個調用本機 Android NotificationListenerService的插件,然后從那里管理結果,但請注意您需要征得用戶許可。
我認為 Unity AndroidNotificationCenter
僅適用於調用它的統一應用程序。
我使用了 playstore 中提供的通知日志應用程序。 這些應用程序正在獲取通知文本、描述和時間等並將它們保存在里面。 如果可能的話,您可以在它的幫助下構建類似的東西。
我發現的通知記錄器的回購之一: https://github.com/interactionlab/android-notification-log
如果可能,您可以分析它並解決它以提出要求。
我不知道這個幫助與否,只是想把它放在身邊。 抱歉,如果沒有
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.