Android 定时运行服务

Android 定时运行服务,android,android-manifest,manifest,android-alarms,Android,Android Manifest,Manifest,Android Alarms,我在跟踪 但我不想每次都重新启动手机来更新“重复时间”。我的舱单上有些奇怪的东西 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 及 我不想在我的应用程序上启动任何相关内容。我能做什么? 编辑: 当我完全卸载应用程序并尝试运行它时。服务不会启动。我需要重新启动手机并再次运行。为什么会这样我不想重新启动手机添加 <receiver android:name=

我在跟踪

但我不想每次都重新启动手机来更新“重复时间”。我的舱单上有些奇怪的东西

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />


我不想在我的应用程序上启动任何相关内容。我能做什么? 编辑: 当我完全卸载应用程序并尝试运行它时。服务不会启动。我需要重新启动手机并再次运行。为什么会这样我不想重新启动手机

添加

    <receiver android:name=".MyScheduleReceiver" >
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver>

添加到清单将确保在android设备重新启动时调用
MyScheduleReceiver

至于你为什么需要这个:


如果您使用
AlarmManager
设置闹钟来安排一些事情,android会在手机关机时关闭闹钟,因此您需要在手机重新启动时再次设置闹钟。然后你可以在你的
MyScheduleReceiver

中这样做。你的问题不清楚,而你发布的链接中的教程实际上非常广泛,因此不清楚你想做什么

根据您的问题,我只能假设您正在尝试使用
AlarmManager
创建一个报警,以定期启动
服务

在这种情况下,您应该知道,当设备断电/重新启动时,警报将被删除。这意味着当设备重新启动时,使用
广播接收器
重新创建任何警报是正常的


如果设备未关闭电源,重复报警将保留,而您无需执行任何操作。

如果有AlarmManager,是否应该重新启动?如果是这样的话,我应该怎么做才能在特定的时间间隔内调用该服务?@Nabin:不。你只需在应用程序第一次启动时创建警报。但在此之后,如果设备重新启动,并且您希望自动重新创建警报,则接收
启动完成的
广播接收器可以为您执行此操作。否!只要手机没有关机,您的闹钟就会正常工作。但为了防止用户关闭手机,本应在将来某个时候执行的警报永远不会出现。“我不想重新启动应用程序”:如果卸载并重新安装应用程序,则必须重新启动它。从Android v3.1开始,应用程序必须在安装后由用户手动启动。这是为了确保用户已“批准”应用程序,以防止恶意软件。很抱歉,键入时出错。我把它改成了电话:-)那样的话,你就去设置闹钟吧。它们将自动执行。我指的是:但是你说的是谁的OnCreate?你应用程序的主要活动。你可以在那里设置闹钟。嗯???我也在尝试集成重启功能。。但是,即使我调用了stopService(…),它也不会启动或继续。如果您想在重新启动时也这样做,请在广播接收器的onReceive()方法中设置警报。
    <receiver android:name=".MyScheduleReceiver" >
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver>