【问题标题】:android context & launch modeandroid上下文和启动模式
【发布时间】:2015-03-29 04:55:11
【问题描述】:

我有一个StartActivity,它显示全屏图像并在大约 3 秒后导航到其他活动。

在这个活动中,我做了一些与Context 相关的初始化工作。例如AccountManager.init(context),DatabaseHelper.init(context)

现在的问题:当我从StartActivity 跳转到MainActivity 时,如果我完成StartActivity,将导致AccountManagerDatabaseHelper 在到达其上下文时抛出NullPointerException。如果我不这样做完成StartActivity,按MainActivity 中的返回键将跳回到StartActivity 并重新开始。

对此有什么建议吗?如果我可以通过设置启动模式来控制这些活动之间的导航(而不是获取空指针异常,我宁愿保留这个StartActivity)?

【问题讨论】:

  • 使用应用程序上下文。

标签: android android-context


【解决方案1】:

使用 ApplicationContext 进行跨活动操作,例如 Sqlite 数据源,启动 Servies ,AsyncTasks ,.. 并为活动 UI 使用活动上下文

【讨论】:

    【解决方案2】:

    改用应用程序上下文。您可以通过调用getApplicationContext() 在任何Activity 中获取它。

    【讨论】:

    • 但是如果我在那些应用程序上下文初始化的类中显示一个警告对话框,仍然会有问题。也许最好的主意是改变我的代码结构?在我的应用程序中使用Context 的大量后台任务。
    • 您可能想改用Notifications
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多