2011-08-07 38 views
1

我是相当新的Android和我的工作是注册到广播接收器的应用程序。每当事件触发时,我都需要从用户那里请求一些输入,并根据他的回答采取一些行动。异步请求用户执行操作的最佳方法?

从我一直在读什么,通常的方法是使用一个活动作为一个对话框,所以每当一个事件发生的对话框将显示像弹出(甚至当我的应用程序未激活)。这看起来很好,但我仍然不太确信,因为我觉得它有点太“侵入”。

我想用一个自定义通知,通过RemoteViews的手段。从我读过的这个看起来好,虽然我还没有看到如何在这样的通知中包含按钮。我尝试在自定义布局上添加一个按钮并将其传递给远程视图。即使按钮是在扩展视图中绘制的,只要点击它,整个通知就会被点击。我想知道是否有可能通过两个按钮创建通知并作出相应的反应?

否则,任何更好的选择?

在此先感谢!

回答

1

如果你希望它是不引人注目的,你可以创建一个显示或要求用户输入时变动的通知图标(在最上面巴)BackgroundService。根据用户的喜好,您也可以打开短振动或声音信号。然后,用户只需简单地拖动通知栏并单击应用程序图标,即可显示任何类型的活动。另外,如果你的应用程序不是最顶级的应用程序AFAIK你必须创建一个BackgroundService,因为它是唯一的方式来阻止Android在你的应用程序不活动时杀死你的应用程序(任何不是最顶层的应用程序是一个候选人资源不足时暂停或终止,AFAIK)。

+0

谢谢您的回答鲍里斯。是的,我打算从服务中这样做。没有提到它,因为我不想过分复杂的问题,但感谢提醒。从你所说的话,不可能从通知中获得这个权利,这正是我的目标。通知+活动听起来不错,但不是我目前正在寻找的。正在寻找更多的“单击”动作,所以无论是通知还是对话框都会更适合这个.. – Dan

+0

或者您可以创建一个显示信息并接受点击的主屏幕小部件。 –