Android设置应用手机屏幕启动流程(一)

转载请注明出处:http://blog.csdn.net/droyon/article/details/19568941

设置应用启动入口类为Settings.java,在AndroidManifest.xml中的配置如下:

<activity android:name="Settings"
                android:label="@string/settings_label_launcher"
                android:taskAffinity="com.android.settings"
                android:launchMode="singleTask">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="android.settings.SETTINGS" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

其他应用可以通过Intent发送Action或者指定类名类启动,如下:

intent.setComponent(new ComponentName("com.android.settings", "com.android.settings.Settings"));

ps:如果想更改设置入口类并且保证android其他应用调用设置接口不变,可如下操作:

<activity-alias android:name="Settings"
                android:label="@string/settings_label_launcher"
                android:taskAffinity="com.android.settings"
                android:screenOrientation="portrait"
                android:targetActivity="SelfCodeSettings"
                android:launchMode="singleTask">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <!-- <action android:name="android.settings.SETTINGS" /> -->
                <category android:name="android.intent.category.DEFAULT" />
                <!-- <category android:name="android.intent.category.LAUNCHER" /> -->
            </intent-filter>
        </activity-alias>

不过,一般情况下没这种需求,如果有次需求,可采用如上方案。

设置的启动流程,大体分以下三类:

1、通过Menu--〉设置进入

2、通过如下方式进入设置二级界面。

intent.setComponent(new ComponentName("com.android.settings", "com.android.settings.Settings$WirelessSettingsActivity"));

3、通过快捷方式进入设置子项界面

而每一种启动方式都分为手机屏幕和平板屏幕之分。

本文介绍在手机屏幕中通过Menu--〉设置这种方式启动设置应用的流程。不妥之处,欢迎大家交流。

 

手机屏幕启动流程过程中,方法执行如下图所述:

Android设置应用手机屏幕启动流程(一)_第1张图片

 

注释一、设置应用的启动。

通过两种方式都可以启动设置应用。

1、intent.setComponent(new ComponentName("com.android.settings", "com.android.settings.Settings"));
2、intent.setAction("android.settings.SETTINGS");

 

你可能感兴趣的:(设置应用启动流程一)