2

使用 AlarmManager,我可以从 android 应用程序中随时设置闹钟。但是有没有办法列出我设置的所有警报。我应该采取什么方法,因为 AlarmManager 不提供此类方法。我应该将警报保存为内存中的文件吗?

请帮我解决一下这个。

4

2 回答 2

2

A.这篇文章对此有很好的解释。无法保证 AlarmClock 应用程序将在安装了您的应用程序的每台设备上。例如,许多 HTC 手机将其替换为 HTC 自己的“世界时钟”应用程序。

但是,假设现有的 AlarmClock 应用程序存在,您应该能够从其内容提供程序获取光标。以这个项目为例。

B.您必须为 ListView 的项目创建布局。

您可以在 Internet 上找到有关此的教程:http : //www.vogella.com/articles/AndroidListView/article.html http://codehenge.net/blog/2011/05/customizing-android-listview-item-layout/

C。

final String tag_alarm = "tag_alarm";
Uri uri = Uri.parse("content://com.android.alarmclock/alarm")
Cursor c = getContentResolver().query(uri, null, null, null, null);
Log.i(tag_alarm, "no of records are" + c.getCount());
Log.i(tag_alarm, "no of columns are" + c.getColumnCount());
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.i(tag_alarm, c.getColumnName(j) + " which has value " + c.getString(j));
            }
        } while (c.moveToNext());
    }
}
于 2013-01-29T10:03:53.037 回答
1

通过访问所有可能的链接,我找到了一个解决方案,即创建一个应用程序来检索在操作系统级别设置的警报是不可能的。是的..在某种程度上这是可能的,但在许多情况下它会依赖于机器。

所以更好的选择是将警报保存在数据库中。

于 2013-01-29T10:09:56.953 回答