如何在android中获取所有警报数据

问题描述 投票:0回答:1

无论系统时钟还是任何第三方应用程序设置的所有警报数据,我该如何检索?我需要跟踪用户的睡眠方式。这是我到目前为止尝试过的

    final String tag_alarm = "tag_alarm";
    Uri uri = Uri.parse("content://com.android.alarmclock/alarm");
    Cursor c = getContentResolver().query(uri, null, null, null, null);
    if (c != null) {
        String names[] = c.getColumnNames();
        for (String temp : names) {
            System.out.println(temp);
        }
        if (c.moveToFirst()) {
            do {
                for (int j = 0; j < c.getColumnCount(); j++) {
                    Log.d(tag_alarm, c.getColumnName(j)
                            + " which has value " + c.getString(j));
                }
            } while (c.moveToNext());
        }
    }

但是不幸的是,光标值c始终返回null。

this问题开始,我似乎可以转储警报数据以用于调试,但我需要在生产应用程序中使用它们。

android alarmmanager android-alarms
1个回答
0
投票

如果您是指活动警报,即设备的“闹钟应用程序”中的警报,我认为可以。尝试从https://developer.android.com/reference/android/provider/AlarmClock.html中检出方法。

但是,如果您想在设备上查看由AlarmManager创建的所有警报,那么很遗憾,您不能以编程方式进行操作。

但是,您可以像这样在文本文件中查看转储数据:

adb shell dumpsys alarm > dump.txt
© www.soinside.com 2019 - 2024. All rights reserved.