4

Android Lollipop では、通知を長押しすると、その通知のアプリの設定 (優先度など) にアクセスしたり、単純にブロックしたりできます。これらの設定にアクセスするために使用できるインテントはありますか?

4

2 に答える 2

2

@shmuel からの正解に加えて:

この「アプリ設定」システム ボタンを、PreferenceActivity から派生したアプリの設定アクティビティの特定のフラグメントにジャンプさせたい場合は、ダミーの中間アクティビティを作成して、上記の詳細のようにインテント フィルターを処理し、このアクティビティで単純に行う:

public class DeepSettingsFragmentDummyActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        Intent settingsIntent = new Intent(this, SettingsActivity.class);
        // Standard mechanism for a PreferenceActivity intent to indicate
        // which fragment to activate automatically.
        settingsIntent.putExtra( PreferenceActivity.EXTRA_SHOW_FRAGMENT,
            YourTargetPreferenceFragment.class.getName());

        startActivity(settingsIntent);
        finish();
    }
}

このコードは、フラグメントを自動的に起動し、ユーザーが [戻る] を押したときにアクティビティ スタックに残らないように、YourTargetPreferenceFragmentそれ自体を閉じます ( )。finish()

マニフェストには次が含まれている必要があります。

    <activity
        android:name=".DeepSettingsFragmentDummyActivity"
        android:label="...">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.NOTIFICATION_PREFERENCES" />
        </intent-filter>
    </activity>
于 2016-05-05T15:08:26.067 に答える