語言

Instrumentation 類別

定義

用於實作應用程式儀器化程式碼的基底類別。

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

備註

用於實作應用程式儀器化程式碼的基底類別。 當啟用 instrumentation 時,這個類別會在應用程式程式碼之前為你實例化,讓你能監控系統與應用程式的所有互動。 儀器實作透過 AndroidManifest.xml的 <儀器標籤> 向系統描述。

Android 參考資料。android.app.Instrumentation

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

建構函式

名稱 Description
Instrumentation()
Instrumentation(IntPtr, JniHandleOwnership)

初始化現有 Java 原生介面物件的受管理表示。

欄位

名稱 Description
ReportKeyIdentifier

若將此鍵包含在狀態或最終套件中,則可識別撰寫報告的類別。

ReportKeyStreamresult

若包含在傳送給 IInstrumentationWatcher 的狀態或最終套件中,此鍵可識別一個字串,可直接印入輸出串流。

屬性

名稱 Description
AllocCounts

回傳一個包含配置計數結果的組合。

BinderCounts

回傳包含此過程各種活頁夾計數的組合包。

Class

回傳此 Object的執行時類別。

(繼承來源 Object)
ComponentName

回傳此儀器的完整元件名稱。

Context

回傳此儀器套件的 Context。

Handle

底層 Android 實例的帳號。

(繼承來源 Object)
IsProfiling

檢查這個儀器是否啟動時啟用了剖析。

JniIdentityHashCode

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

(繼承來源 Object)
JniManagedPeerState

用於實作應用程式儀器化程式碼的基底類別。

(繼承來源 JavaObject)
JniPeerMembers

提供 Android.App.Instrumentation 的 JNI 綁定基礎設施。

PeerReference

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

(繼承來源 Object)
ProcessName

回傳這個儀器正在執行的程序名稱。

TargetContext

回傳被安裝的目標應用程式的上下文。

ThresholdClass

提供 Android.App.Instrumentation 的 JNI 綁定基礎設施。

ThresholdType

提供 Android.App.Instrumentation 的 JNI 綁定基礎設施。

UiAutomation

UiAutomation取得未設定旗標的 實例。

方法

名稱 Description
AcquireLooperManager(Looper)

控制指定迴圈程式上的訊息執行,直到呼叫為止 TestLooperManager#release 。

AddMonitor(Instrumentation+ActivityMonitor)

新增一個 ActivityMonitor,當活動開始時會被檢查。

AddMonitor(IntentFilter, Instrumentation+ActivityResult, Boolean)

一個方便的 addMonitor(ActivityMonitor) 包裝器,能幫你建立一個與 ActivityMonitor 相符的意圖過濾器,然後回傳它。

AddMonitor(String, Instrumentation+ActivityResult, Boolean)

一個方便的 addMonitor(ActivityMonitor) 包裝器,可以幫你建立一個與 ActivityMonitor 相符的類別並回傳。

AddResults(Bundle)

在儀器執行過程中回報一些結果。

CallActivityOnCreate(Activity, Bundle, PersistableBundle)

執行活動方法的 Activity#onCreate 呼叫。

CallActivityOnCreate(Activity, Bundle)

執行活動方法的 Activity#onCreate 呼叫。

CallActivityOnDestroy(Activity)
CallActivityOnNewIntent(Activity, Intent, ComponentCaller)

和 一樣, #callActivityOnNewIntent(Activity, Intent)但會多一個參數,針對 ComponentCaller 發送意圖的應用程式所關聯的實例。

CallActivityOnNewIntent(Activity, Intent)

執行活動方法的 Activity#onNewIntent 呼叫。

CallActivityOnPause(Activity)

執行活動方法的 Activity#onPause 呼叫。

CallActivityOnPictureInPictureRequested(Activity)

執行活動方法的 Activity#onPictureInPictureRequested 呼叫。

CallActivityOnPostCreate(Activity, Bundle, PersistableBundle)

執行活動方法的 Activity#onPostCreate 呼叫。

CallActivityOnPostCreate(Activity, Bundle)

執行活動方法的 Activity#onPostCreate 呼叫。

CallActivityOnRestart(Activity)

執行活動方法的 Activity#onRestart 呼叫。

CallActivityOnRestoreInstanceState(Activity, Bundle, PersistableBundle)

執行活動方法的 Activity#onRestoreInstanceState 呼叫。

CallActivityOnRestoreInstanceState(Activity, Bundle)

執行活動方法的 Activity#onRestoreInstanceState 呼叫。

CallActivityOnResume(Activity)

執行活動方法的 Activity#onResume 呼叫。

CallActivityOnSaveInstanceState(Activity, Bundle, PersistableBundle)

執行活動方法的 Activity#onSaveInstanceState 呼叫。

CallActivityOnSaveInstanceState(Activity, Bundle)

執行活動方法的 Activity#onSaveInstanceState 呼叫。

CallActivityOnStart(Activity)

執行活動方法的 Activity#onStart 呼叫。

CallActivityOnStop(Activity)

執行活動方法的 Activity#onStop 呼叫。

CallActivityOnUserLeaving(Activity)

執行活動方法的 Activity#onUserLeaveHint 呼叫。

CallApplicationOnCreate(Application)

執行應用程式的 Application#onCreate 方法呼叫。

CheckMonitorHit(Instrumentation+ActivityMonitor, Int32)

測試現有的 ActivityMonitor 是否遭到攻擊。

Clone()

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

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

用於實作應用程式儀器化程式碼的基底類別。

(繼承來源 JavaObject)
Dispose()

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

(繼承來源 Object)
Dispose(Boolean)

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

(繼承來源 Object)
DisposeUnlessReferenced()

用於實作應用程式儀器化程式碼的基底類別。

(繼承來源 JavaObject)
EndPerformanceSnapshot()
Equals(Object)

用於實作應用程式儀器化程式碼的基底類別。

(繼承來源 JavaObject)
Equals(Object)

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

(繼承來源 Object)
Finish(Result, Bundle)

終止應用程式的儀器化。

GetHashCode()

回傳物件的雜湊碼值。

(繼承來源 Object)
GetUiAutomation(UiAutomationFlags)

UiAutomation取得已設定旗標的 實例。

InvokeContextMenuAction(Activity, Int32, MenuPerformFlags)

顯示當前聚焦視圖的右鍵選單,並執行特定的右鍵選單項目。

InvokeMenuActionSync(Activity, Int32, MenuPerformFlags)

執行一項特定的菜單項目。

JavaFinalize()
已淘汰.

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

(繼承來源 Object)
NewActivity(Class, Context, IBinder, Application, Intent, ActivityInfo, ICharSequence, Activity, String, Object)

執行物件實例 Activity 化。

NewActivity(Class, Context, IBinder, Application, Intent, ActivityInfo, String, Activity, String, Object)

執行物件實例 Activity 化。

NewActivity(ClassLoader, String, Intent)

執行進程的 Activity 物件具現化。

NewApplication(Class, Context)

執行進程的 Application 物件具現化。

NewApplication(ClassLoader, String, Context)

執行進程的 Application 物件具現化。

Notify()

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

(繼承來源 Object)
NotifyAll()

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

(繼承來源 Object)
OnCreate(Bundle)

在儀器啟動時呼叫,且尚未載入任何應用程式程式碼。

OnDestroy()

當已安裝的應用程式停止時呼叫,且在所有正常的應用程式清理完成後。

OnException(Object, Throwable)

每當系統擷取應用程式拋出的未處理異常時,就會呼叫此異常。

OnStart()

此方法讓儀器執行緒進入執行階段。

RemoveMonitor(Instrumentation+ActivityMonitor)

移除先前用 addMonitor(ActivityMonitor) 新增的 ActivityMonitor。

ResetInTouchMode()

#setInTouchMode touch mode將重設為裝置預設值。

RunOnMainSync(Action)
RunOnMainSync(IRunnable)

在應用程式的主執行緒執行呼叫,阻塞直到執行緒完成。

SendCharacterSync(Keycode)

會將指定鍵代碼的鍵事件上下傳送到當前聚焦的視窗,並等待處理。

SendKeyDownUpSync(Keycode)

會將指定鍵代碼的鍵事件上下傳送到當前聚焦的視窗,並等待處理。

SendKeySync(KeyEvent)

將關鍵事件傳送到當前聚焦的視窗,並等待處理。

SendPointerSync(MotionEvent)

將指標事件派遣到被安裝的應用程式擁有的視窗,並等待該事件被處理。

SendStatus(Result, Bundle)

提供申請狀態報告。

SendStringSync(String)

會將導致該文字輸入到當前聚焦視窗的關鍵事件,並等待處理。

SendTrackballEventSync(MotionEvent)

將軌跡球事件發送到目前聚焦的視窗,並等待處理。

SetAutomaticPerformanceSnapshots()
SetHandle(IntPtr, JniHandleOwnership)

設定 Handle 屬性。

(繼承來源 Object)
SetInTouchMode(Boolean)

強制全域系統進入或脫離連結模式。

SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

用於實作應用程式儀器化程式碼的基底類別。

(繼承來源 JavaObject)
Start()

建立並開啟一個新的執行緒來執行儀器。

StartActivitySync(Intent, Bundle)

開始一個新活動,等它開始運行後再回來。

StartActivitySync(Intent)

開始一個新活動,等它開始運行後再回來。

StartAllocCounting()
StartPerformanceSnapshot()
StartProfiling()

當 isProfiling() 返回為真時,此方法將開始剖析。

StopAllocCounting()
StopProfiling()

如果 isProfiling() 返回為真,則停止 profiling。

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)
WaitForIdle(Action)
WaitForIdle(IRunnable)

排程回調,當應用程式主執行緒閒置(沒有更多事件需要處理)時。

WaitForIdleSync()

同步等待應用程式閒置。

WaitForMonitor(Instrumentation+ActivityMonitor)

等待現有的 ActivityMonitor 被觸發。

WaitForMonitorWithTimeout(Instrumentation+ActivityMonitor, Int64)

等現有的 ActivityMonitor 被觸發,直到逾時結束。

明確介面實作

名稱 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 端是否有效。

適用於