Android开机时启动后台服务

2023-11-21

我需要始终有一个后台服务来同步我的 Android 应用程序和服务器。我知道如何通过我的应用程序启动它,但是当 Android 关闭时,后台服务就会消失。

如何才能让后台服务始终运行? (即使设备关闭然后再打开......)

我需要将我的后台服务添加到Android的stars程序中。有什么提示吗?


use <action android:name="android.intent.action.BOOT_COMPLETED" />用于在设备打开时启动您的服务。

In AndroidManifest.xml:

 <receiver android:name=".BootBroadcastReceiver" >   
            <intent-filter>   
                <action android:name="android.intent.action.BOOT_COMPLETED" />   
            </intent-filter>   
        </receiver> 

在您的中添加权限AndroidManifest.xml as:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED">
</uses-permission>

在代码部分BootBroadcastReceiver:

public class BootBroadcastReceiver extends BroadcastReceiver {     
    static final String ACTION = "android.intent.action.BOOT_COMPLETED";   
    @Override   
    public void onReceive(Context context, Intent intent) {   
        // BOOT_COMPLETED” start Service    
        if (intent.getAction().equals(ACTION)) {   
            //Service    
            Intent serviceIntent = new Intent(context, StartOnBootService.class);       
            context.startService(serviceIntent);   
        }   
    }    
}   

EDIT:如果您正在谈论设备屏幕打开/关闭,那么您需要注册<action android:name="android.intent.action.USER_PRESENT" /> and <action android:name="android.intent.action.SCREEN_ON" />用于在用户存在或屏幕打开时启动您的服务。

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

Android开机时启动后台服务 的相关文章

  • gradle更新后无法找到方法(无法编译项目)

    我尝试将项目中的 gradle 版本更新为 4 1 milestone 1 以下这些说明 https developer android com studio build gradle plugin 3 0 0 migration html
  • android edittext中的字符映射

    我想让我的编辑文本就像我写字符 g 时一样 它是相关的映射自定义字符应该写成印地语中的 我认为应该有字符映射 但没有知识任何人都可以帮助我 怎么做 其他应用程序https play google com store apps details
  • Recyclerview 动态部分不使用任何第三个库

    我想将标头添加到 recyclerview 我正在尝试使用来实现它 Override public int getItemViewType int position depends on your problem if position 0
  • 如何使用 Google Maps for Android V2 处理地图移动结束?

    我想在地图中心更改后立即对地址进行地理编码 如何使用新的 Android 版 Google 地图 V2 处理地图移动 我说的是用户用手指拖动地图的情况 查看新的地图 API Override public void onMapReady G
  • Android WebView里面的ScrollView只滚动scrollview

    在我的应用程序中 我有一个 ScrollView 其中包含一些线性视图 一些文本视图和一个 Webview 然后是其他线性布局等 问题是 WebView 不滚动 Scroll 仅侦听 ScrollView 有什么建议么
  • 自定义首选项中的android首选项水平分隔线?

    我创建了自己的自定义首选项对象来扩展首选项 我创建它们只是因为这些自定义数据类型没有首选项 一切正常 但我的自定义首选项没有相同的外观 因为它们缺少系统首选项对象具有的水平分隔线 我已经查找了创建水平分隔线的代码 但我找不到它是在哪里完成的
  • 如何重定向到 instagram://user?username={username}

    我的 html 页面上有这个链接 可以在特定用户上打开 Instagram 应用程序 a href Link to Instagram Profile a 我一直在寻找自动运行 url instagram user username USE
  • 如何更改终端的默认目录?

    我想更改 Android Studio v2 2 2 终端的默认目录 当我打开终端时 它基于项目的目录 C 项目路径 我经常需要使用adb shell 所以我必须导航到 SDK 路径 平台工具 才能使用 adb 命令 是否可以更改终端的默认
  • 在 Cordova 应用程序中获取额外功能

    我们有两个 Android 应用程序 一个使用本机 Java 实现 另一个使用 Ionic 编写 Ionic 应用程序启动我的应用程序 这是使用灯插件 https github com lampaa com lampa startapp 我
  • Android Studio 与本地网络共享上的项目文件

    这是我的设置 Android Studio 项目文件位于 Ubuntu 14 10 盒子上的共享文件夹中 尝试在 Windows 8 机器上运行 Android Studio 1 0 2 并将 U 驱动器映射到包含项目文件的 Ubuntu
  • 如何在谷歌地图android上显示多个标记

    我想在谷歌地图android上显示带有多个标记的位置 问题是当我运行我的应用程序时 它只显示一个位置 标记 这是我的代码 public class koordinatTask extends AsyncTask
  • 使用片段时应用程序崩溃

    我正在处理碎片和 我的代码中有一个我找不到的问题 logcat 指向我的一个片段中的这段代码 Override public View onCreateView LayoutInflater inflater ViewGroup conta
  • okhttp 获取失败响应

    我已经在我的 android 客户端中实现了 okhttp 来进行网络调用 当我收到失败响应时 我会收到失败代码以及与该代码相关的文本作为消息 但我没有收到服务器发送给我的自定义失败响应 在我实施的代码中的失败响应中 我收到的消息只是 错误
  • 使用 AsyncTask 传递值

    我一直在努力解决这个问题 但我已经到了不知道该怎么办的地步 我想做的是使用一个类下载文件并将其解析为字符串 然后将该字符串发送到另一个类来解析 JSON 内容 所有部件都可以单独工作 并且我已经单独测试了所有部件 我只是不知道如何将值发送到
  • WorkManager 或 AlarmManager 用于日常请求然后通知工作?

    这是用例 用户设置具有特定时间的每日通知 在指定时间 发出网络请求以获取一些数据 然后使用检索到的数据显示通知 我不确定是否应该使用 AlarmManager 还是 WorkManager 来实现这个用例 据我了解 AlarmManager
  • 如何检查 Android 中的同步设置

    我正在构建一个 Android 应用程序 我需要检查设备中注册的每个单独帐户的同步设置 我知道我可以通过 ContentResolver 类来做到这一点 但我遇到了一些问题 我已设法获取设备上所有帐户的列表 但我不知道在运行时从哪里获取特定
  • Android:如何从网络异步获取搜索建议?

    我创建了一个可搜索的活动 现在 我想添加从网络服务获取的搜索建议 我想异步获取这些建议 根据添加自定义建议 http developer android com guide topics search adding custom sugge
  • 如何使用 AccessibilityService 在 Android 中模拟按键

    我正在编写一个辅助服务 我一直在尝试在应用程序上进行一些自动搜索 我使用accessibilityservice action paste来填充EditText 然后我需要模拟软键盘上的按键 但我不知道如何做 你们能帮我一下吗 你可以尝试A
  • 错误:(23, 13) 无法解决:com.google.android.gms:play-services:11.2.0“安装存储库和同步项目”不起作用

    我正在尝试在我的 Android 应用程序中获取位置并更新到服务器 这是我的 Gradle 代码 我在这里包含了compile com google android gms play services 11 2 0 这条线是从文档中 htt
  • Dagger 2 中“HasFragmentInjector”的实际用法是什么

    我之前已经实现了 dagger2 v2 2 但现在他们也添加了 dagger android 部分 所以我正在用它创建示例项目 我知道旧的方法论 Provide and Modules and 成分等注释 但从 Dagger 2 8 开始

随机推荐

  • Azure 容器注册表 - 删除除 2 之外的所有映像

    我想删除 Azure 容器注册表中除最后两个之外的所有映像 我正在寻找一个脚本来执行此操作 但我发现只能删除 X 天之前的图像 这对于我的情况来说是不可能的 因为有些日子会创建很多图像 而其他日子则只有一张 有人有什么想法吗 将 skipL
  • 对象不支持属性或方法“对话框”

    参考Ajax控制工具包 我从 MVC 创建了一个 UI 对话框 布局 cshtml
  • 任务栏的 wxpython 图标

    我正在尝试在我的 wxpython 程序中设置一个图标 到目前为止 在阅读了许多页面和示例后 我能够在窗口中设置一个图标 这在使用 alt tab 时也可以使用 我正在 Windows 7 上工作 但任务栏上的图标是通常的Python默认图
  • 字符串和整数,隐式和显式

    有同事问过我这个问题 我脑子一片混乱 没有答案 为什么你可以这样做 string ham ham 4 But not string ham 4 如果您在进行字符串转换时存在隐式转换 操作连接 为什么不一样时指派它作为一个字符串 当然 不进行
  • 将.env环境变量上传到elastic beanstalk

    据我所知 将环境变量设置为 elastic beanstalk 的唯一方法是 AWS 在线控制台 The eb setenv命令 我有一个 env我的项目中包含一个包含超过 100 个变量的所有环境变量的文件 我正在寻找一种方法将它们同时推
  • 尊重 msbuild 调用的批处理文件的退出代码

    我有一个正在使用的批处理文件exit命令返回退出代码 在某些情况下 可以从命令行交互调用此批处理文件 或者在其他情况下 可以使用以下命令作为 MSBuild 项目的一部分运行Exec task 如果我使用exit errorlevel 在我
  • 在android中的activity之间传递字符串

    我已经搜索了很多地方 但还没有找到任何有效的解决方案 我真的需要帮助 我正在制作一个应用程序 需要将经度和纬度字符串从一个活动传递到另一个活动 我怎样才能做到这一点 在这里查看我的代码 LocationActivity java 需要将字符
  • 我将如何在 python 中播放闹钟声音?

    我有一个自己制作的时钟 我想把它做成闹钟 假设您使用的是 Windows import winsound winsound PlaySound alert wav 如果您使用的是 Linux 或者我相信是 Mac OS X 您可以使用 py
  • HTML 中使用 '\n' 换行

    有没有办法让HTML正确处理 n换行 或者我必须将它们替换为 br div class text abc def ghi div 这是为了在 HTML 中显示换行符和回车符 那么你不需要明确地这样做 您可以在 CSS 中通过设置空白属性 p
  • clojure 映射函数中的奇怪之处

    clojure 中的映射的第一个奇怪的事情是以下代码片段 apply map list 1 a 2 b 3 c 结果令我惊讶 1 2 3 a b c 任何人都可以解释它是如何工作的吗 apply f x y z 相当于 f x y z 所以
  • 在 PyInstaller 中找不到导入的模块

    我在 Windows 中工作 使用PyInstaller打包一个python文件 但发生了一些错误 Traceback most recent call last File
  • JDBC 使用 SELECT FOR UPDATE 锁定行,不起作用

    我遇到了 MySQL 的 SELECT FOR UPDATE 问题 这是我尝试运行的查询 SELECT FROM tableName WHERE HostName UnknownHost ORDER BY UpdateTimestamp a
  • 优化/简化路径

    假设我有一条包含 150 个节点 顶点的路径 如果这样的话 例如 具有 3 个顶点的直线将删除中间的一个 因为它不会添加到路径中 我该如何简化 另外我怎样才能避免破坏尖角 我怎样才能消除微小的变化并保留平滑的曲线 Thanks 对于每 3
  • 为什么我在使用 TStream 类时收到“抽象错误”?

    当我尝试运行以下简单的代码序列时 我得到了Abstract Error错误信息 type TForm1 class TForm Image1 TImage Button1 TButton procedure Button1Click Sen
  • Android:制作可滚动的自定义视图

    我已经滚动了自己的自定义视图 并且可以正常绘制到屏幕上 但我真正想做的是将屏幕的测量高度设置为 1000px 并让用户在 Y 轴上滚动 但我 我这样做时遇到问题 有人可以帮忙吗 这是一些代码 public class TestScreen
  • 如何在java中将.csv文件读入数组列表?

    我有一项大学作业 要求我从 csv 文件中获取数据 并以三种不同的方法读取 处理和打印它 这些说明要求我将数据读入数组列表中 我已经编写了一些代码来执行此操作 但我不确定我是否正确完成了操作 有人可以帮助我理解我应该如何将文件读入数组列表吗
  • 所有ajax请求完成后如何调用警报?

    我正在代码中使用 JQuery 发出一些请求 get 看起来像 get address1 function get address2 function get address3 function This code should be ru
  • 在 ASP.NET Core 6.0 和 7.0 上使用 Systemd

    如果你想在 Linux 上使用 systemd 托管你的 ASP 应用程序ASP NET 核心 5 你必须添加Microsoft Extensions Hosting Systemd具有此配置的 nuget 包 public class P
  • 为什么使用 foreach 时不执行此 LINQ 查询?

    在 LINQ 语句中创建新对象时 例如 var list new List
  • Android开机时启动后台服务

    我需要始终有一个后台服务来同步我的 Android 应用程序和服务器 我知道如何通过我的应用程序启动它 但是当 Android 关闭时 后台服务就会消失 如何才能让后台服务始终运行 即使设备关闭然后再打开 我需要将我的后台服务添加到Andr