我怎样才能在android中获得时钟闹钟

时间:2012-07-15 14:02:51

标签: android android-contentprovider alarms

我想使用以下代码在移动iam中的时钟应用程序中获取警报

Uri uri = Uri.parse("content://com.android.deskclock/AlarmClock");
        Cursor c = mContext.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 {
                    int i = 0;
                    for (int j = 0; j < c.getColumnCount(); j++) {
                    }
                } while (c.moveToNext());
            }
        }

我得到以下例外

java.lang.SecurityException: Permission Denial: opening provider 
com.android.deskclock.AlarmProvider from ProcessRecord{4162b268 
12999:com.genie9.gcloudbackup/10059} (pid=12999, uid=10059) that is not exported from uid 10011

有谁知道我必须在这里使用的权限是什么?我已经搜索了很多,找不到任何有用的东西,谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

您可以使用闹钟类see here

设置闹钟

或您无法访问此uri。但您可以使用以下代码通过闹钟设置闹钟,

Intent i = new Intent(AlarmClock.ACTION_SET_ALARM);
    i.putExtra(AlarmClock.EXTRA_HOUR, 9);
    i.putExtra(AlarmClock.EXTRA_MINUTES, 37);
    startActivity(i);

您需要在下面的清单中添加权限

<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>