Frameworks

RSS for tag

Ask questions about APIs that can drive features in your apps.

Posts under Frameworks tag

200 Posts
Sort by:

Post

Replies

Boosts

Views

Activity

How to obtain Swift interface files of all the iOS system Frameworks?
I hope to get all the swift interface files of all the iOS system Frameworks like what I get in Xcode @available(iOS 4.0, *) open class AVAsset : NSObject, NSCopying, AVAsynchronousKeyValueLoading { /** @method assetWithURL: @abstract Returns an instance of AVAsset for inspection of a media resource. @param URL An instance of NSURL that references a media resource. @result An instance of AVAsset. @discussion Returns a newly allocated instance of a subclass of AVAsset initialized with the specified URL. */ public convenience init(url URL: URL) /* Indicates the duration of the asset. If @"providesPreciseDurationAndTiming" is NO, a best-available estimate of the duration is returned. The degree of precision preferred for timing-related properties can be set at initialization time for assets initialized with URLs. See AVURLAssetPreferPreciseDurationAndTimingKey for AVURLAsset below. */ @available(iOS, introduced: 4.0, deprecated: 16.0, message: "Use load(.duration) instead") open var duration: CMTime { get } /* indicates the natural rate at which the asset is to be played; often but not always 1.0 */ @available(iOS, introduced: 4.0, deprecated: 16.0, message: "Use load(.preferredRate) instead") open var preferredRate: Float { get } /* indicates the preferred volume at which the audible media of an asset is to be played; often but not always 1.0 */ @available(iOS, introduced: 4.0, deprecated: 16.0, message: "Use load(.preferredVolume) instead") open var preferredVolume: Float { get } /* indicates the preferred transform to apply to the visual content of the asset for presentation or processing; the value is often but not always the identity transform */ @available(iOS, introduced: 4.0, deprecated: 16.0, message: "Use load(.preferredTransform) instead") open var preferredTransform: CGAffineTransform { get } /** @property minimumTimeOffsetFromLive @abstract Indicates how close to the latest content in a live stream playback can be sustained. @discussion For non-live assets this value is kCMTimeInvalid. */ @available(iOS, introduced: 13.0, deprecated: 16.0, message: "Use load(.minimumTimeOffsetFromLive) instead") open var minimumTimeOffsetFromLive: CMTime { get } }
0
0
241
Oct ’23
Opting-out from PowerNap wake-up
On some M1 MacBooks Air we noticed that our cloud sync application is woken up by PowerNap. This happens when the lid is closed and on WiFi, both when on battery and also when connected to power. The wake-up is quite short, and it is often the case that network traffic is still going when the machine goes back to sleep again. Is it somehow possible for the application to inform the OS that it should not be woken up during PowerNap wake-up (API/plist/launchd)? I know we could probably use NSActivityOptions to prevent sleep when a network connection is still open, but just staying asleep is probably better. Note: we're not using the FilesystemProviderExtension (yet), it is a "normal" application. Also, the application is started by launchd during login.
0
0
289
Oct ’23
Xcode 15
We were using the following build xcframework with xcode 14.3.1: xcodebuild -create-xcframework \ -framework $PROJECT_DIR/Build/Intermediates.noindex/ArchiveIntermediates/myFramework/BuildProductsPath/Release-iphoneos/myFramework.framework \ -framework $PROJECT_DIR/Build/Intermediates.noindex/ArchiveIntermediates/myFramework/BuildProductsPath/Release-iphonesimulator/myFramework.framework \ -output $PROJECT_DIR/output/myFramework.xcframework However with xCode 15, the build fails with the following error: error: cannot compute path of binary 'Path(str: "[REDACTED]/Build/Intermediates.noindex/ArchiveIntermediates/myFramework/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/myFramework.framework/myFramework")' relative to that of '[REDACTED]/Build/Intermediates.noindex/ArchiveIntermediates/myFramework/BuildProductsPath/Release-iphoneos/myFramework.framework' How can we solve this?
1
0
410
Oct ’23
The Meaning of the Value Returned by readRSSI
CoreBluetooth will only update the RSSI value for a connected BLE device at least one second after the last call to readRSSI, effectively limiting the rate at which the RSSI value can be read to once every second. Is this a momentary measurement, or does it represent some kind of average over this one second? If this is not an average, what is the rationale for limiting the rate at which the RSSI value can be measured? Rate limitation verified in this thread: https://developer.apple.com/forums/thread/739727
1
0
520
Oct ’23
AdServices.framework missing crash on iOS 16 and Below
I have a project, when compiled with Xcode 14 works fine on devices iOS17 and below. If I compile the exact same project with Xcode 15, it will run fine on iOS17 but it will crash on launch for any earlier iOS version with the following message: Termination Description: DYLD, dependent dylib '/System/Library/Frameworks/AdServices.framework/AdServices' not found for [...] tried but didn't find: '/System/Library/Frameworks/AdServices.framework/AdServices' As far as I am aware iOS 14+ should have adservices framework. I see this thread: https://developer.apple.com/forums/thread/673708 , where the solution was to set Adservices.framework to optional, but given the compile works fine in Xcode 14 and ios14+ has the framework, I am dubious about this being the answer.
0
0
390
Oct ’23
CoreBluetooth RSSI Measurement Rate Limitation
We are using the CoreBluetooth framework to communicate with a BLE device. We have the requirement to take many RSSI measures over a short span of time. To obtain these measurements, we call readRSSI on the peripheral object. The behavior we observe is that Core Bluetooth invokes didReadRSSI only once every second. This behavior does not seem to be documented anywhere. We have found several reports of the same issue, which have not been answered. For Example: https://developer.apple.com/forums/thread/698235 https://developer.apple.com/forums/thread/77277 https://stackoverflow.com/questions/61216589/fast-update-rssi-bluetooth-in-ios The first question would be: Is this the intended behavior? Secondly, is it documented somewhere? And lastly, are there any workarounds that would allow for a higher rate of taking RSSI measurements than 1 per second?
3
0
752
Oct ’23
Crash in UNUserNotification
I'm working on a new application that uses the UNUserNotification framework. I distributed the application to a few testers. One of them reports a crash at launch, occurring in Dispatch queue: com.apple.usernotifications.UNUserNotificationServiceConnection.call-out. All other users report the application working correctly and have reported no crash. The user is using an iMac Retina 5K, 27-inch, from 2017. He's running macOS 13.6 (22G120). The strange part is that he sent me a screenshot showing that my application does not appear under the Notifications of System Settings, which might explain the crash. The relevant thread that crashes is: Thread 12 Crashed:: Dispatch queue: com.apple.usernotifications.UNUserNotificationServiceConnection.call-out 0 libsystem_kernel.dylib 0x7ff810ecd1e2 __pthread_kill + 10 1 libsystem_pthread.dylib 0x7ff810f04ee6 pthread_kill + 263 2 libsystem_c.dylib 0x7ff810e2bb45 abort + 123 3 libc++abi.dylib 0x7ff810ebf282 abort_message + 241 4 libc++abi.dylib 0x7ff810eb13fb demangling_terminate_handler() + 267 5 libobjc.A.dylib 0x7ff810b857ca _objc_terminate() + 96 6 libc++abi.dylib 0x7ff810ebe6db std::__terminate(void (*)()) + 6 7 libc++abi.dylib 0x7ff810ebe696 std::terminate() + 54 8 libdispatch.dylib 0x7ff810d64047 _dispatch_client_callout + 28 9 libdispatch.dylib 0x7ff810d6a200 _dispatch_lane_serial_drain + 769 10 libdispatch.dylib 0x7ff810d6ad6c _dispatch_lane_invoke + 417 11 libdispatch.dylib 0x7ff810d753fc _dispatch_workloop_worker_thread + 765 12 libsystem_pthread.dylib 0x7ff810f01c55 _pthread_wqthread + 327 13 libsystem_pthread.dylib 0x7ff810f00bbf start_wqthread + 15 Does anyone have any idea of what's happening?
1
2
589
Feb ’24
Code signing for the open source SDKs
Hi everyone, I'm studying the changes in App Privacy. I'm interested in new rules for the SDKs. From the WWDC videos and Apple tutorials, I see that the privacy-impacting SDKs must have a code signature: A lot of aspects of how code signature works and how to make it are described in Verify app dependencies with digital signatures tutorial. However, I didn't understand how to implement code signatures for open-source SDK that are shipped in the form of the source files but not a prebuild framework. So, the app developers build the SDK in their environment. Please help to understand this aspect. Thanks!
4
0
1.3k
Oct ’23
BLE MIDI auto connection/pairing
Hi there, We're developing a product which has a BLE module that advertises itself as a BLE MIDI device. The goal for our iOS app is to have the phone auto-connect to the device, which it already bonded with. Exactly like headphones; Bond one time, and everytime the headphones turn on, the phone automaticly pairs/connects to the headphones. At the moment, a new connection is required every time the the device turns on and advertises. I've read on the apple BLE documentation page, that from iOS 16 or later "the system automatically reconnects Bluetooth Low Energy (BLE) MIDI peripherals when powered on, if the device supports pairing. Previously, it was necessary to use Audio MIDI Setup to establish BLE MIDI connections." ( https://developer.apple.com/documentation/coremidi/midi_bluetooth/ ) However, neither our iPhones that run iOS 16+ or macOS 13+ devices re-connect to the BLE MIDI device. How can I achieve this? As per official BLE documentation, pairing is initiated by the central device (smartphone etc.) and the peripheral (BLE MIDI device) should simply store the MAC address + security information of the central device that it is currently bonded with.
0
0
688
Oct ’23
Ship fat framework with Privacy manifest file containing required reason API also with code signing
Hi I have built framework that I distribute to other organization and they use it in their App. Since I ship the Fat framework (.framework) and not the .xcframework, does Fat framework(from Xcode 15) containing privacy manifest file will be supported? Or do I have to convert the fat framework to the xcframework in order to use privacy manifest file and also code signing? Thanks in the advance.
4
0
514
Oct ’23
The bundle 'Payload/Runner.app/Frameworks/TUICore.framework' is missing plist key.
Actually i get this error due to upload testflight. I'm using tencent cloud services for my flutter application all things are working good and application can successfully run also in device but error is coming when i upload the testflight. Please help me with this issue. The error is following like this : "The bundle 'Payload/Runner.app/Frameworks/TUICore.framework' is missing plist key. The Info.plist file is missing the required key: CFBundleShortVersionString. Please find more information about CFBundleShortVersionString at https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleshortversionstring (ID: 05258dde-3acc-4083-826b-de2c72dc5392)" And also attached screenshot
0
0
578
Oct ’23
how to create xcframework from swift package which has binaryTarget
I am a new developer for iOS. I have a swift package with three modules (A, B, C). A is the product Module A is written in Swift, module B is in objective C, module C is binary target. B is A's dependency, C is B's dependency. How to create xcframework to release as SDK for this swift package? Thanks a lot. Here is the package.swift: let package = Package( name: "A", platforms: [.iOS(.v14), .macOS(.v11)], products: [ .library( name: "A", targets: ["A"] ) ], dependencies: [ // .package(url: /* package url */, from: "1.0.0"), ], targets: [ .target( name: "A", dependencies: ["B"] ), .target( name: "B", dependencies: ["C"], publicHeadersPath: "include" ), .binaryTarget( name: "c", url: "url", checksum: "checksum" ), .testTarget( name: "ATests", dependencies: ["A"] ) ], cxxLanguageStandard: .cxx11
0
0
392
Sep ’23
Making https://github.com/pksprojects/ElasticSwift into an XCF is a living hell
Hello, I have been pulling my teeth out for the past days trying to make this tool into an XCF to cut down on CI time cos caching SPM in azure devops pipelines takes forever (potato download speed etcetc) So.. step 1: Make a framework project and add ElasticSwift from pods pod 'ElasticSwift', :git => 'https://github.com/msavoaia/ElasticSwift.git', :tag => 'v1.0.3' pod 'ElasticSwiftCore', :git => 'https://github.com/msavoaia/ElasticSwift.git', :tag => 'v1.0.3' pod 'ElasticSwiftQueryDSL', :git => 'https://github.com/msavoaia/ElasticSwift.git', :tag => 'v1.0.3' pod 'ElasticSwiftCodableUtils', :git => 'https://github.com/msavoaia/ElasticSwift.git', :tag => 'v1.0.3' pod 'ElasticSwiftNetworking', :git => 'https://github.com/msavoaia/ElasticSwift.git', :tag => 'v1.0.3' (this is a fork I use but you can use the original, it's all the same because the issue is not in Elastic swift but one of its dependencies, swift-nio) or you can add SPM package https://github.com/pksprojects/ElasticSwift Step 2: build fine on device/sim Step 3: try xcodebuild archive -configuration Release -project "ElasticSwiftDRM.xcodeproj" -scheme "ElasticSwiftDRM" -destination 'generic/platform=iOS Simulator' -archivePath "./build/iphonesimulator.xcarchive" SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES (project or workspace, depending if you're using SPM or pods). Step 4: realise swift-nio can't be built with BUILD_LIBRARY_FOR_DISTRIBUTION=YES Step 5: cry All i want is this damned elastic swift as an XCF... please help
0
0
236
Sep ’23
Building an xcframework with MacOS and Mac Catalyst support
Using xcodebuild, I have built (and archived) several variations of a framework with the following destinations: 'generic/platform=iOS', 'generic/platform=iOS Simulator', 'generic/platform=macOS', 'generic/platform=macOS,variant=Mac Catalyst' I now wish to combine the frameworks into an xcframework using the -create-xcframework switch to xcodebuild. As arguments I am passing an instance of each Archive and the framework to xcodebuild. For example: xcodebuild -archive mycode_ios.xcarchive -framework mycode.framework -archive mycode_ios_simulator.xcarchive -framework mycode.framework [... others here ...] -output mycode.xframework With the destinations above I get an error message: A library with the identifier 'macos-arm64_x86_64' already exists. I assume that the macOS framework and the Mac Catalyst framework are conflicting with one another as they share the same platform and architectures. For that matter I guess the iOS simulator may also be considered macOS with those architectures. How are the "library identifiers" generated and is there a way I can ensure the Mac Catalyst, MacOS, and iOS simulator identifiers are distinct? Perhaps I do not need to? Then what is the minimum set of frameworks I would need to support MacOS, Mac Catalyst, iOS (device) and iOS Simulator in one xcframework?
1
0
821
Sep ’23