天道酬勤,学无止境

安卓闹钟(Android alarm Clock)

问题

你好我有问题。

LogCat 给了我一些错误。

日志猫:

08-05 11:42:30.222: E/AndroidRuntime(623): FATAL EXCEPTION: main
08-05 11:42:30.222: E/AndroidRuntime(623): java.lang.NullPointerException
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.text.format.DateFormat.is24HourFormat(DateFormat.java:204)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.Alarms.get24HourMode(Alarms.java:536)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.DigitalClock.setDateFormat(DigitalClock.java:192)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.DigitalClock.onFinishInflate(DigitalClock.java:121)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.LayoutInflater.rInflate(LayoutInflater.java:631)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.LayoutInflater.rInflate(LayoutInflater.java:626)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.AlarmClock$AlarmTimeAdapter.newView(AlarmClock.java:96)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.CursorAdapter.getView(CursorAdapter.java:182)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.AbsListView.obtainView(AbsListView.java:1430)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.ListView.measureHeightOfChildren(ListView.java:1216)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.ListView.onMeasure(ListView.java:1127)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.View.measure(View.java:8313)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1017)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.LinearLayout.measureVertical(LinearLayout.java:386)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.LinearLayout.onMeasure(LinearLayout.java:309)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.View.measure(View.java:8313)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:250)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.View.measure(View.java:8313)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.LinearLayout.measureVertical(LinearLayout.java:531)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.LinearLayout.onMeasure(LinearLayout.java:309)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.View.measure(View.java:8313)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:3138)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.widget.FrameLayout.onMeasure(FrameLayout.java:250)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.View.measure(View.java:8313)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.ViewRoot.performTraversals(ViewRoot.java:839)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.view.ViewRoot.handleMessage(ViewRoot.java:1859)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.os.Handler.dispatchMessage(Handler.java:99)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.os.Looper.loop(Looper.java:123)
08-05 11:42:30.222: E/AndroidRuntime(623):  at android.app.ActivityThread.main(ActivityThread.java:3683)
08-05 11:42:30.222: E/AndroidRuntime(623):  at java.lang.reflect.Method.invokeNative(Native Method)
08-05 11:42:30.222: E/AndroidRuntime(623):  at java.lang.reflect.Method.invoke(Method.java:507)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
08-05 11:42:30.222: E/AndroidRuntime(623):  at dalvik.system.NativeStart.main(Native Method)

一点代码(有错误的地方)

日志猫:

08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.Alarms.get24HourMode(Alarms.java:536)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.DigitalClock.setDateFormat(DigitalClock.java:192)
08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.DigitalClock.onFinishInflate(DigitalClock.java:121)

代码:

static Calendar calculateAlarm(int hour, int minute, Alarm.DaysOfWeek daysOfWeek) {

    // start with now
Calendar c = Calendar.getInstance();
c.setTimeInMillis(System.currentTimeMillis());

int nowHour = c.get(Calendar.HOUR_OF_DAY);
int nowMinute = c.get(Calendar.MINUTE);

// if alarm is behind current time, advance one day
if (hour < nowHour  ||
    hour == nowHour && minute <= nowMinute) {
    c.add(Calendar.DAY_OF_YEAR, 1);
}
c.set(Calendar.HOUR_OF_DAY, hour);
c.set(Calendar.MINUTE, minute);
c.set(Calendar.SECOND, 0);
c.set(Calendar.MILLISECOND, 0);

int addDays = daysOfWeek.getNextAlarm(c);
/* Log.v("** TIMES * " + c.getTimeInMillis() + " hour " + hour +
   " minute " + minute + " dow " + c.get(Calendar.DAY_OF_WEEK) + " from now " +
   addDays); */
if (addDays > 0) c.add(Calendar.DAY_OF_WEEK, addDays);
    return c;
}

static String formatTime(final Context context, int hour, int minute,
                         Alarm.DaysOfWeek daysOfWeek) {
    Calendar c = calculateAlarm(hour, minute, daysOfWeek);
    return formatTime(context, c);
}

/* used by AlarmAlert */
static String formatTime(final Context context, Calendar c) {
    String format = get24HourMode(context) ? M24 : M12;
    return (c == null) ? "" : (String)DateFormat.format(format, c);
}

/**
 * Shows day and time -- used for lock screen
 */
private static String formatDayAndTime(final Context context, Calendar c) {
    String format = get24HourMode(context) ? DM24 : DM12;
    return (c == null) ? "" : (String)DateFormat.format(format, c);
}

/**
 * Save time of the next alarm, as a formatted string, into the system
 * settings so those who care can make use of it.
 */
static void saveNextAlarm(final Context context, String timeString) {
    Settings.System.putString(context.getContentResolver(),
                              Settings.System.NEXT_ALARM_FORMATTED,
                              timeString);
}

/**
 * @return true if clock is set to 24-hour mode
 */
static boolean get24HourMode(final Context context) {
    return android.text.format.DateFormat.is24HourFormat(context);
}

下一个:

日志猫:

08-05 11:42:30.222: E/AndroidRuntime(623):  at com.android.alarmclock.AlarmClock$AlarmTimeAdapter.newView(AlarmClock.java:96)

代码:

public View newView(Context context, Cursor cursor, ViewGroup parent) {
    View ret = mFactory.inflate(R.layout.alarm_time, parent, false);

    ((TextView) ret.findViewById(R.id.am)).setText(mAm);
    ((TextView) ret.findViewById(R.id.pm)).setText(mPm);

    DigitalClock digitalClock =
            (DigitalClock) ret.findViewById(R.id.digitalClock);
    digitalClock.setLive(false);
    return ret;
}

项目:https://github.com/android/platform_packages_apps_alarmclock Apache 2.0

回答1

DigitalClock.java类中的mContext为空。 您必须为其设置上下文。 在你的课堂上添加这个:

mContext=context;

关于第二个问题。 您必须粘贴完整的日志。 问题是什么?

受限制的 HTML

  • 允许的HTML标签:<a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • 自动断行和分段。
  • 网页和电子邮件地址自动转换为链接。

相关推荐
  • 制造商时钟/闹钟包和类名列表,请添加[关闭](Listing of manufacturer's clock / alarm package and class name, Please add [closed])
    问题 关闭。 这个问题需要更加集中。 它目前不接受答案。 想改善这个问题吗? 更新问题,使其仅通过编辑这篇文章来关注一个问题。 4 个月前关闭。 改进这个问题 这不是一个真正的问题,抱歉。 我只是想帮助获取不同 android 制造商时钟和闹钟的闹钟和时钟的包和类名。 我在这里列出了 HTC、三星和股票 android 类名称。 但是你可以猜出包名。 // HTC "com.htc.android.worldclock.TimerAlert",// "com.htc.android.worldclock.AlarmAlert",// // Samsung "com.sec.android.app.clockpackage.ClockPackage",// "com.sec.android.app.clockpackage.alarm.AlarmAlert",// // Motorola "com.motorola.blur.alarmclock.AlarmAlert",// "com.motorola.blur.alarmclock.AlarmClock",// "com.motorola.blur.alarmclock.AlarmTimerAlert", // Stock Android Clock "com.android.alarmclock.AlarmClock",// 1
  • Android闹钟-以编程方式删除闹钟(Android Alarm Clock - Remove alarms programmatically)
    问题 我正在编写一个用户可以在其中配置警报/警报的应用程序。 在这一点上,我一切正常。 我正在使用发出警报 Intent alarmIntent = new Intent(AlarmClock.ACTION_SET_ALARM); alarmIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); alarmIntent.putExtra(AlarmClock.EXTRA_MESSAGE, "Some message!"); Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.MINUTE, 1); alarmIntent.putExtra(AlarmClock.EXTRA_HOUR, calendar.get(Calendar.HOUR_OF_DAY)); alarmIntent.putExtra(AlarmClock.EXTRA_MINUTES, calendar.get(Calendar.MINUTE)); alarmIntent.putExtra(AlarmClock.EXTRA_SKIP_UI, true); context.startActivity(alarmIntent); 我想在用户使用“关闭”按钮关闭后删除此警报。
  • Android闹钟UI(Android Alarm Clock UI)
    问题 我试图弄清楚如何为Android闹钟应用程序设计UI。 这似乎是在使用Holo Dark Theme。 包括的屏幕截图是“创建/编辑警报Activity屏幕。 它看起来类似于Android设置。 是这种情况吗? 因为“打开警报”和“振动”行看起来像ChexboxPreferences 。 “铃声”行看起来像RingtonePreference 。 那“时间”行呢? 正如@eric在以下答案之一的评论中提到的那样,我正在尝试重新创建与闹钟应用程序类似的界面。 我不想发送从我的应用程序启动警报管理器的意图。 那“标签”行呢? 该功能非常类似于EditText视图。 您可以在PreferenceScreen xml标记中结合使用“ Views和Preferences PreferenceScreen吗? 另外, ActionBar具有垂直管道,我不确定该如何创建,但是“完成”视图是ImageButton吗? 我并不完全相信这是首选项的组合,因为“警报”应用程序可以有多个警报,而不仅仅是一个警报。 如果存在多个警报,并且您没有使用多个SharedPreferences文件,则自然地创建一个内容提供程序来存储与多个警报有关的信息是很有意义的。 回答1 库存闹钟应用是开源的,因此请自行检查。 首选项布局请参见此处: <?xml version="1.0" encoding="utf-8"
  • 来自 GIT 的闹钟 - 给出错误 - Android(Alarm Clock from GIT - Gives error - Android)
    问题 我从以下链接下载了闹钟示例: https://github.com/android/platform_packages_apps_alarmclock 我修复了大部分内容,但以下内容除外: Alarms.java: Line 463: Intent alarmChanged = new Intent(Intent.ACTION_ALARM_CHANGED); 错误:ACTION_ALARM_CHANGED 无法解析或不是字段。 无法解决这个问题。 搜索了大部分 SO 和 Google 组。 没有完美的解决方案。 我正在为 9 和 18 的目标运行 minSDK。 有人可以帮我解决这个问题吗? 谢谢! 回答1 您下载的并不是真正的“示例”,而是系统应用程序的来源。 因此,它可以访问您通常无法自己访问的 SDK 的某些部分,因为该应用程序是直接针对 Android 的源代码构建的。 如果您查看Intent源代码,您会发现以下代码段: /** * Alarm Changed Action: This is broadcast when the AlarmClock * application's alarm is set or unset. It is used by the * AlarmClock application and the StatusBar service. *
  • Android—自制Android闹钟3步即可!(2020-6-26)
    Android—只需3步你也能做一个Android闹钟(2020-6-26) 下面是实现图: 步骤一:设置添加闹钟时的布局 要点:添加TimePicker组件 布局文件如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity"> <TimePicker android:id="@+id/time" android:layout_width="match_parent" android:layout_height="wrap_content" tools:ignore="InvalidId" /> <Button android:id="@+id
  • 安卓有准确的重复报警系统吗?(Is there an accurate repeating-alarm system for Android?)
    问题 背景我目前正在为 Android 开发一个应用程序,该应用程序围绕在用户指定的时间发出的警报。 我的意图是它将用于在早上(以及第二天早上 - 又名重复闹钟)唤醒人们。 当警报响起的,它会调用一个Activity有几个选项(如停顿)。 我已经完成了所有这些工作,但我遇到了问题。 问题我正在使用 AlarmManager 来处理我的警报需求。 然而,课堂上发生了一些奇怪的事情(在我看来)。 有两种建议的方法来处理闹钟时间的设置。 即 setInexactRepeating 和 setRepeating。 这些函数的问题是: setInexactRepeating不是很准确。 我的测试表明,这大约在指定的时间被激活,文档表明,这一切都相当模糊; 在此时间之前警报不会触发,但在第一次调用警报之前可能会有几乎整个警报间隔的延迟。 我的测试显示通常会有 5 分钟的延迟。 在这个答案上,用户的平均延迟大约为 12 分钟。 当然,对于一个应该在指定时间唤醒人们的系统来说,这是行不通的。 setRepeating会在指定的时间触发。 然而,文档指出,从 API 19 开始,所有重复的警报都是不准确的。 这正是我不想要的。 从 API 19 开始,所有重复的警报都是不准确的。 由于此方法自 API 3 起就可用,您的应用程序可以安全地调用它,并确保它在当前和旧版本的 Android
  • 以编程方式设置Android闹钟(Set android alarm clock programmatically)
    问题 我正在尝试构建一个个人应用程序,该应用程序将在DeskClock应用程序中设置警报。 我可以在当天的任何时间设置闹钟,但是如何设置第二天或本周晚些时候的闹钟。 通过Android中的AlarmClock api查看,我看不到执行此操作的正常方法。 这有可能吗? 顺便说一句,这是我设置警报的代码,它可能并不漂亮,但是我正在学习。 package com.netwokz.setit; import java.util.Calendar; import java.util.GregorianCalendar; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.provider.AlarmClock; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; public class MainActivity extends Activity implements
  • 科尔多瓦闹钟(Cordova alarm clock)
    问题 我已经构建了一个带有计时器的 Cordova 闹钟应用程序。 一切正常,除了我现在想在时钟结束时通过视觉和音频警报通知用户。 我使用了以下插件进行本地通知:https://github.com/katzer/cordova-plugin-local-notifications 这似乎很好用,只是在手机屏幕关闭时它似乎不起作用。 任何更好的方法的想法。 我可能想要 Android 中的 AlarmManager 之类的东西,但到目前为止我还没有找到它的 Cordova 插件。 回答1 你检查过这个插件吗? https://github.com/uniclau/AlarmPlugin 要调用插件: navigator.plugins.alarm.set(alarmDate, function(){ // SUCCESS }, function(){ // ERROR } ); alarmDate是应用程序将被唤醒的日期。 即使设备已重新启动,也会发生这种情况。 回答2 @AAhad 你的回答激发了我的灵感。 https://github.com/wnyc/cordova-plugin-wakeuptimer 是一个适用于 iOS 和 Android 设备的插件。
  • Android 系统闹铃添加和取消
    Android 系统闹钟的设置 系统闹钟的取消有的手机ROM取消不了,要跳到闹钟界面自己取消 // 设置闹钟 public void setAlarm(String content, int hour, int minute){ ArrayList<Integer> testDays = new ArrayList<>(); testDays.add(Calendar.MONDAY);//周一 testDays.add(Calendar.TUESDAY);//周二 testDays.add(Calendar.WEDNESDAY);//周三 testDays.add(Calendar.THURSDAY); testDays.add(Calendar.FRIDAY);// testDays.add(Calendar.SATURDAY); testDays.add(Calendar.SUNDAY);// Intent alarmIntent = new Intent(AlarmClock.ACTION_SET_ALARM); alarmIntent.putExtra(AlarmClock.EXTRA_DAYS,testDays); // 时间 alarmIntent.putExtra(AlarmClock.EXTRA_MESSAGE,content); // 标题 alarmIntent
  • Android 闹钟应用在 Oreo 下使用 NullPointerException 使 SystemUI 崩溃(仅限)(Android alarm clock app crashes SystemUI with NullPointerException under Oreo (only))
    问题 我有一个 Android 闹钟应用程序。 我有通常的(?)警报意图 -> 接收器 -> 活动链,其最后一步创建一个全屏窗口并发出警报。 所有这些在 Android 的 Pre-Oreo (API 26) 版本上都可以正常工作。 但是在奥利奥上,当警报触发时,系统用户界面崩溃,我在模拟器中遇到了这个异常(这里稍微重新格式化): 12-12 01:15:02.864 9570-9570/com.android.systemui E/AndroidRuntime: FATAL EXCEPTION: main Process: com.android.systemui, PID: 9570 java.lang.NullPointerException: Attempt to invoke virtual method 'void com.android.systemui.statusbar.phone.NavigationBarFragment.onKeyguardOccludedChanged(boolean)' on a null object reference at com.android.systemui.statusbar.phone.StatusBar.onKeyguardOccludedChanged(StatusBar.java:3843) at com
  • 警报通知立即触发。 安卓(Alarm Notification fires instantly. Android)
    问题 我正在研究在固定时间向用户发送通知的提醒。 警报立即响起…… 我在stackoverflow尝试了大部分建议,但仍然有同样的问题 请帮我解决这个问题。 服务器数据 user_reminder": [ { "id": "75", "name": "Morning Snacks", "time": "11:00:00", "days": "1,2,3,4,5,6,7", "user_id": "14" }, { "id": "76", "name": "Lunch", "time": "13:00:00", "days": "1,2,3,4,5,6,7", "user_id": "14" }, ...... ] 我的代码 for (int i = 0; i < reminderList.size(); i++) { String time = reminderList.get(i).getTime(); // "time": "11:00:00" String strSpit[] = time.split(":"); String strDays[] = reminderList.get(i).getDays().split(","); //"days": "1,2,3,4,5,6,7" Date date = new Date(); Calendar calNow =
  • 打算在Android上启动Clock应用程序(Intent to launch the clock application on android)
    问题 我制作的时钟小部件面临问题。 我希望用户触摸时钟并在手机上启动时钟应用程序。 这是代码: //this worked on my nexus 2.1 if(VERSION.SDK.equals("7")){ RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget); Intent AlarmClockIntent = new Intent(Intent.ACTION_MAIN).addCategory(Intent.CATEGORY_LAUNCHER).setComponent(new ComponentName("com.android.deskclock", "com.android.deskclock.DeskClock")); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, AlarmClockIntent, 0); views.setOnClickPendingIntent(R.id.Widget, pendingIntent); AppWidgetManager.getInstance(context).updateAppWidget(intent
  • 如何在Android中处理警报通知?(How to handle Alarm notification in Android?)
    问题 我正在开发一个适用于Android的媒体播放器应用程序,我需要处理该应用程序的所有警报通知,并在此基础上暂停播放。 当“警报”被打或关闭时,我将继续播放。 我在Google上搜索了很多有关警报处理的内容,但发现的是通过代码启用警报通知,设置意图然后进行处理的方法。 但是,仅在处理警报通知部分时,我找不到任何地方。 我不需要打开警报,它可以由用户设置,也不需要以编程方式进行。 我所需要的只是处理该通知。 有什么想法会非常有用吗? 谢谢,嘘 回答1 嗨Asheesh Vashishtha, 请对此进行纠正,但是只要激活了任何其他应用程序(即使它是闹钟),AFIFK肯定会在后台进行活动。 所以我想你可以重写OnPause和OnResume函数来放一些代码。 就小睡或其他事情而言,它们都将导致“警报活动”被破坏(或暂停,对此不甚了解),并且您的活动将恢复。 这样您就不必担心了! 希望这可以帮助... 回答2 AFAIK,除了您收到有关任何其他第三方闹钟的通知之外,您没有其他方式可以通知您闹钟应用程序的功能。 请注意, AlarmManager (您可能正在阅读的内容)与“ Alarm Clock”(闹钟)应用程序不同。 对不起! 回答3 在开发媒体播放器时,我遇到了类似的情况。 我的解决方案是使用AudioManager的OnAudioFocusChangeListener 。
  • 设置闹钟不起作用(setAlarmClock not working)
    问题 我使用的是IntentService准备报警和使用setAlarmClock内就设置报警。 IntentService总是在适当的时间运行并设置闹钟(图标会显示),但闹钟将在 100 次中工作大约 99 次。当一个闹钟失败时,每个具有类似Intent闹钟都会失败,直到您完全关闭应用程序(在PendingIntent requestsCode是什么并不重要)。 无论如何,在预定的警报时间之前的微秒称为: 09-19 16:10:59.996 1374-2126/? V/AlarmManager: Expired Alarm result :4 09-19 16:11:00.046 1374-2126/? D/VirtualScreenPolicy: applyVirtualScreenAttrs attrs=VirtualScreenAttrs{mDisplayId=0, mBaseDisplayId=0, mBaseActivity=false} 09-19 16:11:00.046 1374-2126/? D/GameManagerService: identifyGamePackage. com.simplyneededapps.ridealarm 09-19 16:11:00.046 1374-2126/? D/MultiWindowPolicy: Gamemode -
  • 安卓:报警管理器(Android: Alarm Manager)
    问题 这是代码: public void startAlarm(Context context) { Intent intent = new Intent(context, SyncService.class); PendingIntent sender = PendingIntent.getService(context, 0, intent, 0); AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE); am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, 10 min, 20 min, sender); } 这是我开始闹钟的方法...我在 onCreate 方法的主要活动中使用它...如果我在设置中更改某些内容,并且我想更改重复时间怎么办? 怎么做? 我应该杀死那个并开始新的吗? 回答1 如果您阅读文档,您会注意到以下内容: 如果已经为同一个 IntentSender 安排了警报,它将首先被取消。
  • 使用51单片机自制电子万年历(包含驱动、基本万年历、闹钟、日程、修改时间等)
    使用51单片机自制电子万年历(包含驱动、基本万年历、闹钟、日程、修改时间等) 归档51单片机制作电子万年历,以及proteus仿真电路图,本设计涵盖蜂鸣器、uart、timer、矩阵扫描、lcd1602显示、基本万年历(年/月/日/时/分/秒)、闹钟、日程、修改时间和小游戏等各项功能,基本上覆盖使用了51单片机内部所有资源。 仿真结果展示 基本万年历运行结果: 设定闹钟运行结果: 设定日程运行结果: 修改时间运行结果: 小游戏运行结果: 仿真电路图 仿真平台使用proteus7.10。 代码目录结构 |—source # 电子万年历源码 |—|---include.h # 公共定义 |—|---main.c # 主函数 |—|---main.h |—±–base # 基本万年历 |—|-------clock.c |—|-------clock.h |—±–drv # 电子万年历驱动 |—|---±–buzzer # 蜂鸣器 |—|---|-------buzzer.c |—|---|-------buzzer.h |—|---±–keyboard # 矩阵键盘 |—|---|-------keyboard.c |—|---|-------keyboard.h |—|---±–lcd1602 # lcd1602 |—|---|-------lcd1602.c |—|---|----
  • 如何快速创建闹钟应用程序?(How to create an alarm clock app with swift?)
    问题 我正在尝试使用 swift 创建一种闹钟应用程序,但我不知道如何设置闹钟模型。 我已经尝试过UILocalnotification但我不希望我的用户除了设置闹钟之外还涉及闹钟应用程序的流程。 然后尝试了NSTimer和NSRunloop等,但这也不起作用,因为当应用程序获得后台时它们不起作用。 那么有没有其他方法可以做到这一点? 任何帮助和建议将不胜感激,谢谢。 回答1 我一直在做这方面的研究已经有一段时间了。 但没有找到任何具体的方法来做到这一点。 您必须使用列表中的以下选项之一并制定逻辑以从后台唤醒应用程序。 对于警报,您可以在此处浏览博客。 它具有详细信息,您可以使用这些详细信息在 info.plist 文件中使用UIApplicationExitsOnSuspend创建逻辑。 回答2 正如已经建议的那样,自 iOS 7 以来,让应用程序在后台运行的唯一方法是允许其中一种后台模式。 后台模式 您可以在项目设置的 Capabilities 部分找到它们。 只要您的应用程序不属于其中之一,您就不走运了 :(... 我曾经试图写一个与你的类似的应用程序,现在真的没有办法做到这一点。 干杯,TK
  • 是否可以从 iPhone 上的不同应用程序更改/设置闹钟(Is it possible to change/set the alarm clock from a different application on the iPhone)
    问题 是否可以访问诸如闹钟时间之类的信息并从 iPhone 上的其他应用程序更改它。 如果可以的话,能不能得到应用商店的批准才能出售? 回答1 你当然可以这样做——CFPreferences API 可能是正确的方法——但你绝对不会被允许进入 App Store。 如果您想制作闹钟应用程序,请查看调度本地通知文档。
  • 如何显示与闹钟小部件(时钟应用程序)相同的小部件?(How to show the widget same like an Alarm widget (Clock APP)?)
    问题 我需要做与时钟闹钟功能相同的应用程序。 一旦我们将闹钟设置了一段时间,例如 3.15PM(即使应用程序未处于运行状态)它会显示在 今天通知屏幕 - 我们可以使用 APP 扩展(使用用户默认值)来做到这一点(你的警报......),对吧? 作为弹出屏幕锁定屏幕中的警报弹出 - 我的问题- 一种。 我们如何才能同时实现2和3,这是同一个APP扩展概念吗? 湾首先 - 我相信他们使用了用户默认值,我们可以在 APP 扩展中进行 API 访问,例如定期检查 Web 服务吗? 请提出解决方案/想法来实现这一目标。 谢谢! 回答1 不,这与应用扩展程序或小部件不同。 我也,不相信有可能做你想做的事。
  • UWP C# Windows 10 IoT 闹钟(UWP C# Windows 10 IoT Alarm Clock)
    问题 我正在尝试编写一个闹钟应用程序,该应用程序可以设置多个警报以触发 Raspberry Pi 上的输出引脚。 有没有我可以参考的参考项目? 或者是否有Windows 10 闹钟应用程序参考代码可供参考? 我想了解如何保存单个警报并显示它们。 我如何使用DispatchTimer来监控所有设置的警报? 谢谢。 更新:预期的警报设置如下所示。 我创建约会的代码部分如下。 但我似乎无法看到任何创建为 UWP 约会样本的任命。 private void Save_PrimaryButtonClick(ContentDialog sender, ContentDialogButtonClickEventArgs args) { var appointment = new Windows.ApplicationModel.Appointments.Appointment(); var recurrence = new Windows.ApplicationModel.Appointments.AppointmentRecurrence(); var scheduleTime = TimePicker.Time; var timeZoneOffset = TimeZoneInfo.Local.GetUtcOffset(DateTime.Now); var startTime = new