java - 如何在 finish() 方法中获取上下文?

标签 java android android-activity

我只是想在有人离开应用程序时显示积分墙,所以我放置了 finish() 方法:

@Override
public void finish() {
    super.finish();
    MobileCore.init(this.getContext(), "xxx", MobileCore.LOG_TYPE.DEBUG, MobileCore.AD_UNITS.OFFERWALL);

    MobileCore.setStickeezReadyListener(new OnReadyListener() {
        @Override
        public void onReady(MobileCore.AD_UNITS adUnit) {
            if (adUnit == MobileCore.AD_UNITS.OFERWALL) {
                MobileCore.showOferWall(getActivity());
            }
        }
    });
}

但是我有问题。首先使用此代码 this.getContext() 以及此 getActivity()

我知道我无法通过这种方式访问​​该 Activity ,但此刻我非常困惑。我知道我在这里遗漏了很小的一部分。你能推我一下吗?

最佳答案

Activity class extends Context 所以实际上 ActivityContext 的实例,在 onFinish 系统试图销毁 Activity 所以必须没有与此 Activity 相关的作业仍在工作,如果您仍然需要 Context 您可以使用 this .getApplicationContext.

关于java - 如何在 finish() 方法中获取上下文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25831683/

相关文章:

android - 在 Android 上使用 ORMLite 保存嵌套的外来对象

java - 使用操作栏发送数据 [Android]

java.lang.OutOfMemory错误: GC overhead limit exceeded JAVA

java - HibernateDaoSupport 中的 HQL

java - 在 Java 中扩展非常基本的 Node<T> 的基本链表类型队列 + 请求外行术语

java - 如何在java中的多个类中使用一个接口(interface)?

android - 从 DialogFragment 调用 Activity.method() 而不是设置监听器的更简单方法是否存在一些弱点?

java - 如何在 Swagger 中注释对象响应数组

java - 梯度错误:Execution failed for task ':app:dexDebug' .

android - 如何将标准滚动条添加到 SurfaceView?