語言

BackupDataInput 類別

定義

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

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

備註

提供結構化介面,讓使用者 BackupAgent 透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法從備份資料集讀取資訊。 資料以一組「實體」呈現,每個實體代表一個先前由代理 BackupAgent#onBackup(ParcelFileDescriptor,BackupDataOutput,ParcelFileDescriptor) onBackup() 實作儲存的命名紀錄。 一個實體由一個描述性標頭加上一個位元組陣列組成,後者儲存在遠端備份中儲存的原始資料。

代理必須消耗資料串流中的所有實體,否則應用程式的還原狀態將不完整。 <h3>範例</h3>

典型 BackupAgent#onRestore(BackupDataInput,int,ParcelFileDescriptor) onRestore() 的實作結構可能如下:

public void onRestore(BackupDataInput data, int appVersionCode,
                                  ParcelFileDescriptor newState) {
                while (data.readNextHeader()) {
                    String key = data.getKey();
                    int dataSize = data.getDataSize();

                    if (key.equals(MY_BACKUP_KEY_ONE)) {
                        // process this kind of record here
                        byte[] buffer = new byte[dataSize];
                        data.readEntityData(buffer, 0, dataSize); // reads the entire entity at once

                        // now 'buffer' holds the raw data and can be processed however
                        // the agent wishes
                        processBackupKeyOne(buffer);
                    } else if (key.equals(MY_BACKUP_KEY_TO_IGNORE) {
                        // a key we recognize but wish to discard
                        data.skipEntityData();
                    } // ... etc.
               }
            }

Java 文件 android.app.backup.BackupDataInput。

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

建構函式

名稱 Description
BackupDataInput(IntPtr, JniHandleOwnership)

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

屬性

名稱 Description
Class

回傳此 Object的執行時類別。

(繼承來源 Object)
DataSize

報告還原串流中與當前實體相關的資料大小(以位元組為單位)。

Handle

底層 Android 實例的帳號。

(繼承來源 Object)
JniIdentityHashCode

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

(繼承來源 Object)
JniManagedPeerState

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
JniPeerMembers

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

Key

在還原串流中回報與目前實體相關的金鑰

PeerReference

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

(繼承來源 Object)
ThresholdClass

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

ThresholdType

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

方法

名稱 Description
Clone()

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

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

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
Dispose()

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

(繼承來源 Object)
Dispose(Boolean)

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

(繼承來源 Object)
DisposeUnlessReferenced()

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
Equals(Object)

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
Equals(Object)

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

(繼承來源 Object)
GetHashCode()

回傳物件的雜湊碼值。

(繼承來源 Object)
JavaFinalize()
已淘汰.

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

(繼承來源 Object)
Notify()

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

(繼承來源 Object)
NotifyAll()

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

(繼承來源 Object)
ReadEntityData(Byte[], Int32, Int32)

從還原串流讀取紀錄的原始資料。

ReadEntityDataAsync(Byte[], Int32, Int32)

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

ReadNextHeader()

從還原串流中擷取下一個實體標頭。

ReadNextHeaderAsync()

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

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

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
SkipEntityData()

在不將其提取到緩衝區以便進一步處理的情況下,直接消耗當前實體的資料。

SkipEntityDataAsync()

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

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()

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
IJavaPeerable.Finalized()

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

(繼承來源 JavaObject)

擴充方法

名稱 Description
GetJniTypeName(IJavaPeerable)

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

JavaAs<TResult>(IJavaPeerable)

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

JavaCast<TResult>(IJavaObject)

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

JavaCast<TResult>(IJavaObject)

提供結構化介面,讓 從 BackupAgent 備份資料集讀取資訊,透過其 BackupAgent#onRestore(BackupDataInput, int, android.os.ParcelFileDescriptor) onRestore() 方法。

TryJavaCast<TResult>(IJavaPeerable, TResult)

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

適用於