草庐IT

Some_Service

全部标签

android - 为什么要使用 Service 进行后台任务?

Activity可以使用AsyncTask或Handler框架进行后台工作。即使在用户离开启动它们的Activity并且调用了该Activity的onDestroy之后,两者都将继续工作。换句话说,即使在其GUI关闭后,Activity也完全有能力进行后台工作。在这种情况下,使用Service进行后台工作似乎是多余的。服务能带来哪些Activity无法做到的事情?谢谢。 最佳答案 什么是服务?关于Service类的大多数混淆实际上围绕着它不是什么:服务不是一个单独的进程。Service对象本身并不意味着它在自己的进程中运行;除非另有

android - Service.onDestroy() 在创建后直接被调用,无论如何 Service 完成它的工作

我构建了一个服务,但它没有按预期工作,所以我调试了它。调试的时候看到服务的onDestroy()方法是在onCreate()返回后直接调用的。当我注释掉onDestroy()中发生的清理时,该服务开始工作,但这不应该是我的解决方案。所以我的问题是,为什么这么早调用onDestroy()以及为什么服务仍在运行?或者如何防止onDestroy()在错误的时间被调用?供您引用:我已将IntentService子类化。感谢您的帮助。比比克 最佳答案 如果你继承IntentService你应该使用onHandleIntent(Intentin

安卓 : using the network in a service

在我的Android应用程序的服务类中调用RESTWebService会创建NetworkOnMainThreadException。我理解为什么在Activity中引发此异常:通过网络同步获取某些内容是一种极其糟糕的做法,但我很惊讶地在服务类中看到同样的错误。所以我的问题是:-在这种特定情况下,我是否应该使用StrictMode.setThreadPolicy()来允许此调用。(对于那些因为在Activity中遇到此错误而阅读本文的人,请不要使用StrictMode来隐藏此错误,而应使用AsyncTask)-或者我应该使用AsyncTask吗?在那种情况下,这里的问题是什么?线程上的

android - GCM 注册 SERVICE_NOT_AVAILABLE

这让我很生气。我有一个使用GCM的应用程序。我有人提示他们由于错误而无法登录。让我向您展示我是如何进行登录的://LoginActivity//....publicvoidonClickLoginButton(Viewv){//Dosomestuff...newGCMRegister().execute();//AsyncTask}privateclassGCMRegisterextendsAsyncTask{@OverrideprotectedIntegerdoInBackground(Void...params){ConnectivityManagerconnMgr=(Connec

android - PRIORITY_LOW_POWER 对比 PRIORITY_BALANCED_POWER_ACCURACY for google play service v2

我想知道融合位置,以上任何一项是否同时使用了gps+wifi网络?提供者有什么区别(是否使用gps)?从我在文档中看到的,区别只是距离我之前曾使用LocationManager并同时使用NETWORK_PROVIDER和GPS_PROVIDER来获得这两个提供程序的组合。 最佳答案 与以前的方法相比,新的融合位置提供者采用的方法略有不同。开发人员现在选择使用多少电池电量来计算位置,而不是使用哪些设备组件来计算位置。它使用GPS、Wi-Fi、移动网络和机载传感器的任何可用组合来计算位置。LocationRequest优先级设置现在是:

android - 查找位置 : Google Play Location Service or Android platform location APIs

我正在尝试为我的新导航应用程序获取用户位置。我想经常检查用户的位置,它必须是准确的。我使用示例中的以下代码来获取位置。publicclassMainActivityextendsActivityimplementsLocationListener{privateLocationManagerlocationManager;privateStringprovider;privateTextViewa;privateTextViewb;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInst

android - 使用 alarmManager 和 service 仅在特定时间段执行计划通知

我正在构建一个应用程序,它将在用户醒着的时间内以特定的时间间隔触发通知。我有一个在服务内部运行的alarmManager。该服务通过单击主要Activity上的按钮显式启动,并让alarmManager在特定时间间隔内执行通知。我将如何在一天中的某些时间停止通知?我不希望触发这些通知,例如,当用户正在sleep时。我的代码目前以用户设置的时间间隔触发通知如下(导入已删除......这已经足够长了):publicclassFartSmackinChunksextendsService{publicNotificationscheduleNotification;publicAlarmMa

android - V/FA : Processing queued up service tasks: 1 followed by V/FA: Inactivity, 与 AppMeasurementService 断开连接

从下面的控制台输出中可以看出,应用程序通常需要7-10秒来处理服务,而且经常无法完成。每次启动时都会发生这种情况。为什么要这么久?是因为该服务在放弃之前尝试多次连接吗?另外,这个输出背后的实际逻辑是什么?注意:我的应用程序中没有任何FirebaseAnalytics代码09-2623:34:48.998/packageV/FA:Processingqueuedupservicetasks:109-2623:34:54.009/packageV/FA:Inactivity,disconnectingfromAppMeasurementService09-2623:34:57.357/pa

android - 权限拒绝 : Accessing service ComponentInfo {. ..} 来自 pid=-1

我正在尝试使用Google的Activity识别服务。几天前,一切都很顺利,即我可以连接使用该服务来获取Activity信息。但是今天我发现我再也收不到了。查看日志后,我发现了这个错误:05-1521:19:27.196:W/ActivityManager(765):PermissionDenial:AccessingserviceComponentInfo{edu.umich.si.inteco.captureprobe/edu.umich.si.inteco.captureprobe.contextmanager.ActivityRecognitionService}frompid

android - 在 android : "Fail to connect to camera service" 上同时使用两个摄像头

我在访问两者(同时访问前置和后置摄像头)时遇到问题。当打开一台相机时,它可以工作。当我先关闭然后再打开时,它起作用了。当我尝试打开第二个摄像头而第一个摄像头仍在显示图像时,出现以下异常。E/AndroidRuntime(32325):FATALEXCEPTION:mainE/AndroidRuntime(32325):java.lang.RuntimeException:FailtoconnecttocameraserviceE/AndroidRuntime(32325):atandroid.hardware.Camera.native_setup(NativeMethod)E/And