PackageInstaller 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供安裝、升級及移除裝置應用程式的功能。
[Android.Runtime.Register("android/content/pm/PackageInstaller", DoNotGenerateAcw=true)]
public class PackageInstaller : Java.Lang.Object
[<Android.Runtime.Register("android/content/pm/PackageInstaller", DoNotGenerateAcw=true)>]
type PackageInstaller = class
inherit Object
- 繼承
- 屬性
備註
提供安裝、升級及移除裝置應用程式的功能。 這包括支援以單一「單一」APK 形式包裝的應用程式,或是以多個「分割」APK 形式包裝的應用程式。
應用程式會透過一個 PackageInstaller.Session,任何應用程式都能建立安裝。 建立會話後,安裝程式可以串流一個或多個 APK,直到決定要提交或銷毀該會話。 提交可能需要使用者介入以完成安裝,除非呼叫者屬於以下任一類別,此時安裝將自動完成。
<UL><Li>裝置擁有者 <Li>關聯設定擁有者 </ul>
Session可以安裝全新應用程式、升級現有應用程式,或在現有應用程式中新增分割功能。
以多個分割 APK 包裝的應用程式,總是包含一個「基礎」APK(帶有 null 分割名稱)和零個或多個「分割」APK(具有獨特分割名稱)。 只要符合以下條件,這些 APK 的任意子集都可以一起安裝: <ul><li>所有 APK 必須擁有完全相同的套件名稱、版本碼和簽署憑證。
<li>所有 APK 必須有獨特的分割名稱。
<li>所有設施必須包含單一基地 APK。
</ul>
ApiDemos 專案包含使用此 API 的範例: ApiDemos/src/com/example/android/apis/content/InstallApk*.java。
Java 文件 android.content.pm.PackageInstaller。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。
建構函式
| 名稱 | Description |
|---|---|
| PackageInstaller(IntPtr, JniHandleOwnership) |
用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。 |
欄位
| 名稱 | Description |
|---|---|
| ActionSessionCommitted |
廣播動作:當新安裝的會話提交時,明確地傳送到最後已知的預設啟動器。 |
| ActionSessionDetails |
活動動作:顯示特定安裝會話的詳細資訊。 |
| ActionSessionUpdated |
廣播動作:當階段安裝會話狀態更新時,傳送相關資訊。 |
| DeveloperVerificationFailedReasonDeveloperBlocked |
已淘汰.
開發者驗證失敗,因為開發者無法被驗證,驗證者透過以下方式回報
|
| DeveloperVerificationFailedReasonNetworkUnavailable |
已淘汰.
開發者驗證失敗,因為網路無法使用。 |
| DeveloperVerificationFailedReasonUnknown |
已淘汰.
開發者驗證失敗的原因不明,例如驗證器逾時或無法連線。 |
| ExtraDeveloperVerificationExtensionResponse |
一個額外內容,包含開發者驗證者對安裝程式提供的任何擴充參數所提供的回應。 |
| ExtraDeveloperVerificationFailureReason |
當安裝失敗,因為開發者驗證不完整或被阻擋時,這個額外內容會提供一個解釋原因的程式碼,例如 |
| ExtraDeveloperVerificationLitePerformed |
額外內容包含一個布林值,顯示開發者驗證的輕量版是否已在待安裝的應用程式上執行。 |
| ExtraInstallConstraints |
|
| ExtraInstallConstraintsResult |
|
| ExtraOtherPackageName |
另一個與狀態相關的包裹名稱。 |
| ExtraPackageName |
一個操作正在使用的套件名稱。 |
| ExtraPreApproval |
請說明狀態是否為預先核准申請。 |
| ExtraSession |
|
| ExtraSessionId |
一個整數的會話 ID,操作正在運作。 |
| ExtraStatus |
目前行動狀態。 |
| ExtraStatusMessage |
詳細的字串表示狀態,包括對除錯有用的原始細節。 |
| ExtraStoragePath |
與狀態相關的儲存路徑。 |
| ExtraUnarchiveAllUsers |
如果屬實,取消歸檔的請求者已指定該應用程式對所有使用者都應取消歸檔。 |
| ExtraUnarchiveId |
額外欄位是 unarchive ID。 |
| ExtraUnarchivePackageName |
額外欄位是用於要求取消封存的套件名稱。 |
| ExtraUnarchiveStatus |
未歸檔作業的現況。 |
| PackageSourceDownloadedFile |
已淘汰.
顯示安裝套件來自使用者下載到裝置的檔案的程式碼。 |
| PackageSourceLocalFile |
已淘汰.
程式碼顯示該套件來自裝置上的本地檔案。 |
| PackageSourceOther |
已淘汰.
程式碼顯示所安裝的套件來自一個來源,其他套件來源常數無法反映。 |
| PackageSourceStore |
已淘汰.
程式碼顯示安裝的套件來自商店。 |
| PackageSourceUnspecified |
已淘汰.
安裝程式沒有呼叫 |
| StatusFailureTimeout |
已淘汰.
操作失敗是因為它未在指定的逾時內完成。 |
| UnarchivalErrorInstallerDisabled |
已淘汰.
負責取消歸檔的安裝程式被停用了。 |
| UnarchivalErrorInstallerUninstalled |
已淘汰.
負責取消歸檔的安裝人員已被移除 |
| UnarchivalErrorInsufficientStorage |
已淘汰.
儲存空間不足以解除封存應用程式。 |
| UnarchivalErrorNoConnectivity |
已淘汰.
這台裝置沒有連接網路 |
| UnarchivalErrorUserActionNeeded |
已淘汰.
使用者需要與安裝程式互動才能啟用安裝。 |
| UnarchivalGenericError |
已淘汰.
通用錯誤:應用程式無法恢復歸檔。 |
| UnarchivalOk |
已淘汰.
非檔案化是可能的,且將開始。 |
屬性
| 名稱 | Description |
|---|---|
| ActiveStagedSession |
回傳第一個活躍分階段的會話,或 |
| ActiveStagedSessions |
返回活躍分階段會話列表。 |
| AllSessions |
回傳所有已知安裝時段的清單,不論安裝程式為何。 |
| Class |
回傳此 |
| DeveloperVerificationServiceProvider |
回傳開發驗證服務提供者的元件名稱,以便與特定驗證器在擴充參數及回應結構上互動。 |
| Handle |
底層 Android 實例的帳號。 (繼承來源 Object) |
| JniIdentityHashCode |
取得由互通執行時指派給此 Java 對等端的身份雜湊碼。 (繼承來源 Object) |
| JniManagedPeerState |
提供安裝、升級及移除裝置應用程式的功能。 (繼承來源 JavaObject) |
| JniPeerMembers |
提供安裝、升級及移除裝置應用程式的功能。 |
| MySessions |
回傳所有已知安裝會話清單,該應用程式擁有的已擁有。 |
| PeerReference |
取得這個 Java 節點的 JNI 物件參考。 (繼承來源 Object) |
| StagedSessions |
回傳所有分階段安裝會話的清單。 |
| ThresholdClass |
此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。 |
| ThresholdType |
此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。 |
方法
明確介面實作
| 名稱 | Description |
|---|---|
| IJavaPeerable.Disposed() |
提供安裝、升級及移除裝置應用程式的功能。 (繼承來源 JavaObject) |
| IJavaPeerable.Finalized() |
提供安裝、升級及移除裝置應用程式的功能。 (繼承來源 JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
提供安裝、升級及移除裝置應用程式的功能。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
提供安裝、升級及移除裝置應用程式的功能。 (繼承來源 JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
提供安裝、升級及移除裝置應用程式的功能。 (繼承來源 JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
提供安裝、升級及移除裝置應用程式的功能。 (繼承來源 JavaObject) |
擴充方法
| 名稱 | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
取得實例 |
| JavaAs<TResult>(IJavaPeerable) |
試著強制 |
| JavaCast<TResult>(IJavaObject) |
執行 Android 執行時檢查型別轉換。 |
| JavaCast<TResult>(IJavaObject) |
提供安裝、升級及移除裝置應用程式的功能。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
試著強制 |