Stopself()到底是什么?终止服务运行的最佳方法是什么? - java

我是android的初学者,对Java没有太多经验。

我有一个活动,该活动创建一个ALARM MANAGER并启动alarmManager.setRepeating()指向服务。

此服务在onCreate中设置了部分唤醒锁以执行代码的全部执行(该应用是为非用户交互而设计的,因此手机始终处于待机状态)。

所有这些工作都很完美。

有时,服务不应执行全部代码,而应在执行前退出。所以我用了StopSelf但我有一些疑问:

Service中的

  • onDestroy函数具有删除唤醒锁的代码。 StopSelf()调用它吗?
  • 无论如何,如果代码执行后何时终止,我没有指定任何函数来终止服务?
  • 因此,就我而言,最好替换onDestroy()而不是Stopself()吗?
    许多thanx!

    参考方案

    您应该调用stopSelf ()停止服务。调用后,Android框架将自动调用onDestroy()方法。

    实际上,这些onXXX()方法(前缀“on”表示这些方法是系统的回调)应由系统而不是开发人员调用。
    阅读SDK的document了解更多详细信息。

    android-android studio模拟器中的SSL问题,在手机上可以正常工作 - java

    我有一个可以通过https调用网络服务的应用程序。当我在手机上运行apk时,效果很好。但是,在模拟器中,所有通过POST的SSL请求均失败,并显示以下信息: 读取错误:ssl = 0xb402be00:SSL库失败,通常是一个协议 错误 错误:100c50bf:SSL例程:ssl3_read_bytes:NO_RENEGOTIATION(外部/无聊的sl /…

    绑定Java库Xamarin.Android - java

    我花了两天时间在每个论坛,文档,tuto,博客等上寻找答案。我为实习生启动了一个Android应用程序,因为我不懂Java,所以用xamarin C#开发了它。直到最近一切都还不错,但现在我需要集成一个SDK才能在应用程序中使用POS(销售点),但是该库是用Java编写的,即使跟随文档或辅导老师,我也无法将其与xamarin绑定(我什至无法调试)。这里有人已…

    Java:正则表达式模式匹配器是否有大小限制? - java

    我的模式类似于OR:“word1 | word2 | word3”我大约有800个字。可能有问题吗? 参考方案 您仅受记忆和理智的限制。 :)

    Java:线程池如何将线程映射到可运行对象 - java

    试图绕过Java并发问题,并且很难理解线程池,线程以及它们正在执行的可运行“任务”之间的关系。如果我创建一个有10个线程的线程池,那么我是否必须将相同的任务传递给池中的每个线程,或者池化的线程实际上只是与任务无关的“工人无人机”可用于执行任何任务?无论哪种方式,Executor / ExecutorService如何将正确的任务分配给正确的线程? 参考方案 …

    JAVA:字节码和二进制有什么区别? - java

    java字节代码(已编译的语言,也称为目标代码)与机器代码(当前计算机的本机代码)之间有什么区别?我读过一些书,他们将字节码称为二进制指令,但我不知道为什么。 参考方案 字节码是独立于平台的,在Windows中运行的编译器编译的字节码仍将在linux / unix / mac中运行。机器代码是特定于平台的,如果在Windows x86中编译,则它将仅在Win…