发送从服务非序列化的数据到活动
问题描述:
Notify activity from service发送从服务非序列化的数据到活动
我想知道是否有可能做什么在上述职位的选择的答案说,当你的活动和服务是分开包装。基本上我有一个非序列化的对象(可以说是一个创建的视图),我想从我的服务中将它发送给我的活动。使用自定义绑定器会很容易,但正如我发现的,当您的服务和活动位于不同的包中时,您无法使用自定义绑定器。
我一直在琢磨这几个星期,它真的把我的项目,我正在工作块。
对于那些会问,我试图做一个框架,允许从其他包“插件”。但我不确定如何在所述服务和活动之间来回发送不可序列化的日期。
答
这取决于对象的复杂性,如果您想要序列化的对象是来自Android SDK的对象,可以使用RelativeLayout
或Cursor
我不会看到发生这种情况,因为这些对象包含引用另一个对象,您无权修改或使它们实现接口Serializable
。
如果您的对象是您实现的类,并且该类中的所有引用也都是针对您实现的另一个类(或Serializable
/Parceable
对象),那么确定可以。这样做的一种方式是,使它们实现Serializable
或使您自己的Parceable
大量工具以快速方式达到此目的,如this或this之一。
如果没有人回答这个问题,那么告诉我你想从服务中发送什么。
编辑
你尝试做一个类实现两个Serializable
和OnClickListener
,并通过意图送呢?
听起来像你需要某种形式的命令模式。
这个想法是一个RelativeLayout是的,虽然它不是必需的。我更注意到我可以传递所需的信息,并让活动创建相关布局并输入所需的信息。我不能做的是处理触摸。我的活动不知道如何处理视图,因为我没有附加到视图的onClickListener。因此,我试图从服务发送一个OnClickListener对象到活动,但无济于事。 –
我编辑了我的答案,但我建议你采取第二种方法,不要依赖于'OnClickListener'而是尝试制作自己的指挥官对象,通过意图的包发送它,并在应用程序中实例化'OnClickListener'你用布局 – 4gus71n
这是一个有趣的想法。所以让我的框架有一些静态的“Command”类,并让它根据点击和服务传回命令,然后做任何它需要做的事情? –