如何从库中查找Activity的引用并关闭(finish())活动?

时间:2012-04-02 11:45:01

标签: android android-activity shared-libraries

场景:

显示活动。它有一个文本框和一个按钮。如果在文本框中输入特殊代码并单击按钮,则在比较文本逻辑后活动将关闭。简单!这已在活动的OnCLick()中实现。

问题:

我有一个处理所有SMS接收器功能的库。接收器远程侦听特殊的传入SMS。一旦特殊的短信到达,库函数(closeActivity)应该

  1. 完成()活动(如上所述)直接

  2. 通过以某种方式获取对活动的引用来模仿输入文本+单击按钮的操作?

  3. 我也很好。哪个更简单,更安全!

    我只需要知道如何/在哪里/在库中编写什么代码,以便它可以完成()活动!

    假设:始终显示活动,系统未自动堆叠!

2 个答案:

答案 0 :(得分:0)

可以有多个活动实例吗? 如果没有,请将其设为单例,然后使用MyActivity.getInstance()从任何位置引用它。

最好的问候。

答案 1 :(得分:0)

为什么不尝试使用意图? esp broadcast Intents ..从库中触发广播意图并将其作为ur活动/另一个注册为意向接收者的类获取。您可以轻松地在广播接收器中获取活动实例。

public static <Your activity class> activitySingleTon

并在适当的生命周期方法中设置单例。

OnCreate(){ activitySingleTon = this; }

并在像这样的广播接收器中使用

if(<your activity class>.activitySingleTon)

{ <your activity class>.activitySingleTon.finish(); }