我的Wear OS应用程序中有一个带有动作的通知,并且我一直在搜索触发通知动作时如何发送发布请求。有办法吗?
我知道Android Wear 2.0具有互联网功能,并且我已经看到了打开带有通知的浏览器的示例,但是没有发送HTTP请求的示例。
NotificationManager notificationManager = (NotificationManager) context.GetSystemService(Context.NotificationService);
Intent respondIntent = new Intent(context, typeof(AlarmReceiver));
PendingIntent respontPendingIntent = PendingIntent.GetActivity(context, 0, respondIntent, PendingIntentFlags.UpdateCurrent);
Notification.Action action = new Notification.Action(Resource.Drawable.generic_confirmation,"hello", respontPendingIntent);
var noti = new Notification.Builder(context)
.SetContentTitle("Title").SetContentText("content text")
.SetSmallIcon(Resource.Drawable.pills)
.AddAction(action);
notificationManager.Notify(notificationId, noti.Build());
到目前为止,这就是我所拥有的(目前,该操作什么也没做)。
答案 0 :(得分:0)
有许多方式可以完成此操作,但是一个共同的主题是PendingIntent
只是您应用中实际进行工作的其他组件的一个钩子。您不会将HTTP请求放入 Intent
中,而是将其放入Intent
调用的应用程序组件中。
在您的情况下,您可能想启动类似AlarmReceiver
或Activity
之类的内容,而不是从“ PendingIntent”中打开IntentService
BroadcastReceiver
并将您的网络操作放在那里。如果还需要打开AlarmReceiver
,也可以在BroadcastReceiver
中打开。
Which component to use取决于您的应用程序正在做什么,这超出了StackOverflow答案的范围。但这确实是非常基本的Android应用程序架构。