一旦我的主屏幕应用程序“X”安装该设备时,用户按下Home键,他与默认操作的Android对话框提示的默认主页和我的X应用程序之间进行选择的。
我的使用情况是继续提示用户 - 有点罕见,虽然,这种默认操作对话框,直到他选择我的应用程序为默认值。
- 我可以做一个ACTION_MAIN意图的提示。
- 问题是,当我应该停止提示?
我怎么会知道我的X应用程序是默认了吧?
一旦我的主屏幕应用程序“X”安装该设备时,用户按下Home键,他与默认操作的Android对话框提示的默认主页和我的X应用程序之间进行选择的。
我的使用情况是继续提示用户 - 有点罕见,虽然,这种默认操作对话框,直到他选择我的应用程序为默认值。
比方说,你有一个应用程序X,在其清单如下声明
<activity android:name=".MyActivity"
android:label="@string/app_name">
<!-- filter: This activity can be the default view action for a row in
RawContacts -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<data android:mimeType="vnd.android.cursor.item/raw_contact" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
为了简单地检查这个应用程序是否是“默认选项”(在此examepl 任何东西 )你:
/**
* Returns true if the supplied component name is the preferred activity
* for any action.
* @param component The ComponentName of your Activity, e.g.
* Activity#getComponentName().
*/
boolean isDefault(ComponentName component) {
ArrayList<ComponentName> components = new ArrayList<ComponentName>();
ArrayList<IntentFilter> filters = new ArrayList<IntentFilter>();
getPackageManager().getPreferredActivities(filters, components, null);
return components.contains(component);
}