語言

RestrictionsManager 類別

定義

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。

[Android.Runtime.Register("android/content/RestrictionsManager", DoNotGenerateAcw=true)]
public class RestrictionsManager : Java.Lang.Object
[<Android.Runtime.Register("android/content/RestrictionsManager", DoNotGenerateAcw=true)>]
type RestrictionsManager = class
    inherit Object
繼承
RestrictionsManager
屬性

備註

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。 應用程式也可以向本地或遠端裝置管理員發送權限請求,以覆蓋預設的應用程式專屬限制或其他需要管理員明確授權的操作。

應用程式可以透過清單中指定的 XML 檔案揭露一組限制。

如果使用者有啟用的限制提供者,除了靜態限制外,還可以提出動態請求。 動態請求是應用程式專屬的,可以透過預先定義的請求類型來表達。

限制管理器會將動態請求轉發給活躍的限制提供者。 限制提供者可透過呼叫 #notifyPermissionResponse(String, PersistableBundle)回應回應,當收到裝置或使用者管理員的回應時。 回應會透過受保護的廣播 #ACTION_PERMISSION_RESPONSE_RECEIVED回傳給應用程式。

靜態限制由 XML 檔案指定,XML檔案由清單中的元資料屬性參考。 這讓應用程式以及任何網頁管理主控台都能讀取 apk 中可用的限制清單。

XML 格式的語法如下:

&lt;?xml version="1.0" encoding="utf-8"?&gt;
            &lt;restrictions xmlns:android="http://schemas.android.com/apk/res/android" &gt;
                &lt;restriction
                    android:key="string"
                    android:title="string resource"
                    android:restrictionType=["bool" | "string" | "integer"
                                                    | "choice" | "multi-select" | "hidden"
                                                    | "bundle" | "bundle_array"]
                    android:description="string resource"
                    android:entries="string-array resource"
                    android:entryValues="string-array resource"
                    android:defaultValue="reference" &gt;
                        &lt;restriction ... /&gt;
                        ...
                &lt;/restriction&gt;
                &lt;restriction ... /&gt;
                ...
            &lt;/restrictions&gt;

每個限制的屬性取決於限制類型。

<UL><LI>key,title且restrictionType是強制的。</li><li>entries 和 entryValues 若是 restrictionType 或 choicemulti-select則是必填。</li><li>defaultValue 是可選的,其類型取決於 restrictionType</li><>hidden li 類型必須有 adefaultValue,且不會顯示給管理員。 它可以用來傳遞無法修改的資料,例如版本碼。</li><li>description 是用來更詳細描述限制,指的是管理數值的管理者,如果標題本身還不夠。</li></ul>

只有類型 和 bundle 的bundle_array限制可以包含一個或多個巢狀限制元素。

在你的清單 application 區塊中,新增 meta-data 標籤,指向如下所示的限制 XML 檔案:

&lt;application ... &gt;
                &lt;meta-data android:name="android.content.APP_RESTRICTIONS"
                              android:resource="@xml/app_restrictions" /&gt;
                ...
            &lt;/application&gt;

Java 文件 android.content.RestrictionsManager。

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

建構函式

名稱 Description
RestrictionsManager(IntPtr, JniHandleOwnership)

用於建立 JNI 物件受管理表示的建構器;由執行時呼叫。

欄位

名稱 Description
ActionPermissionResponseReceived

當收到對許可請求的回應時,廣播意圖已達標。

ActionRequestLocalApproval

活動意圖由限制提供者套件可選擇性實作,在裝置本地挑戰管理員的 PIN 碼或密碼。

ActionRequestPermission

廣播意圖傳送給限制提供者,以處理來自應用程式的權限請求。

ExtraPackageName

就是提出請求的應用程式的套件名稱。

ExtraRequestBundle

請求包在廣播中 #ACTION_REQUEST_PERMISSION 通過了。

ExtraRequestId

請求ID在廣播中 #ACTION_REQUEST_PERMISSION 通過。

ExtraRequestType

請求類型在廣播中 #ACTION_REQUEST_PERMISSION 通過。

ExtraResponseBundle

包含管理員針對特定請求的回覆。

MetaDataAppRestrictions

清單中指向包含應用程式可用限制的 XML 檔案的元資料條目名稱。

RequestKeyApproveLabel

請求包中包含的請求核准按鈕標籤的鑰匙。

RequestKeyData

請求包中包含的請求資料金鑰。

RequestKeyDenyLabel

請求包中請求拒絕按鈕標籤的鑰匙。

RequestKeyIcon

請求包中請求圖示的鑰匙。

RequestKeyId

請求包中包含的請求 ID 金鑰。

RequestKeyMessage

請求包中包含的請求訊息金鑰。

RequestKeyNewRequest

用於發出新請求的金鑰,包含在請求包中。

RequestKeyTitle

請求包中包含的請求標題的鑰匙。

RequestTypeApproval

請用簡單問題的請求類型,並可能附上標題和圖示。

ResponseKeyErrorCode

用於發送給應用程式的回應包中可選錯誤碼的鑰匙。

ResponseKeyMessage

用於發送給應用程式的回應包中可選訊息的金鑰。

ResponseKeyResponseTimestamp

管理員回應權限請求的時間戳記。

ResponseKeyResult

用於發送給應用程式的回應套件中,用於權限請求的回應結果。

屬性

名稱 Description
ApplicationRestrictions

回傳適用於本應用的任何可用限制。

ApplicationRestrictionsPerAdmin

回傳 List 包含 a Bundle ,針對每個管理代理,該代理對當前應用程式有設定限制,該套件包含對當前套件設定的任何應用程式限制。

Class

回傳此 Object的執行時類別。

(繼承來源 Object)
Handle

底層 Android 實例的帳號。

(繼承來源 Object)
HasRestrictionsProvider

應用程式呼叫以確認是否有有效的限制提供者。

JniIdentityHashCode

取得由互通執行時指派給此 Java 對等端的身份雜湊碼。

(繼承來源 Object)
JniManagedPeerState

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。

(繼承來源 JavaObject)
JniPeerMembers

取得用於調用此 Java 節點成員的 JNI 元資料。

PeerReference

取得這個 Java 節點的 JNI 物件參考。

(繼承來源 Object)
ThresholdClass

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

ThresholdType

此 API 支援 Mono for Android 基礎架構,並非直接從你的程式碼中使用。

方法

名稱 Description
Clone()

建立並回傳此物件的副本。

(繼承來源 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。

(繼承來源 JavaObject)
ConvertRestrictionsToBundle(IList<RestrictionEntry>)

將限制清單轉換為對應的組合,使用以下映射方式:表<tr th 限制條目>/th<th Bundle><>/th</tr><>tr td<><>/td td<><>RestrictionEntry#TYPE_BOOLEAN/<td></tr>Bundle#putBooleantr td<><>,<>< /td>RestrictionEntry#TYPE_CHOICEtdRestrictionEntry#TYPE_MULTI_SELECT<>/td</tr tr td/td/tr>Bundle#putStringArraytr<td><></td><>RestrictionEntry#TYPE_INTEGER<></tr>Bundle#putInttr td<><><><>RestrictionEntry#TYPE_STRING</TD><TD>Bundle#putString</TD></TR><TR><TD>RestrictionEntry#TYPE_BUNDLE</TD TD><>Bundle#putBundle/TD</TR>< TR TD/TD/TD><TR TD><>RestrictionEntry#TYPE_BUNDLE_ARRAY</TD><>Bundle#putParcelableArray<></TR></表格>

CreateLocalApprovalIntent()
Dispose()

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
Dispose(Boolean)

釋放該 Java 節點所持有的資源。

(繼承來源 Object)
DisposeUnlessReferenced()

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。

(繼承來源 JavaObject)
Equals(Object)

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。

(繼承來源 JavaObject)
Equals(Object)

表示是否有其他物體「等同」於此物。

(繼承來源 Object)
GetHashCode()

回傳物件的雜湊碼值。

(繼承來源 Object)
GetManifestRestrictions(String)

解析並回傳清單中對指定套件定義的限制清單(如果有的話)。

JavaFinalize()
已淘汰.

當垃圾回收判定該物件不再有相關參考時,由垃圾回收器呼叫。

(繼承來源 Object)
Notify()

喚醒一個正在該物件監視器上等待的執行緒。

(繼承來源 Object)
NotifyAll()

喚醒所有等待該物件監視器的執行緒。

(繼承來源 Object)
NotifyPermissionResponse(String, PersistableBundle)

被限制提供者召喚,負責回應一個申請。

RequestPermission(String, String, PersistableBundle)

應用程式呼叫以請求操作許可。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。

(繼承來源 JavaObject)
ToArray<T>()

從這個 Java 陣列包裝器建立一個受管理陣列。

(繼承來源 Object)
ToString()

回傳物件的字串表示。

(繼承來源 Object)
UnregisterFromRuntime()

將此 Java 節點從互通執行時中取消註冊。

(繼承來源 Object)
Wait()

導致目前執行緒等待被喚醒,通常是透過 <em>通知</><em 或 em>中斷</em> 來喚醒。

(繼承來源 Object)
Wait(Int64, Int32)

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)
Wait(Int64)

會讓目前執行緒等待喚醒,通常是透過 <em>通知</><em 或 em>中斷</em>,或是經過一定的真實時間。

(繼承來源 Object)

明確介面實作

名稱 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)

取得實例 self類型的 JNI 名稱。

JavaAs<TResult>(IJavaPeerable)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

JavaCast<TResult>(IJavaObject)

執行 Android 執行時檢查型別轉換。

JavaCast<TResult>(IJavaObject)

提供一種機制,讓應用程式查詢管理使用者實體所施加的限制。

TryJavaCast<TResult>(IJavaPeerable, TResult)

試著強制self輸入 TResult,檢查 強制在 Java 端是否有效。

適用於