【问题标题】:Creating an android service to run in the background using python使用python创建一个在后台运行的android服务
【发布时间】:2014-08-20 17:06:07
【问题描述】:

我想知道是否可以使用 python 和 sl4a 在后台(也可能在启动时)运行 android 服务而无需 root 设备,如果可以,我将如何去做。

【问题讨论】:

    标签: android python background boot sl4a


    【解决方案1】:

    要在后台或启动时运行服务,您必须定义一个广播接收器,它基本上会启动该服务。

    请参考以下问题答案中提到的代码sn-ps。

    Android BroadcastReceiver on startup - keep running when Activity is in Background

    我在 pythoncentral 上看到了一些关于在 python 中开发的信息,但我从未使用 python/sl4a 开发过服务。

    【讨论】:

    • 问题是,那是用java编码,我没有经验,我更喜欢python解决方案。虽然如果你有一些好的入门指南我可以用 Java 编码,我可以快速使用它来创建这个广播接收器
    • 我开始学习适用于 Android 的 Java,它很容易学习和开发。具体到您的问题 - 我已经在我的回答中提供了链接。它具有您需要的 Boot 上广播接收器的确切代码。请参阅有关广​​播接收器的本教程。 vogella.com/tutorials/AndroidBroadcastReceiver/article.html
    • 我可以在 python 文档中看到广播 API,它的作用与广播接收器相同。 python-for-android.readthedocs.org/en/latest/android(搜索 Broadcast/android.broadcast)希望对您有所帮助。
    • 非常感谢,我一定会调查的,谢谢
    【解决方案2】:

    如果有人正在寻找适用于 android (p4a) 的 python 解决方案:

    python-for-android 支持使用 Android 服务,后台任务运行在单独的进程中。这些是与多处理最接近的 Android 等价物,例如桌面平台,并且无法在 Android 上使用普通的多处理。当您的应用当前未被用户打开时,服务也是运行代码的唯一方式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-04-11
      • 1970-01-01
      • 1970-01-01
      • 2014-11-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多