草庐IT

android - 服务或 IntentService 或 AlarmManager 方法

我正在构建一个类似游戏的应用程序,我一直在阅读有关在后台、前台、警报等中使用服务运行事物的所有不同方法,但我有点困惑。我的应用会像这样(示例):用户按下Main中的一个按钮,然后他可以关闭应用程序30分钟后Activity1打开用户在该Activity中完成了他需要做的任何事情,这触发下一个Activity在2小时后开始2小时后Activity2打开用户也在那里完成了他需要做的任何事情,触发了下一个一天后Activity3打开,依此类推什么是最好的方法?是否有持续运行的服务来打开这些Activity,或者设置一个新的警报以在用户每次完成其中一项Activity时启动?

C# 安卓 : Get Broadcast Receiver on a service?

我正在xamarin.android中开发辅助功能服务。一切都很好,但我想要服务上的广播接收器。我知道我必须从广播接收器派生我的无障碍服务,但这是不可能的,因为该服务已经派生自Android.AccessibilityService。实际上,问题是,当用户对主要Activity进行一些配置更改时,我想提出一个广播接收器,我的无障碍服务应该监听它。那么,对此有什么想法吗? 最佳答案 在您的Service中,定义一个BroadcastReceiver内部类,并在您的Service构造函数中创建并注册BroadcastReceiver.S

java - 为什么不能将 Intent Service 声明为私有(private)包?

我正在开发一个android库,所以除了库用户需要访问的几个类之外,我希望将所有库代码包保密。在这些类中有一个IntentService。但是,应用程序崩溃并出现此错误:java.lang.RuntimeException:Unabletoinstantiateservicecom.library.sdk.SaveDataIntentService:java.lang.IllegalAccessException:java.lang.Classisnotaccessiblefromjava.lang.Classatandroid.app.ActivityThread.handleCre

android - START_STICKY 用于前台服务

ForegroundService具有非常高的优先级,不太可能被系统杀死,所以在onStartCommandSTART_STICKY有什么意义吗?/?编辑:这个问题不是关于START_STICKY和START_NON_STICKY之间的区别,而是关于START_STICKY与前台服务相关的可用性。 最佳答案 “不太可能被杀死”!=“永远不会被杀死”。例如,用户可以通过多种方式终止你的进程。如果您关心这些情况并希望重新启动您的服务(如果符合条件),请使用START_STICKY或START_REDELIVER_INTENT。如果您愿意

android - 退出应用程序后服务停止

我正在开发一款音乐播放器应用程序,它作为远程服务运行。当我按后退按钮退出时,服务停止。为什么会这样?它还显示以下logcat消息android.app.ServiceConnectionLeaked 最佳答案 您需要从服务的onStartCommand返回START_STICKY。查官方documentation 关于android-退出应用程序后服务停止,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co

android - 如何在 ACTION_SCREEN_OFF 时停止服务

我试图让我的数字时钟小部件的UpdateService在屏幕关闭时停止以节省电池电量,然后在屏幕激活时重新打开。我目前在AppWidgetProvider的onReceive()中有它,但我也在BroadcastReciever中尝试过。我当前的代码是:publicstaticbooleanwasScreenOn=true;publicvoidonReceive(Contextcontext,Intentintent){super.onReceive(context,intent);if(intent.getAction().equals(Intent.ACTION_SCREEN_OF

android - 什么时候绑定(bind)服务,什么时候不绑定(bind)服务

我一直在翻阅Android文档,我很好奇。什么时候绑定(bind)服务而不是不绑定(bind)服务?它提供了哪些优点/限制? 最佳答案 Whenwouldyoubindaserviceasopposedtonotbindingtheservice?完整的答案需要(::ahem::)一本书的几页。:-)在处理配置更改(例如屏幕旋转)时,绑定(bind)到服务会带来挑战。因此,在其他条件相同的情况下,使用命令模式(startService())胜过使用绑定(bind)模式(bindService())。如果你想让你的服务在没有任何Act

android - 服务中的线程,还是线程中的服务?

我有一个关于服务的问题:在服务中创建线程或在线程中创建服务哪个更好?问题来了,因为我正在为我的应用程序实现一个错误报告器,所以当应用程序失败时,它会向我发送一份报告,说明发生了什么。我的想法是在发生错误时发出通知,从这里显示ActivityActivity并创建一个线程来重试传递,直到它成功或达到最小尝试次数。重新提出问题,系统如何最不可能删除我的进程(如果内存不足):在服务中使用线程,还是在线程中使用服务?我认为最好的是第一选择,但是我在同样的android人中看到了一段代码,在这里:(第640行)codefromgoogletokeepaliveathread??他们在哪里使用第二

android - 不能在通知中为 Intent 添加额外内容

我正在从具有额外整数Intent的服务创建通知。出于某种原因,这并不像看起来那么容易。这就是我正在做的:Notificationnotification=newNotification(R.drawable.notification_icon,"Title",0);IntentrelaunchIntent=newIntent(this,SomeClass.class);relaunchIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);relaunchIntent.putExtra("load",getId());notification.se

android - 通过 "android.intent.action.SEND" Intent 启动服务

我目前有一个具有以下intent-filter的Activity类:这会导致我的应用程序出现在图库的Share-Via菜单中。这一切都很好。现在,我实际上不需要让它成为一个Activity,因为它不需要用户交互。相反,我想把它做成一个服务,通过Gallery中的Share-Via菜单以同样的方式启动。所以我将intent-filter移到了“服务”标签内,例如:但是,现在我在Share-Via菜单中看不到该应用程序了!这是为什么?我需要更改什么才能在Share-Via菜单中列出服务? 最佳答案 这是因为当用户点击Share菜单项时,