尝试呼叫闹钟时权限被拒绝

时间:2012-02-09 11:26:44

标签: android android-intent android-alarms

我正在尝试编写一个需要用户设置闹钟的应用。我尝试使用以下代码

来调用闹钟
    Intent i = new Intent(AlarmClock.ACTION_SET_ALARM);
    i.putExtra(AlarmClock.EXTRA_MESSAGE, "MMTS train to catch rush up ...");
    i.putExtra(AlarmClock.EXTRA_HOUR, d.getHours());
    i.putExtra(AlarmClock.EXTRA_MINUTES, d.getMinutes());
    activity.startActivity(i);

例外是

    Permission Denial: starting Intent { act=android.intent.action.SET_ALARM
    cmp=com.android.deskclock/.HandleSetAlarm (has extras) } from
    ProcessRecord{414d1210 812:com.arjun.android.mmts/10041} (pid=812, uid=10041)
    requires com.android.alarm.permission.SET_ALARM

我正在开发Android 4.0 API版本14。

我添加了

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

在我的清单文件中,即使之后它也无效。

1 个答案:

答案 0 :(得分:9)

您需要在清单中声明违规权限:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="you.package"
    android:versionCode="1"
    android:versionName="1.0" >

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