当应用程序进入后台时如何停止运行?

2024-04-06

我正在尝试建立一个可运行的程序,它可以每 5 秒间隔加载一次广告(当然 5 秒太快了,这只是为了测试目的)

这是我的代码:

package com.admobsdk_dfp_handler;

import com.google.ads.*;
import com.google.ads.doubleclick.*;

import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.view.Menu;
import android.widget.RelativeLayout;

public class AdMobSDK_DFP_Handler extends Activity {
    private DfpAdView adView;
    private Handler handler = new Handler();
    private Runnable runnable = new Runnable() {

        public void run() {
        adView.loadAd(new AdRequest());
        handler.postDelayed(this, 5000);
    }
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_ad_mob_sdk__dfp__handler);

        adView = new DfpAdView(
                this,
                AdSize.BANNER,
                AD_UNIT_ID);

        RelativeLayout layout = (RelativeLayout) findViewById(R.id.mainLayout);

        layout.addView(adView);

        adView.loadAd(new AdRequest());

        handler.postDelayed(runnable, 5000);


    };

    @Override
    protected void onDestroy() {
        handler.removeCallbacks(runnable);
        super.onDestroy();
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_ad_mob_sdk__dfp__handler,
                menu);
        return true;
    }

}

如果我按主页按钮将应用程序隐藏到后台,则可运行程序会以 5 秒的间隔不断加载广告。

当应用程序隐藏到后台时,有什么方法可以停止运行吗?非常感谢。


只需使用onPause()

当活动进入后台但尚未被终止时,作为活动生命周期的一部分调用

@Override
protected void onPause() {
     handler.removeCallbacks(runnable);
     super.onPause();
}

Optional

如果您想恢复该可运行状态。只需覆盖onResume()打回来

@Override
protected void onResume()
{
      handler.postDelayed(runnable, 5000);
      super.onResume();
}

也删除handler.postDelayed(runnable, 5000); in onCreate()

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当应用程序进入后台时如何停止运行? 的相关文章

  • 是否可以使用最新的 APP_PLATFORM,同时仍保持向后兼容性?

    这是我的 Application mk APP ABI armeabi v7a APP PLATFORM android 16 APP OPTIM release APP STL gnustl static APP CPPFLAGS std
  • 如何检测和管理来电(Android)?

    我想创建一个应用程序 可以检测来电并在一定数量的蜂鸣声 响铃 后启动我的自定义活动 我的意思是在 2 或 3 或 5 声蜂鸣声 响铃 后我的activity被触发 我该怎么做 Thanks 我认为您无法计算自来电开始以来电话响了多少次 无法
  • Android中如何使用洪水填充算法?

    我是Android编程新手 最近尝试编写一个简单的应用程序 仅供练习 在这个中 我想在用户点击时为图像着色 但我不知道如何开始 我读过不同的主题 其中提到使用 洪水填充 算法 我在网上找到了它 但我不知道如何将它放入我的简单应用程序中 我找
  • 按回键隐藏软键盘

    我有一个EditText in an Activity我希望当我打开它时它处于活动状态并且软键盘处于打开状态Activity 这是我的xml for EditText
  • 如何在出现“无法解析放置符号”错误时向哈希图添加键和值

    我正在与安卓工作室 https en wikipedia org wiki Android Studio1 4 1 我刚刚创建了一个 Hashmap 并正在遵循有关如何填充和操作它的教程 Java 语言 但是 我收到 无法解析符号放置 错误
  • 按钮未显示在屏幕上

    我创建了一个应用程序 其中显示带有图像和文本的列表视图 我在页面末尾添加按钮 但这没有显示在屏幕上 我是 Android 新手 我该如何解决这个问题 这是我的 UI XML 代码
  • 如何使用闹钟音量和 setAudioAttributes 来播放铃声?

    所以我正在尝试了解音频属性 这是我到目前为止所拥有的 alarm getSound will return a proper URI to pick a ringtone Ringtone tone RingtoneManager getR
  • 在 WebView 中完成 AdBlock

    我即将在我的 Android 应用程序中推出 WebView AdBlocking 我想知道这是否会有效地阻止广告 或者在 Webview 本身内是否还有更多工作要做 我尚未修改 基本上我有一个存储在 Android 资产中的主机文件 其中
  • Android - 当不在栏顶部时推送通知空白

    我在使用 Android 推送通知时遇到一个小问题 如果有 3 个通知 并且只有其中一个显示标题和消息 位于酒吧顶部的那个 如果有人知道可能是什么问题 请告诉我 请参阅此链接上的图像 这就是我接收通知的方式http postimg org
  • 使用 Android 播放任意音调

    有没有办法让Android发出任意频率的声音 意思是 我不想预先录制声音文件 我环顾四周 音调发生器 http developer android com reference android media ToneGenerator html
  • android 确定设备是否采用从右到左的语言/布局

    有没有办法确定设备是否使用从右到左的语言 例如阿拉伯语 而不是从左到右的语言 英语 与较旧的 API 级别 低至 10 兼容的东西是必要的 SOLUTION 我最终在接受的答案中使用了 xml 方法 接下来 我还添加了此处指示的代码 以应对
  • 从多个选项卡中的编辑文本字段获取文本

    我正在尝试创建一个使用选项卡作为输入表单的 Android 应用程序 基本上 我希望对其进行设置 以便用户可以在一个选项卡上输入一些信息 然后提交该信息 或者转到另一个选项卡并输入更多信息 然后从两个选项卡提交信息 我正在使用操作栏和片段来
  • window.onbeforeunload 在 Android Chrome 上不会触发 [alt.解决方案?]

    我开发了一个简单的聊天应用程序 我正在使用 window onbeforeunload当有人关闭选项卡 浏览器时 基本上是当用户离开房间时 通知其他用户 这是我的代码 scope onExit function scope chatstat
  • Google 移动广告和 Kindle Fire

    我最近用 Google 移动广告替换了 AdMob 库 对此我有一个疑问 广告会出现在 Amazon Kindle Fire 设备上吗 我问这个是因为我知道 Google 移动广告依赖于 Google Play 服务 所以我有点困惑 Goo
  • 如何从android获取应用程序安装时间

    我尝试了一些方法 但没有成功 请帮助我 PackageManager pm context getPackageManager ApplicationInfo appInfo pm getApplicationInfo app packag
  • Integer.parseInt("0x1F60A") 以 NumberformatException 结束

    我尝试从数据库中获取长字符串内的表情符号代码 格式如下 0x1F60A 所以我可以访问代码 但它将是String 起初 我尝试通过执行以下操作来转换变量tv setText beforeEmo getEmijoByUnicode int e
  • android:layout_alignParentBottom 在没有显式布局高度作为 ListView 中的行的情况下使用时会被忽略

    当我使用RelativeLayout与任一fill parent or wrap content作为高度和一个指定的元素 android layout alignParentBottom true 它被忽略并在顶部对齐 设置高度Relati
  • 具有矢量可绘制的 ImageView 的 Resources$NotFoundException

    我遇到了崩溃 Resources NotFoundException用于在活动创建时绘制的矢量 21 日前崩溃 安卓工作室2 1 支持库24 0 0 Gradle插件2 1 0 目标SDK 23 最小SDK 15 buildTools版本
  • Android ADT Eclipse 插件,parseSDKContent 失败

    我刚刚设置了我的第一个 Android 开发环境 其中包括 日食3 5 Mac OS X 10 5 适用于 x86 mac 的 Android SDK ADT Eclipse 插件 0 9 6 我已将 set PATH 设置为我的 SDK
  • 异步更新后更新Android Listview

    我正在将 HTTP 调用从同步调用转换为异步调用 由于连接在后台运行 因此当我最初设置列表适配器时 数据不存在 如何在 HTTP 调用后更新列表适配器 我尝试了一些方法 例如在数据发送回之前不设置适配器并再次设置适配器 但没有任何效果 这是

随机推荐

  • 在编写控制台应用程序时,有没有办法创建第二个控制台以在 .NET 中输出?

    在编写控制台应用程序时 有没有办法创建第二个控制台以在 NET 中输出 好吧 您可以启动一个新的 cmd exe 进程并使用 stdio 和 stdout 发送和接收数据 ProcessStartInfo psi new ProcessSt
  • 请在合并之前提交您的更改或隐藏它们

    我想升级 但我需要提交 但是当我执行 git commit 时 我得到 您的分支比 起源 开发 落后 20 次提交 并且可以快进 使用 git pull 更新本地分支 我不想丢失本地更改 从项目目录使用这些终端命令 使用以下方式隐藏您的本地
  • 将命令的 stderr 从构建任务传递到 Azure DevOps

    我有一个 VSTS Azure DevOps 版本 其中包含电源外壳 or a 命令行任务 该任务正在运行一些程序 program exe When program exe返回非零退出代码 构建按预期失败 program exe还打印详细的
  • NSString unicode编码问题

    我在将字符串转换为可读的内容时遇到问题 我在用着 NSString substring NSString stringWithUTF8String symbol data cStringUsingEncoding NSUTF8StringE
  • 我可以在 iPhone 的网络浏览器上运行嵌入网页的 Java Applet 吗?

    我可以在 iPhone 上运行嵌入 或 HTML 标记中的 Java 小程序吗 我的意思不是作为一个应用程序 而是实际上通过它的浏览器 不 正如史蒂夫 乔布斯在 2007 年接受采访时回答的那样 Java 不值得构建 没有人再使用 Java
  • 这个属性的作用是什么:MethodImplOptions.NoInlined(或者:什么是“内联”方法)[重复]

    这个问题在这里已经有答案了 可能的重复 C 中的内联函数 https stackoverflow com questions 473782 inline functions in c 什么是方法内联 https stackoverflow
  • Spark时间戳差异

    我正在尝试在 Spark 中进行时间戳差异 但它没有按预期工作 下面是我正在尝试的方法 import org apache spark sql functions df df withColumn TimeStampDiff from un
  • Bootstrap 4 .nav-link 填充

    我想删除第一个的左侧填充 nav link in navbar nav 这是一个example https i stack imgur com m3XK7 png 在 bootstrap 4 中 我创建了一个导航并给了填充 nav link
  • 比较两个托管引用

    是否可以比较两个托管引用 类型为ref T 如果它们相等 我的意思不是对对象的引用 而是对变量的引用 例子 public static bool Compare ref int a ref int b return ref a ref b
  • 使用 YAML 转储 unicode

    我正在从 csv 创建 yaml 文件 其中包含很多 unicode 字符 但我似乎无法让它转储 unicode 而不会给我一个解码错误 我正在使用ruamel yaml图书馆 UnicodeDecodeError ascii codec
  • 删除功能不起作用

    我正在开发一个应用程序 它有一个启动屏幕 可以下载几个文件 在文件开始下载之前 我想检查文件是否已经存在 如果存在 我想删除它们 下面显示的代码包含正确的文件路径 并且检查文件是否存在的函数似乎与 Logcat 中读出的状态 文件已删除 一
  • gulp.dest 未创建目标文件夹

    我的 gulp 代码部分如下所示 gulp src application base js application base assets js base pipe gulpPlumber errorHandler function err
  • watchOS 3 SpriteKit 中的触摸事件?

    在watchOS 3中使用SpriteKit时 如何处理触摸事件 我正在从 iOS 移植 SpriteKit 游戏 下面的代码不起作用 或者你必须以某种方式控制 WKInterfaceController override func tou
  • Apache 上 Django 应用程序的 POST/GET 请求日志

    Django 开发服务器非常好 它实时显示所有 POST GET 请求以及其他事件的日志 来自 Django 开发服务器的日志示例 04 Jul 2012 19 23 27 GET static images sprites submit
  • 根据所选单选按钮显示控件

    我有一组三个单选按钮 根据选择的单选按钮 我想显示三个控件之一 文本框 下拉列表或按钮 如何根据所选单选按钮的结果显示控件 您可以使用以下方法将控件的可见性绑定到 RadioButton 的 IsChecked 属性 BooleanToVi
  • 如何在 Android 中暂停和恢复录音

    我正在使用 MediaRecorder 类开发音频录制应用程序 我有以下要求 1 按下暂停按钮则暂停录音 2 按下恢复按钮后 从暂停处恢复录制 我试试这个link https stackoverflow com questions 5743
  • 使累计总和更快

    我正在尝试计算矩阵每一列的累积和 这是我的 R 代码 testMatrix matrix 1 65536 ncol 256 microbenchmark apply testMatrix 2 cumsum times 100L Unit m
  • C++ for every in 自定义集合

    所以自从它推出以来我就一直很喜欢for each在要迭代的关键字中STL collections 我是语法糖的超级粉丝 我的问题是如何编写可以使用这些关键字迭代的自定义集合 本质上 我需要公开什么 APi 才能使用这些关键字来迭代我的集合
  • 设置分层绘图的大小?

    我正在为我的应用程序制作一个图标 该应用程序基本上是一个朋友查找器 我正在创建一个看起来很像谷歌纬度图标的叠加层 我有一个因用户而变化的图像 并且我有边框 我已经能够很好地进行分层绘制和叠加 但问题是 图像拉伸到边框的大小 这是一个问题 因
  • 当应用程序进入后台时如何停止运行?

    我正在尝试建立一个可运行的程序 它可以每 5 秒间隔加载一次广告 当然 5 秒太快了 这只是为了测试目的 这是我的代码 package com admobsdk dfp handler import com google ads impor