收口原生壳能力来源
新增共享 HostBridge capability profile,区分 Expo 移动通用、iOS 额外和 Tauri 桌面能力 移动壳能力清单改为引用共享 profile,入口 URL 类型支持 readonly 能力数组 两端配置检查和原生壳总门禁改为反查共享 profile,桌面 Rust 清单保持运行时镜像 补充 HostBridge profile 单测和 H5 readonly 能力合并类型兼容 同步 Expo/Tauri 壳方案、HostBridge 协议文档和项目决策记录
This commit is contained in:
@@ -1,37 +1,15 @@
|
||||
import { Platform } from 'react-native';
|
||||
|
||||
import type { HostBridgeCapability } from '../../../../packages/shared/src/contracts/hostBridge';
|
||||
import {
|
||||
HOST_BRIDGE_EXPO_MOBILE_BASE_CAPABILITIES,
|
||||
HOST_BRIDGE_EXPO_MOBILE_IOS_CAPABILITIES,
|
||||
} from '../../../../packages/shared/src/contracts/hostBridge';
|
||||
|
||||
export const MOBILE_HOST_CAPABILITIES: HostBridgeCapability[] = [
|
||||
'host.getRuntime',
|
||||
'appearance.getColorScheme',
|
||||
'host.events',
|
||||
'app.lifecycle',
|
||||
'share.open',
|
||||
'share.setTarget',
|
||||
'navigation.openNativePage',
|
||||
'navigation.canGoBack',
|
||||
'app.reloadWebView',
|
||||
'app.openExternalUrl',
|
||||
'network.status',
|
||||
'network.statusChanged',
|
||||
'clipboard.writeText',
|
||||
'clipboard.readText',
|
||||
'file.exportText',
|
||||
'file.importText',
|
||||
'file.exportImage',
|
||||
'file.importImage',
|
||||
'file.captureImage',
|
||||
'file.importAudio',
|
||||
'file.exportAudio',
|
||||
'haptics.impact',
|
||||
'notification.showLocal',
|
||||
];
|
||||
export const MOBILE_HOST_CAPABILITIES =
|
||||
HOST_BRIDGE_EXPO_MOBILE_BASE_CAPABILITIES;
|
||||
|
||||
export const IOS_MOBILE_HOST_CAPABILITIES: HostBridgeCapability[] = [
|
||||
...MOBILE_HOST_CAPABILITIES,
|
||||
'app.setBadgeCount',
|
||||
];
|
||||
export const IOS_MOBILE_HOST_CAPABILITIES =
|
||||
HOST_BRIDGE_EXPO_MOBILE_IOS_CAPABILITIES;
|
||||
|
||||
export function resolveMobileHostCapabilities(platform = Platform.OS) {
|
||||
return platform === 'ios'
|
||||
|
||||
@@ -9,7 +9,7 @@ import {
|
||||
export type MobileShellUrlOptions = {
|
||||
platform: Extract<NativeHostPlatform, 'ios' | 'android'>;
|
||||
hostVersion: string;
|
||||
capabilities: HostBridgeCapability[];
|
||||
capabilities: readonly HostBridgeCapability[];
|
||||
};
|
||||
|
||||
export const DEFAULT_MOBILE_SHELL_WEB_URL = HOST_BRIDGE_PUBLIC_WEB_URL;
|
||||
|
||||
Reference in New Issue
Block a user