0

我有一个类控制器。这个类是一个公共接口,包含我可以从我的 Activity 执行的所有方法。以下是我的控制器类:

    public class Controller {
    private Activity activity;
    private TextView parentView;

    public Controller(Activity activity,Textview view) {
            this.activity = activity;
            this.parentView=view;

}

public void initialize(String app, String rel) {
    this.app = app;
    this.rel = rel;
    Controller.controller = new LibraryController(activity,
                this);
    Controller.controller.initialize(app, rel);
}

public void libraryInitialised() {

parentView.setText("in library initiliase");

}

}

在库控制器中有一个 Asynctask 解析 Web 服务和 Asynctask 的后执行执行控制器类的库初始化方法。

我从我的android项目中调用控制器类:

  Textview view=(TextView)FindViewbyId(someid);

  Controller controller=new Controller(viewCallingActivity.this,view);

  controller.initialize("appname","3.4.0");

现在的问题是,如果我在我的设备上从 eclipse 运行这个小应用程序,它工作得很好,并在设备中给我一条消息“在库初始化中”但是当我从启动器图标打开它时,它没有给我消息“在库中”初始化”

我不知道具体是什么问题?

任何帮助都将是非常可观的。

4

1 回答 1

1

尝试通过设备上的应用程序管理器(强制停止)关闭已安装的应用程序,然后再次启动它。您的方法可能不会被调用,因为当您Activity通过“后退按钮”关闭时,应用程序的 Dalvik 进程仍在后台徘徊,以供 Android 重用。如果这是一个原因,我建议您阅读此问题并回答
如何杀死我自己的活动 - 艰难的方式

于 2013-03-22T10:35:25.963 回答