Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android日期自动更改_Android - Fatal编程技术网

Android日期自动更改

Android日期自动更改,android,Android,我知道这个问题已经被问了好几次了,我也搜索过了,但没有找到任何最终的解决办法 当日期更改时,如何在活动中调用方法 我在活动中使用了广播接收器,并将intentfilter设置为如下所示 intentFilter.addAction("android.intent.action.DATE_CHANGED"); 这个方法只有在我手动更改日期的情况下才有效,但它必须像在自动更改日期时调用该方法一样 我也用过 intentFilter.addAction("android.intent.action.

我知道这个问题已经被问了好几次了,我也搜索过了,但没有找到任何最终的解决办法

当日期更改时,如何在活动中调用方法

我在活动中使用了广播接收器,并将intentfilter设置为如下所示

intentFilter.addAction("android.intent.action.DATE_CHANGED");
这个方法只有在我手动更改日期的情况下才有效,但它必须像在自动更改日期时调用该方法一样

我也用过

intentFilter.addAction("android.intent.action.TIME_TICK");
这一个完美的工作,但由于这是时间滴答它发生在每一分钟,它给出了一个泄漏的窗口错误说

Activity com.example.testandroid.MainActivity has leaked IntentReceiver com.example.testandroid.MainActivity$1@4177ffe0 that was originally registered here. Are you missing a call to unregisterReceiver()?
如何克服这个问题

有什么建议吗 还是好建议 或者好的代码总是受欢迎的


谢谢

如果您要在活动/片段/服务(在
onCreate
/
onResume
中)中注册从代码注册的广播接收器,您还必须从代码(在
onrestory
/
onPause
中)取消注册它.

如果您要在活动/片段/服务(在
onCreate
/
onResume
中)中注册从代码注册的广播接收器,您还必须从代码(在
onRestory
/
onPause
)中取消注册它。

创建服务并从中注册广播接收器。当用户关闭该活动时,该活动将被销毁,并且您需要在该活动之后注册接收者-注册此类接收者而不是从清单中注册的唯一方法是创建服务并从中注册广播接收者。当用户关闭活动时,该活动将被销毁,您需要在活动结束后注册接收者-不从清单中注册此类接收者的唯一方法是服务

尝试此android:name=“android.intent.action.TIME\u SET”@kettu尝试过,但没有时间勾选它就无法工作尝试此android:name=“android.intent.action.TIME\u SET”@kettu试过了,但是没有时间滴答它就不工作了allok不工作,我可以在上面注销它,但是我需要更改日期,而不是每分钟都滴答滴答的时间。请帮助我。你是否尝试过使用@kettu的建议:安卓:name=“android.intent.action.time\u SET”?此外,使用清单中注册的BroadcastReceiver将使您的应用程序不会错过这些通知。如果在活动结束时将广播接收器保留在活动中,则会错过广播接收器通知。是的,我尝试了android:name=“android.intent.action.TIME\u SET”,但如果没有计时器,则无法正常工作,我可以在桌面上注销它,但我需要在日期更改时进行更改,而不是时间每分钟都在滴答作响。请帮助我。您是否尝试过使用@kettu的建议:android:name=“android.intent.action.time\u SET”?此外,使用清单中注册的BroadcastReceiver将使您的应用程序不会错过这些通知。如果在活动结束时将广播接收器保留在活动中,则会错过广播接收器通知。是的,我已尝试android:name=“android.intent.action.TIME\u SET”如果应用程序正在运行,那么整个setcontentview将在日期更改时更改。如果应用程序没有运行,那么这件事只会在应用程序正在运行时发生。为什么每次日期更改时我都需要更改setcontentview,所以我不需要更改这里需要一个服务,只要更改日期更改视图就足够了,我相信,我希望我能让你明白我的意图..如果你只需要在应用程序运行时才需要捕获日期更改,在onCreate中注册接收器并在onDestroyright中注销它现在我在Start上注册它,在Stop上注销它,但告诉我接收什么的方法??intent action datechange无法正常工作time tick正在检查每一分钟,这不是必需的我实际达到的是日期更改如果应用程序正在运行,那么整个setcontentview将在日期更改时更改现在这件事只会在应用程序正在运行时发生如果它没有运行,那么我为什么需要更改每次更改日期都要更改setcontentview,所以我不需要在这里提供服务,只要更改日期更改的视图就足够了,我相信,我希望我能让你明白我的意图..如果你只需要在应用程序运行时才需要捕获日期更改,在onCreate中注册接收器并在onDestroyright中注销它现在我在Start上注册它,在Stop上注销它,但告诉我接收什么的方法??意图操作日期更改未正常工作时间刻度正在每分钟检查一次,这不是必需的