草庐IT

android - 如何安排后台任务

似乎有几种方法可以执行后台任务。我的用例是让我的应用程序每x分钟获取一次数据馈送,无论我的gui是否正在运行,也无论手机是否处于sleep状态。我使用警报管理器来安排与广播接收器匹配的Intent。在onRecieve方法中,我启动了一个服务(startService),它生成一个AsyncTask。该任务获取数据并存储它,然后stopSelf()服务。在onRecieve方法中,我获取了一个PARTIAL_WAKE_LOCK,在启动服务之前,并且就在服务中调用stopSelf()之前,我再次释放了它。这真的是最好的方法吗?在这种情况下我什至需要该服务吗?我在使用此设置时遇到了奇怪的行

android - 在 Android 后台和使用 FCM 时处理 keepSynced()

我正在考虑对来自Firebase实时数据库的一些数据使用keepSynced()。我知道它会自动同步这些路径。但这与Android生命周期有何关系?如果用户离开所有Activity(并且所有正常的监听器断开连接),它会停止同步吗?我不希望该应用成为数据或电池消耗大户。另一方面,我想在FCM通知到达时更新缓存数据。我可以启动一些连接到Firebase的服务。我想同步keepSynced()中的所有路径,并在同步时停止它。我不确定如何实现。为其中一个路径创建一个监听器并保持服务运行一段时间?服务结束后,会停止同步吗? 最佳答案 这里是f

Android O 后台服务限制

在migrationguide建议我们在必要时使用NotificationManager.startServiceInForeground()代替startService()。但是我在NotificationManager中看不到任何startServiceInForeground()方法|.我错过了什么? 最佳答案 您需要更改文档站点的API级别才能看到新方法您应该使用在26.0.0-beta1支持库版本中添加的@RobCo建议的以下方法ContextCompat.startForegroundService()是的,这个迁移指南

开源后台管理系统 (go-vue-admin)

go-vue-admin是一套基于go语言开源的后台管理系统。功能参考诺依网站,前后端分离。简介前端采用vue3、ElementPlus、RuoYi-Vue3后端采用gofrome框架、mysql、redis、Jwt实现了一键生成前后端代码,高效开发。内置功能用户管理:用户是系统操作者,该功能主要完成系统用户配置。部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。岗位管理:配置系统用户所属担任职务。菜单管理:配置系统菜单,操作权限,按钮权限标识等。角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。字典管理:对系统中经常使用的一些较为固定的数据进行维护。参数管

android - 如何使用循环器创建后台线程

有人可以分享带有Looper的后台线程的实现,我可以将其传递给subscribeOn(AndroidScheduler.from(/backgroundThreadWithLooper/))。我需要这个,因为我正在尝试实现一个DBService类,该类在后台运行其所有操作,同时仍然获取实时对象更新。因此,当我应用addChangeListener时,会抛出异常:java.lang.IllegalStateException:YourRealmisopenedfromathreadwithoutaLooper.AsyncqueriesneedaHandlertosendresultsof

java - Android AltBeacon 后台服务测距

我正在使用AltBeacon库开发蓝牙应用程序。似乎每个应用程序只允许BeaconManager实例。我面临的问题是:我想要一个持续运行的后台服务,不断进行蓝牙测距并发送通知。如果我打开我的应用程序(将其置于前台),我就是暂停测距的服务。然后前台Activity将进行测距并在屏幕上显示内容。问题是Activity和服务中的信标管理器(来自BeaconManagerbeaconManager=BeaconManager.getInstanceForApplication(this);)是同一个实例。因此,当Activity关闭时,将调用beaconManager.unbind(this)

Android使用JobScheduler执行后台任务

JobScheduler介绍JobScheduler是Android系统中用于在特定条件下执行后台任务。它可以根据诸如设备空闲、充电状态、网络连接状态等条件来调度任务的执行。通过JobScheduler,开发者可以更有效地管理后台任务的执行,以提高系统性能和节省电量。JobScheduler可以帮助开发者避免使用传统的定时器和轮询方式来执行后台任务,从而更加智能和高效地管理应用程序的后台任务,提高应用程序的性能和用户体验。JobScheduler相关APIJobInfo.Builder:用于构建JobInfo对象,其中包含了要执行的任务的相关信息,如执行条件、重试策略等。JobSchedule

Android后台字符串资源

我正在处理布局XML文件,我想为LinearLayout设置背景颜色。这个位,我现在正在使用,完美地工作:android:background="#1a64b7"但是,我更愿意将其分解。在我的strings.xml文件中有#1a64b7但是当我以下列方式使用它时:android:background="@string/bg_blue"它在Eclipse的图形布局预览中显示得很好,但应用程序一打开就崩溃了。有任何想法吗?非常感谢。尼克 最佳答案 This才是正确的做法!例如,您需要一些资源xml,其中包含以下行:#FF000000#F

android - 以编程方式将正在运行的应用程序发送到后台

是否可以在android中以编程方式将Activity发送到后台?我正在创建一个恶作剧应用程序,它会在指定时间(由用户输入)后播放有趣的声音。而且我不希望应用程序在播放该声音时可见,并且显示屏应该是暗的。 最佳答案 是的。您可以使用:booleansentAppToBackground=moveTaskToBack(true);if(!sentAppToBackground){Intenti=newIntent();i.setAction(Intent.ACTION_MAIN);i.addCategory(Intent.CATEGO

Android fragment 导航和后台堆栈

我有一个标题栏(有点像菜单)和4个fragment(MAIN、A、B、C),其中MAIN应该是backstack的“main/root”fragment。我遇到的问题是当用户通过菜单进入例如MAIN>A>B>C时。如果我只是使用backstack,它将以我不想要的相反顺序进行。无论用户如何导航到这3个之一,我都需要返回按钮返回MAIN。我当前的代码(这是错误的,它在不在MAIN中时退出应用程序并且当前fragment从其他非MAINfragment切换)看起来像这样:privatevoidSwitchFragment(FragmentpFragment){FragmentTransac