1

我想使用以下代码在移动 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

有人知道我必须在这里使用什么许可吗?我找了很多,找不到有用的东西,谢谢你的帮助

4

1 回答 1

1

您可以使用警报类设置警报,请参见此处

或者您无法访问此 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"/>
于 2012-07-15T16:07:25.057 回答