Intent.ResolveActivity(PackageManager) 方法

定義

回傳應該用來處理此意圖的活動元件。

[Android.Runtime.Register("resolveActivity", "(Landroid/content/pm/PackageManager;)Landroid/content/ComponentName;", "GetResolveActivity_Landroid_content_pm_PackageManager_Handler")]
public virtual Android.Content.ComponentName? ResolveActivity(Android.Content.PM.PackageManager pm);
[<Android.Runtime.Register("resolveActivity", "(Landroid/content/pm/PackageManager;)Landroid/content/ComponentName;", "GetResolveActivity_Landroid_content_pm_PackageManager_Handler")>]
abstract member ResolveActivity : Android.Content.PM.PackageManager -> Android.Content.ComponentName
override this.ResolveActivity : Android.Content.PM.PackageManager -> Android.Content.ComponentName

參數

pm
PackageManager

用來解析意圖的套件管理器。

傳回

實作可顯示意圖的活動元件名稱。

屬性

備註

回傳應該用來處理此意圖的活動元件。 根據意圖中的資訊決定適當的組件,評估方式如下:

#getComponent 回傳明確類別,則會回傳該類別,無需進一步考慮。

該活動必須符合 Intent#CATEGORY_DEFAULT 要考慮的意圖類別。

#getAction 非 NULL,則活動必須處理此動作。

#resolveType 回傳非 NULL,則該活動必須處理此類型。

如果 #addCategory 新增了任何類別,該活動必須處理所有指定的類別。

#getPackage 非 NULL,則僅考慮該應用程式套件中的活動元件。

若無活動滿足所有條件,則回傳空字串。

若發現多項活動能滿足意圖,則使用優先順序最高的一項。 如果有多個活動具有相同優先順序,系統會根據使用者偏好選擇最佳活動,或解析成一個系統類別,讓使用者能選擇活動並從那裡轉發。

此方法透過將「defaultOnly」參數 true 呼叫 PackageManager#resolveActivity 來實作。

這個 API 是從意圖啟動活動時被呼叫的。 你通常不需要自己打電話。

Java 文件 android.content.Intent.resolveActivity(android.content.pm.PackageManager)

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於

另請參閱