1.需要将APK的主Activity的Category声明为"android.intent.category.HOME",并且设置其优先级要高于默认的Launcher。基中的优先级,可以根据自己的需求灵活设置。因为可能其他的Activity也会有同样的需求。
例如
例如
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter android:priority="10">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</activity>
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter android:priority="10">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</activity>
2.在完成自己的开机向导之后,需要通过PMS的接口禁止掉自己的应用,这样才能在后面的home-key不再起来。
例如:
例如:
[Java]hide
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
/mediatek/packages/apps/OOBE/src/com/mediatek/oobe/basic/MainActivity.java private
void
finishOOBE() { //disable
WizardActivity PackageManager
pm = getPackageManager(); ComponentName
name = new
ComponentName( this ,
WizardActivity. class ); int
state = pm.getComponentEnabledSetting(name); if
(state != PackageManager.COMPONENT_ENABLED_STATE_DISABLED) { pm.setComponentEnabledSetting(name,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); }
|