Android 如何确保活动正在运行(AdMob Interstitual)
我已经在我的应用程序中实现了AdMob Interstitual。该方法的工作原理如下:Android 如何确保活动正在运行(AdMob Interstitual),android,android-activity,admob,interstitial,Android,Android Activity,Admob,Interstitial,我已经在我的应用程序中实现了AdMob Interstitual。该方法的工作原理如下: 我在我的活动中构建ads对象。(Ads对象引用了活动) 在我的ads对象中,我检查是否在最后三个中显示了间隙 有计时器的分钟数,如果没有显示,我会显示出来 该活动的处理程序 如果活动被停止或破坏,我也会停止我的广告定时器 大多数情况下,此场景都正常工作。但有时即使应用程序已经退出,广告也会出现一次 有没有办法从我的ads对象中检查该活动是否确实正在运行,以及它是否是屏幕上正在运行的当前活动 借助以下代码
- 我在我的活动中构建ads对象。(Ads对象引用了活动)
- 在我的ads对象中,我检查是否在最后三个中显示了间隙 有计时器的分钟数,如果没有显示,我会显示出来 该活动的处理程序
- 如果活动被停止或破坏,我也会停止我的广告定时器
有没有办法从我的ads对象中检查该活动是否确实正在运行,以及它是否是屏幕上正在运行的当前活动 借助以下代码,您可以获得android中的顶级活动:
public static boolean isThisActivityOnTop(Context context,Class<?> activityClass){
ActivityManager am = (ActivityManager) context
.getSystemService(ACTIVITY_SERVICE);
ActivityManager.RunningTaskInfo taskInfo = am.getRunningTasks(1)
.get(0);
String topActivityClass = taskInfo.baseActivity.getClassName();
return topActivityClass.equalsIgnoreCase(activityClass.getName());
}
public静态布尔值isThisActivityOnTop(上下文,类activityClass){
ActivityManager am=(ActivityManager)上下文
.getSystemService(活动和服务);
ActivityManager.RunningTaskInfo taskInfo=am.getRunningTasks(1)
.get(0);
字符串topActivityClass=taskInfo.baseActivity.getClassName();
返回topActivityClass.equalsIgnoreCase(activityClass.getName());
}
注意:代码未经测试,请尝试(调试)