java - android中的后台线程

标签 java android multithreading

我是一名刚开始 android 编程 3 周的研究生,我正在尝试编写一个应用程序,从手机的加速度计中提取数据并将其写入我的手机。我的问题是我想在手机启动并运行时一直运行我的应用程序(从加速度计获取数据)。我的意思是,当有人打电话、访问 facebook 等时,我的应用程序必须一直运行。那可能吗?我想得到一些引用。

最佳答案

What I mean is that my App has to run all time when somebody is calling, facebooking and so on. Is that possible?

因此对于长任务,您可以使用 AsyncTaskServices。如果你想执行一些任务并且当它没有连接到任何Activity时它也必须运行(例如音乐播放器,RSS在内存管理器从内存中释放后仍然运行),你应该决定使用 Services 也可以将 ServicesAsyncTask 结合使用。

服务 是强大的工具,但使用它们并非易事。您只能及时执行一个Service,并且只能运行一个Service,一个实例,一个副本。这一切都不是免费的,所以你必须小心,因为当你实现 Service 太脏时,可能会导调用池过早耗尽。 有更多方法可以启动Services,但您必须阅读一些教程和指南。 我建议检查一下:Services , ServicesDemo - Using Android Services , Android Service Tutorial , Local Service | Android Tutorial for Beginners

也看看AsyncTask , Android Threads, Handlers and AsyncTask - Tutorial

关于java - android中的后台线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11053023/

相关文章:

Java & Pig - 是否可以将 pig 脚本的输出放入 Java 变量中?

java - java中如何找出sql结果集中的变量类型?

java - Android Studio - 运行 MainActivity 时出错 : Unknown run configuration type AndroidRunConfigurationType

Android:第二次打开 fragment 时工具栏上的 "up"按钮消失

java - Chrome 驱动程序的多个实例上的 Chrome 崩溃

java - 我想了解为什么当我尝试编译并运行以下程序时会出现此警告,

android - 为 Android 编译时,iOS 的 dart 代码会被删除吗?

android - Intellij "Run as Android application"缺失

java - ThreadlocalRandom 和 just Random

java - 如果访问线程是由先前分配变量的同一线程创建的,是否需要 volatile?