鴻蒙OS Ability intentAbility

2020-10-28 15:08 更新

使用服務(wù)模板的功能的基類,該模板用于處理工作線程中的后臺任務(wù),以避免在主線程中運行耗時的任務(wù),從而確保應(yīng)用程序的響應(yīng)能力。

該課程是Ability的子課程。使用此類后,您無需處理與線程管理相關(guān)的工作。

您應(yīng)該重寫onProcessIntent(ohos.aafwk.content.Intent)方法,并使用它來處理所需的任務(wù)。此方法將在工作線程中執(zhí)行。

如果有多個任務(wù),則系統(tǒng)按任務(wù)到達時間的順序一次僅執(zhí)行一個任務(wù)。完成所有任務(wù)后,IntentAbility對象將自動停止,并且*您無需調(diào)用Ability#stopAbility(Intent intent)即可停止它。

嵌套類摘要

從類ohos.aafwk.ability繼承的嵌套類/接口。Ability
Ability.LayoutParamsHelper,Ability.WindowAttributeHelper

領(lǐng)域摘要

從ohos.app接口繼承的字段。Context
CONTEXT_IGNORE_SECURITY,CONTEXT_INCLUDE_CODE,CONTEXT_RESOUCE_ONLYCONTEXT_RESTRICTED,MODE_APPEND,MODE_PRIVATE

構(gòu)造器摘要

建設(shè)者 描述
IntentAbility(String名稱) 用于創(chuàng)建IntentAbility實例的構(gòu)造函數(shù)。

方法總結(jié)

修飾符和類型 方法 描述
protected void onCommand(Intent intent,boolean restart) 不推薦使用。
protected void onCommand(Intent intent,boolean restart,int startId) 服務(wù)能力啟動時回叫。
protected abstract void onProcessIntent(Intentintent) 每次該功能啟動并調(diào)用onCommand(ohos.aafwk.content.Intent,boolean)時,都要調(diào)用以處理任務(wù)。
protected void 在onStart(Intentintent) 在該功能開始時調(diào)用,并且在整個生命周期中僅調(diào)用一次。
從類ohos.aafwk.ability繼承的方法。Ability
addActionRoutebatchInsert,call,cancelBackgroundRunning,connectAbilitycontinueAbility,continueAbility,continueAbilityReversibly,continueAbilityReversiblydeletedenormalizeUri,disconnectAbility,dispatchAccessibilityEventInfo,ExecuteBatch,findComponentById,getAbilityPackagegetAVController,getContinuationStategetCurrentFocus,getEnterTransitiongetFileTypes,getIntent,getLayoutParams,getLifecyclegetOriginalDeviceId,getReturnTransitiongetRootUIContent,getTypegetWindow,hasWindowFocus,insert,isTerminating,keepBackgroundRunning,normalizeUri,onAbilityResultonActive,onBackground,onBackPressedonConfigurationUpdated,onConnectonCreateForm,onDisconnectonEventDispatch,onForeground,onInactive,onkeydownonkeyuponLeaveForeground,onMemoryLevel,onNewDescriptiononNewIntent,onOrientationChangedonPostActive,onPostStart,onReconnectonRequestPermissionsFromUserResult,onRestoreAbilityState
onSaveAbilityState,onStop,onTouchEvent,onWindowFocusChanged,openFileopenRawFile,query,reverseContinueAbility,setAbilitySliceAnimator,setAVController,setEnterTransitionsetIntent,setIsAmbientModesetLayoutParams,setMainRoutesetResult,setReturnTransition,setSwipeToDismisssetUIContent,setUIContent,setWindowBackgroundColor,startAbility,startAbility,startAbilityForResult,stopAbility,terminateAbility,update
從ohos.app類繼承的方法。AbilityContext
attachBaseContext,canRequestPermission,createBundleContext,createParallelTaskDispatcher,createSerialTaskDispatcher,DELETEFILE,getAbilityInfo,getAbilityManager,getApplicationContext,getApplicationInfo,getAppTypegetBundleCodePath,getBundleManager,getBundleName,getBundleResourcePath,getCacheDir,getCallingAbility,getCallingBundlegetClassloader,getCodeCacheDir,的getContextgetDatabaseDir,getDataDir,GETDIR,getDisplayOrientationgetDistributedDir,getElementName,getExternalCacheDir,getExternalCacheDirsgetExternalFilesDir,getExternalFilesDirsgetExternalMediaDirs,getFilesDir,getGlobalTaskDispatchergetLocalClassNamegetMainTaskDispatcher,getNoBackupFilesDir,getPattern,getPreferencesDir,getProcessInfo,getResourceManagergetTheme,getUITaskDispatcher,init,isDeviceEncryptedStorage,isUpdatingConfigurationsrequestPermissionsFromUser,restart,setDisplayOrientation,setPatternsetShowOnLockScreen,setThemesetTransitionAnimation,setWakeUpScreenstartAbilities,startAbility,
switchToCredentialEncryptedStorageContext,switchToDeviceEncryptedStorageContext,terminateAbility,terminateAbilityResultverifyCallingOrSelfPermission,verifyCallingPermission,verifyPermission,verifySelfPermission

從類 java.lang 繼承的方法。object
clone,equals,finalizegetClasshashCode,notifynotifyAll,toString,waitwait,wait

構(gòu)造器詳細信息

意圖能力

公共IntentAbility((String名稱)

用于創(chuàng)建IntentAbility實例的構(gòu)造函數(shù)。

參數(shù):

參數(shù)名稱 參數(shù)說明
名稱 指示功能名稱,該名稱也用于標識工作線程。

方法細節(jié)

onStart

受保護的void onStart(Intent intent)

在該功能開始時調(diào)用,并且在整個生命周期中僅調(diào)用一次。

您無需為子類覆蓋此方法。如果需要,可以通過調(diào)用IntentAbility基類中的方法來覆蓋它。

覆寫:

Ability中的onStart

參數(shù):

參數(shù)名稱 參數(shù)說明
意圖 表示啟動此功能時攜帶的信息。注意:對于服務(wù)技能,將傳遞null。

也可以看看:

Ability.onStart(Intent)

onCommand

@Deprecated protected void onCommand(Intent intent,boolean restart)

不推薦使用。服務(wù)能力啟動時回叫。

您無需為子類覆蓋此方法。如果需要,可以通過調(diào)用IntentAbility基類中的方法來覆蓋它。

覆寫:

Ability類中的onCommand

參數(shù):

參數(shù)名稱 參數(shù)說明
意圖 指示啟動服務(wù)功能的意圖。
重新開始 指示啟動模式。值為true表示服務(wù)能力在銷毀后重新啟動,值為false表示正常啟動。

也可以看看:

Ability.onCommand(Intent,boolean)

onCommand

受保護的void onCommand(Intent intent,boolean restart,int startId)

服務(wù)能力啟動時回叫。

您無需為子類覆蓋此方法。如果需要,可以通過調(diào)用IntentAbility基類中的方法來覆蓋它。

覆寫:

Ability類中的onCommand

參數(shù):

參數(shù)名稱 參數(shù)說明
意圖 指示服務(wù)啟動的意圖。
重新開始 指示啟動模式。值true表示服務(wù)在銷毀后重新啟動,值false表示正常啟動。
startId 指示啟動服務(wù)功能的次數(shù)。每當該異能開始時,startId都會增加1。例如,如果該能力已啟動六次,則startId的值為6。

也可以看看:

Ability.onCommand(Intent,boolean,int)

onProcessIntent

受保護的抽象void onProcessIntent(Intent intent)

每次該功能啟動并調(diào)用onCommand(ohos.aafwk.content.Intent,boolean)時,都要調(diào)用以處理任務(wù)。

您應(yīng)該為IntentAbility子類重寫此方法。此方法將在單獨的工作線程而不是主線程中執(zhí)行,以防止耗時的任務(wù)影響應(yīng)用程序的響應(yīng)性。

參數(shù):

參數(shù)名稱 參數(shù)說明
意圖 指示包含任務(wù)信息的Intent對象。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號