1
我在向「setComponentEnabledSetting()」提供正確屬性時遇到問題 - 我得到IllegalAttributeException,說該.class無法找到或不存在。啓用或禁用已註冊的接收器
接收者在應用程序清單中聲明,接收者處理程序存儲在一個單獨的包(com.app.receivers)中。在清單文件中,它們的名稱屬性是「.receivers.OnBoot」。到目前爲止,我對這個設置沒有任何問題 - 接收器正在工作等,但現在我試圖爲用戶添加一個功能來啓用/禁用接收器。
ComponentName rec = new ComponentName("com.app.receivers", "OnBoot.class");
getPackageManager().setComponentEnabledSetting(rec, ....);
我已經嘗試了很多不同的替代方法來獲取有效的ComponentName,但都失敗了。 如何正確引用此接收器,以便setComponentEnabledSetting()可以找到它?
你嘗試過它作爲'單元名REC =新的組件名稱(「com.app.receivers」 ,「com.app.receivers.OnBoot」); ...'? –
噢,我想有時你必須在發現問題之前發佈一個問題:)是的,當然,....我不知道這個.class從哪裏來,並沒有關注它。當然,它正在工作:)請張貼答案,以便我可以接受你的努力。 – hpet