-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathKeyboardHostBundleID.podspec
More file actions
38 lines (31 loc) · 1.56 KB
/
KeyboardHostBundleID.podspec
File metadata and controls
38 lines (31 loc) · 1.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Pod::Spec.new do |s|
s.name = 'KeyboardHostBundleID'
s.version = '1.0.0'
s.summary = 'Resolve the host app Bundle ID from an iOS custom keyboard extension (iOS 16 – iOS 26.4+).'
s.description = <<-DESC
Drop-in library for iOS third-party keyboard extensions (UIInputViewController)
to obtain the Bundle ID of the host app the keyboard is currently embedded in.
- iOS 26.4+: swizzles _UIKeyboardArbiterClientInputDestination via an ObjC +load
installer, capturing _sourceBundleIdentifier from the destination-changed
callback.
- iOS 16 ~ 26.3: falls back to PKService + xpc_connection_copy_bundle_id.
Single unified API: KeyboardHost.resolve(from:).
DESC
s.homepage = 'https://github.com/editorss/KeyboardHostBundleID'
s.license = { :type => 'MIT', :file => 'LICENSE' }
s.author = { 'editorss' => '54480867+editorss@users.noreply.github.com' }
s.source = { :git => 'https://github.com/editorss/KeyboardHostBundleID.git', :tag => s.version.to_s }
s.ios.deployment_target = '15.0'
s.swift_versions = ['5.9']
s.subspec 'ObjCHook' do |h|
h.source_files = 'Sources/KBHostArbiterHookObjC/**/*.{h,m}'
h.public_header_files = 'Sources/KBHostArbiterHookObjC/include/*.h'
h.frameworks = 'UIKit', 'Foundation'
end
s.subspec 'Core' do |c|
c.source_files = 'Sources/KeyboardHostBundleID/**/*.swift'
c.dependency 'KeyboardHostBundleID/ObjCHook'
c.frameworks = 'UIKit', 'Foundation'
end
s.default_subspecs = 'Core'
end