Запуск Activity from Preference Activity вызывает исключение отказа от разрешения

У меня здесь проблема. Что я хочу сделать, так это запустить Activity из PreferenceActivity. Таким образом, мой preference.xml, который содержит шаблон предпочтений, выглядит следующим образом:

<Preference android:title="Launch Activity" > <intent android:action="org.momo.SOME_ACTIVITY" /> </Preference> 

Явлению известно о действиях, которые я хочу запустить.

 <activity android:label="@string/app_name" android:name="SomeActivity"> <intent-filter> <category android:name="android.intent.category.DEFAULT" /> <action android:name="org.momo.SOME_ACTIVITY" /> </intent-filter> </activity> 

Угадайте, что, я получаю исключение безопасности (отказ в разрешении), когда я хочу его запустить. Я что-то упускаю? Мое понимание намерений все еще немного неполно, но я подумал, что он должен работать именно так.

Спасибо за любую помощь!

Solutions Collecting From Web of "Запуск Activity from Preference Activity вызывает исключение отказа от разрешения"

Создание фильтра намерения кажется слегка обходным путем. Это более простой подход:

 <PreferenceScreen android:title="@string/settings.title" android:summary="@string/settings.summary"> <intent android:targetPackage="com.companyname.appname" android:targetClass="com.companyname.appname.classname"/> </PreferenceScreen> 

Полностью рабочий пример В вашем preference.xml

 <Preference android:title="@string/settings_title_notification_silent_mode" android:summary="@string/settings_title_notification_silent_mode_summary"> <intent android:action="com.activity.SilentModeList"/> <!-- SilentModeList its activity --> </Preference> 

В вашем manifest.xml

  <activity android:name="com.activity.SilentModeList" android:label="@string/ac_settings_description"> <intent-filter> <action android:name="com.activity.SilentModeList" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> </activity> 

В моем случае все мои настройки xml были правильными.

Но активность, которую я запустил (называемую AppPreferences ) из-за плохого AppPreferences существовала в местах: [package].AppPreferences и [ [package].commmon.Preferences Из-за import common._ , это воспринималось как активность и, конечно же, Он не был объявлен в манифесте Android. Мне просто пришлось удалить вторую активность из моего кода и вуаля!