我有一个活动(A)和一个服务(S),它由A启动,如下所示:
Intent i = new Intent();
i.putExtra("updateInterval", 10);
i.setClassName("com.blah", "com.blah.S");
startService(i);
Run Code Online (Sandbox Code Playgroud)
A在A中有这样的功能:
public void someInfoArrived(Info i){...}
Run Code Online (Sandbox Code Playgroud)
现在我想从S.内部调用A.someInfoArrived(i).Inntnt.putExtra没有我可以传递Object引用等的版本...请帮忙!
PS:另一种方式(新信息的轮询S)不是我需要的.我找到了关于如何做到这一点的足够信息.
我有这样的事情:
module MyModule
define_method(:foo){ puts "yeah!" }
end
class User
include MyModule
end
Run Code Online (Sandbox Code Playgroud)
但这不符合预期......它们没有定义.此外,我需要使用模块,因为我想区分方法和普通的用户方法.我喜欢这个:
MyModule.instance_methods
Run Code Online (Sandbox Code Playgroud)
请帮忙..我错过了什么?我也尝试过:
module MyModule
(class << self; self; end).class_eval do
define_method(:foo){ puts "yeah!" }
end
end
Run Code Online (Sandbox Code Playgroud)
这也行不通:/
澄清...我想用:
User.first.foo
Run Code Online (Sandbox Code Playgroud)
不
MyModule.foo
Run Code Online (Sandbox Code Playgroud)