鴻蒙OS IAbilityContinuation

2021-03-26 11:23 更新

啟用在分布式系統(tǒng)中實(shí)施遷移的 Ability。

您可以使用Ability提供的遷移功能在分布式系統(tǒng)中的本地設(shè)備和遠(yuǎn)程設(shè)備之間遷移數(shù)據(jù)。實(shí)現(xiàn)此接口的能力或能力切片具有遷移能力。您可以通過(guò)在本地設(shè)備上調(diào)用 Ability#continueAbility()AbilitySlice#continueAbility()來(lái)發(fā)起遷移請(qǐng)求,然后實(shí)施此接口中提供的方法來(lái)保存或還原應(yīng)用程序數(shù)據(jù)。保存的數(shù)據(jù)由分布式數(shù)據(jù)管理模塊管理。啟動(dòng)功能后,遠(yuǎn)程設(shè)備可以獲取并恢復(fù)已保存的數(shù)據(jù)。通過(guò)這種方式,本地設(shè)備上的功能將遷移到遠(yuǎn)程設(shè)備上。

方法總結(jié)

修飾符和類型 方法 描述
void onCompleteContinuation(int結(jié)果) 本地能力遷移完成后回叫。
默認(rèn)作廢 onRemoteTerminated() 在針對(duì)從本地設(shè)備到遠(yuǎn)程設(shè)備的能力執(zhí)行了可逆遷移之后,當(dāng)遠(yuǎn)程設(shè)備上的運(yùn)行能力被破壞時(shí)調(diào)用,以通知本地設(shè)備。
布爾值 onRestoreData(IntentParams restoreData) 在遠(yuǎn)程設(shè)備上創(chuàng)建功能后,立即恢復(fù)在該功能上的遷移過(guò)程中保存的用戶數(shù)據(jù)。
布爾值 onSaveData(IntentParams saveData) 保存在運(yùn)行時(shí)生成的本地功能的用戶數(shù)據(jù)(carried in the IntentParams  object)。
布爾值 onStartContinuation() 詢問(wèn)用戶是否開始遷移。

方法細(xì)節(jié)

在開始繼續(xù)

boolean onStartContinuation()

詢問(wèn)用戶是否開始遷移。

當(dāng)本地能力發(fā)起遷移請(qǐng)求時(shí),將調(diào)用此方法。

如果該能力未實(shí)現(xiàn)此方法,則無(wú)法遷移此能力,并返回 false。如果 AbilitySlice 沒(méi)有實(shí)現(xiàn)此方法,則不會(huì)影響其宿主功能是否可以遷移,并且默認(rèn)情況下返回 true。

返回值:

如果用戶允許遷移,則返回 true;否則,返回 false。

關(guān)于保存數(shù)據(jù)

boolean onSaveData(IntentParams saveData)

保存在運(yùn)行時(shí)生成的本地功能的用戶數(shù)據(jù)(carried in the IntentParams object)。觸發(fā)遷移并準(zhǔn)備好本地功能后,當(dāng)分布式計(jì)劃程序服務(wù)從本地功能請(qǐng)求數(shù)據(jù)時(shí),將調(diào)用此方法。

參數(shù):

參數(shù)名稱 參數(shù)說(shuō)明
保存數(shù)據(jù) 表示要保存的用戶數(shù)據(jù)。

返回值:

如果成功保存數(shù)據(jù),則返回 true;否則,返回 true。否則返回 false。

關(guān)于還原數(shù)據(jù)

布爾值 onRestoreData(IntentParams restoreData)

在遠(yuǎn)程設(shè)備上創(chuàng)建功能后,立即恢復(fù)在該功能上的遷移過(guò)程中保存的用戶數(shù)據(jù)。僅在還原用戶數(shù)據(jù)之后,才開始對(duì)該功能進(jìn)行生命周期調(diào)度。

參數(shù):

參數(shù)名稱 參數(shù)說(shuō)明
restoreData 指示要還原的用戶數(shù)據(jù)。

返回值:

如果數(shù)據(jù)已成功還原,則返回 true;否則,返回 false。否則返回 false。

完全延續(xù)

onCompleteContinuation(int 結(jié)果)無(wú)效

本地能力遷移完成后回叫。

您可以在遷移完成后定義處理邏輯。例如,您可以顯示提示,通知用戶遷移成功,然后退出本地功能。

參數(shù):

參數(shù)名稱 參數(shù)說(shuō)明
結(jié)果 指示遷移結(jié)果代碼,由分布式系統(tǒng)定義。

在遠(yuǎn)程終端上

默認(rèn)void onRemoteTerminated()

在針對(duì)從本地設(shè)備到遠(yuǎn)程設(shè)備的能力執(zhí)行了可逆遷移之后,當(dāng)遠(yuǎn)程設(shè)備上的運(yùn)行能力被破壞時(shí)調(diào)用,以通知本地設(shè)備。通過(guò)調(diào)用Ability#continueAbilityReversible()Ability#continueAbilityReversible(String)觸發(fā)可逆遷移 。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)