我有一个非常微妙的问题,在比我更专业的眼里可能看起来很怪诞。
我正在实现 2 个不同的警报,它们可以在重启/关闭后继续存在,并在触发时显示通知。
一种是重复的每日提醒,另一种是每月提醒,每次用户完成给定任务时由应用程序重置。
只是为了提醒他/她在一个月过去时再做一次。
现在,一切正常。
所以有什么问题?
什么都没有,但我将 BootReceiver、AlarmReceiver 和 AlarmService加倍
了只有 Notification builder 是共同的。
那么我的问题是:我可以统一这些元素而不让它们分裂以产生任何警报吗?
因为如果没有,如果将来我需要安排每周警报,我将不得不制作另一个启动接收器、警报接收器和警报服务。
对我来说,这似乎不太聪明(假设我添加了每周和每年的任务:我必须再添加 2 个所有接收器和服务!!这对我来说似乎很疯狂)。
但也许我错了,事情就是这样?
在我之前编写的一个应用程序中(在认识到它没有通过重新启动之前),它与共享所有类的警报一起工作。
谢谢你们,伙计们,你们的时间。
如果您需要查看我的代码,请索取。不过有点长...
这是我的清单文件,只是为了说明我的疑问:
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.scheduler2"
android:versionCode="1"
android:versionName="1.14.02.11 b"
>
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18"
/>
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<application
android:label="@string/app_name"
android:icon="@drawable/ic_launcher"
android:theme="@style/Theme.Sample"
>
<!-- The Main Activity -->
<activity
android:name="com.example.android.scheduler2.ACT_Base"
android:label="@string/app_name"
>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- The Preference Activity -->
<activity android:name="com.example.android.scheduler2.ACT_Prefs" />
<!-- 2 Alarms = 2 Alarm Boot receivers -->
<!-- The One Shot Alarm Boot Receiver -->
<receiver
android:name="com.example.android.scheduler2.RCV_Boot_One"
android:enabled="false"
>
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<!-- The Repeating Alarm Boot Receiver -->
<receiver
android:name="com.example.android.scheduler2.RCV_Boot_Rep"
android:enabled="false"
>
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
<!-- 2 Alarms = 2 Alarm receivers -->
<!-- The One Shot Alarm Receiver -->
<receiver android:name="com.example.android.scheduler2.RCV_Alarm_One" />
<!-- The Repeating Alarm Receiver -->
<receiver android:name="com.example.android.scheduler2.RCV_Alarm_Rep" />
<!-- 2 Alarms = 2 Alarm services -->
<!-- The One Shot Alarm Service -->
<service android:name="com.example.android.scheduler2.SVC_Alarm_One" />
<!-- The Repeating Alarm Service -->
<service android:name="com.example.android.scheduler2.SVC_Alarm_Rep" />
</application>
</manifest>