鴻蒙OS IPCSkeleton

2022-04-27 15:17 更新

IPCSkeleton

java.lang.Object

|---ohos.rpc.IPCSkeleton

public class IPCSkeleton
extends Object

在IPC骨架中提供靜態(tài)接口,用于獲取服務(wù)、讀寫對(duì)象、獲取UID和PID、獲取本地和對(duì)端設(shè)備的ID、檢查是否在同一設(shè)備上進(jìn)行了接口調(diào)用。

構(gòu)造函數(shù)摘要

構(gòu)造函數(shù) 描述
IPCSkeleton()

方法總結(jié)

修飾符和類型 方法 描述
static int flushCommands(IRemoteObject object) 將所有掛起的命令從指定的 RemoteProxy 刷新到相應(yīng)的 RemoteObject。
static String getCallingDeviceID() 獲取對(duì)端進(jìn)程所在設(shè)備的ID。
static int getCallingPid() 獲取代理的PID。
static int getCallingUid() 獲取代理的 UID。
static IRemoteObject getContextObject() 獲取已注冊(cè)服務(wù)的本地 IRemoteObject 引用。
static String getLocalDeviceID() 獲取本地設(shè)備的ID。
static boolean isLocalCalling() 檢查是否在同一設(shè)備上進(jìn)行了呼叫。
static String resetCallingIdentity() 將遠(yuǎn)程用戶的 UID 和 PID 替換為本地用戶的 UID 和 PID。
static boolean setCallingIdentity(String identity) 將 UID 和 PID 恢復(fù)為遠(yuǎn)程用戶的 UID 和 PID。
從類 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

構(gòu)造函數(shù)詳細(xì)信息

IPCSkeleton

public IPCSkeleton()

方法詳情

getContextObject

public static IRemoteObject getContextObject()

獲取已注冊(cè)服務(wù)的本地 IRemoteObject 引用。

此方法是靜態(tài)的。

返回:

返回已注冊(cè)服務(wù)的 IRemoteObject 引用。

getCallingPid

public static int getCallingPid()

獲取代理的PID。

此方法是靜態(tài)的。 RemoteProxy對(duì)象與RemoteObject對(duì)象通信時(shí)PID為正整數(shù),通信結(jié)束后恢復(fù)為0。 如果從 RemoteProxy 對(duì)象調(diào)用該方法,則返回 0; 如果從 RemoteObject 對(duì)象調(diào)用該方法,則返回對(duì)應(yīng)的 RemoteProxy 對(duì)象的 PID。

返回:

返回代理的 PID。

getCallingUid

public static int getCallingUid()

獲取代理的 UID。

此方法是靜態(tài)的。 RemoteProxy對(duì)象與RemoteObject對(duì)象通信時(shí)UID為正整數(shù),通信結(jié)束后恢復(fù)為0。 如果從 RemoteProxy 對(duì)象調(diào)用該方法,則返回 0; 如果從 RemoteObject 對(duì)象調(diào)用該方法,則返回對(duì)應(yīng)的 RemoteProxy 對(duì)象的 UID。

返回:

返回代理的 UID。

getCallingDeviceID

public static String getCallingDeviceID()

獲取對(duì)端進(jìn)程所在設(shè)備的ID。

此方法是靜態(tài)的。

返回:

返回對(duì)等進(jìn)程所在設(shè)備的ID。

getLocalDeviceID

public static String getLocalDeviceID()

獲取本地設(shè)備的ID。

此方法是靜態(tài)的。

返回:

返回本地設(shè)備的 ID。

isLocalCalling

public static boolean isLocalCalling()

檢查是否在同一設(shè)備上進(jìn)行了呼叫。

此方法是靜態(tài)的。

返回:

如果在同一設(shè)備上進(jìn)行調(diào)用,則返回 true; 否則返回 false。

flushCommands

public static int flushCommands(IRemoteObject object)

將所有掛起的命令從指定的 RemoteProxy 刷新到相應(yīng)的 RemoteObject。

此方法是靜態(tài)的。 建議您在執(zhí)行任何對(duì)時(shí)間敏感的操作之前調(diào)用該方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
object 表示指定的 RemoteProxy。

返回:

如果操作成功,則返回 0; 如果輸入對(duì)象為空或RemoteObject,或操作失敗,則返回錯(cuò)誤代碼。

resetCallingIdentity

public static String resetCallingIdentity()

將遠(yuǎn)程用戶的 UID 和 PID 替換為本地用戶的 UID 和 PID。

此方法是靜態(tài)的。 它可以用于身份驗(yàn)證等場(chǎng)景。

返回:

返回包含遠(yuǎn)程用戶的 UID 和 PID 的字符串。

setCallingIdentity

public static boolean setCallingIdentity(String identity)

將 UID 和 PID 恢復(fù)為遠(yuǎn)程用戶的 UID 和 PID。

此方法是靜態(tài)的。 它通常在使用resetCallingIdentity 后調(diào)用,需要resetCallingIdentity 返回的遠(yuǎn)程用戶的UID 和PID。

參數(shù):

參數(shù)名稱 參數(shù)描述
identity 表示遠(yuǎn)程用戶的UID和PID的字符串,resetCallingIdentity返回。

返回:

如果操作成功,則返回 true; 否則返回 false。

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

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)