有2个活动A和屏幕 在一个活动中,我做了处理程序,并希望将其传递给屏幕活动
Handler error_handler = new Handler() {
public void handleMessage(Message msg) {
}};
Intent loginButton_intent = new Intent(A.this, Screen.class);
loginButton_intent.putExtra("URL", URL);
loginButton_intent.putExtra("IP_Addres", dvr_login_data.IP_Addres);
loginButton_intent.("HAND", error_handler); <- but this code is error
我怎么能通过处理程序? 请耐心等待
答案 0 :(得分:5)
还在寻找答案吗? 我遇到了同样的问题并通过谷歌发现了这个问题,所以其他人也可能会出现这个问题。
无论如何,我找到了解决在Android文档中使用服务和活动之间的处理程序的问题。只需在此处查看Remote Messenger服务示例:Remote Messenger Service Sample
基本上他们使用messenger作为服务中本地处理程序的客户端接口。
此致 迈克尔
答案 1 :(得分:3)
嗯,为了保持简短,你不能...... Handler
实现neithor Serializable
或Parcelable
所以它不能作为extra
...使用Intents传输的对象必须遵循这些协议的含义。
投机
我想,有一个替代方案可能会让Service
成为一个中间人。但这需要一些测试。
答案 2 :(得分:2)
您无法直接通过Activity的附加功能传递Handler,但您可以传入Messenger(处理程序)。