Post not yet marked as solved
What is createdUserRecordName record type metadata used for?
I can't find any information on it. I see it in CloudKit dashboard for every record type.
Post not yet marked as solved
What would happen if I add an index to a record type in development that isn't there in production, then I deploy the development into production?
Post not yet marked as solved
Where can I find a list of those characters that can be put in front of the ""character in a string literal, such as "n", thus the following would print a new line?
I don't know what those characters are called. I thought they were called "escape characters" or "format specifiers".
print("\n", terminator: "")
Post not yet marked as solved
I'm getting errors when I use NSKeyedArchiver and NSKeyedUnarchiver that works with iOS 15.5 but not with iOS 12.4 nor iOS 12.5.5. I have tried combinations of using devices and simulators. The error message appears in the Xcode debug window when the catch scope handles an error that occurs when the following statement executes:
try NSKeyedUnarchiver.unarchivedObject(ofClass: CNGroup.self, from: dataToUnarchive)
Here is what prints in the Xcode debug window for Error.localizedDescription:
The data couldn’t be read because it isn’t in the correct format.
Here is what prints in the Xcode debug window when only the Error object is put in the print statement parentheses:
Error Domain=NSCocoaErrorDomain Code=4864 "*** -[NSKeyedUnarchiver _initForReadingFromData:error:throwLegacyExceptions:]: incomprehensible archive (0x62, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4)" UserInfo={NSDebugDescription=*** -[NSKeyedUnarchiver _initForReadingFromData:error:throwLegacyExceptions:]: incomprehensible archive (0x62, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x4)}
I found an answer to a similar question like this in Apple Developer Forums which had to do with NSCoder that indicated that the older iOS expects the Data object not to use secure coding, my code as this post concerns is not using secure coding. There are stackoverflow questions that deal with similar questions to mine, but they are very old and they deal with different facets of NSCoder.
The following are the respective function definitions for archive(cnGroup:completionHandler:) and unarchive(dataOfCNGroup:completionHandler) that I use.
Definition for unarchive(dataOfCNGroup:completionHandler)
func archive(cnGroup: CNGroup, completionHandler: @escaping (Result<Data, Error>)->Void) {
do {
if #available(iOS 11.0, *) {
let data: Data = try NSKeyedArchiver.archivedData(withRootObject: cnGroup, requiringSecureCoding: false)
completionHandler(.success(data))
} else {
let data: Data = NSKeyedArchiver.archivedData(withRootObject: cnGroup)
completionHandler(.success(data))
}
} catch {
completionHandler(.failure(error))
}
} // func archive(...) {...}
Definition for archive(cnGroup:completionHandler:)
func unarchive(dataOfCNGroup dataToUnarchive: Data, completionHandler: @escaping (Result<CNGroup, Error>)->Void) {
print("func unarchive(dataOfCNGroup dataToUnarchive: Data, completionHandler: @escaping (Result<CNGroup, Error>)->Void)")
do {
if let unwrappedUnarchivedCNGroup: CNGroup = try NSKeyedUnarchiver.unarchivedObject(ofClass: CNGroup.self, from: dataToUnarchive) {
completionHandler(.success(unwrappedUnarchivedCNGroup))
} else {
let nsError = NSError(domain: "func unarchive(dataOfCNGroup dataToUnarchive: Data, completionHandler: @escaping (Result<CNGroup, Error>?)->Void)", code: #line, userInfo: nil)
let error: Error = nsError
completionHandler(.failure(error))
return
}
} catch {
print("catch error in unarchive(dataOfCNGroup:_:) on line \(#line)")
print("\(error.localizedDescription)")
completionHandler(.failure(error))
}
} // func unarchive(...) {...}
Post not yet marked as solved
I have this error:
[AXRuntimeCommon] AX Lookup problem - errorCode:1100 error:Permission denied portName:'com.apple.iphone.axserver' PID:963
It is preceded by lots of this message, if it matters:
[Assert] +[UIInputViewSetPlacementInvisible placementWithPlacement:]: Should not be called with an invisible placement
I thought it was because I didn't include a key in Info.plist, but I put keys in there that I thought might be needed.
I am using CloudKit sharing and silent push notifications for CloudKit subscriptions, and the Apple documentation says when I set the capabilities for background fetch and remote notifications, the keys would be put in Info.plist by Xcode.
Does this have anything to do with the fact that when my app is run for the first time it asks the user for permission to send notifications. If it's a silent notification that I'm using, I thought the documentation meant the user is not notified at all?
I have searched on the internet and on stack overflow and in Apple developer forums for a solution. Any help will be appreciated.
Post not yet marked as solved
Is there any way to run code in iOS whenever new information are added to certain contacts in contact store?
If I use Notifications, I would have to have a process running at all times, since contacts are able to be changed by Apple's Contacts app. I have looked at App Extensions and there are no extensions I that can be used.
There is a way to run a background process but I recall that has a limited lifespan. Am I correct about this?
I need to update data in CloudKit that saves contacts information that can be shared with other users using their own Apple ID's. CloudKit subscriptions notify my app when something changes in CloudKit, but I also need to update records in CloudKit when something changes in Contacts.
Anyone have any ideas how this might possibly be done?
How do I put an xib file in my project? There is no option for xib in File->New->File.
Post not yet marked as solved
What is the word in programming that means that checks a condition for true or false, and if the condition is false, code is run to make that condition true, so that if the condition is checked again, it would be true?
I believe I have seen something in Swift or Foundations that does this as applied to different things.
Post not yet marked as solved
What does CNContactStoreDidChange notification notify multiple times for a single change my app makes itself?
Post not yet marked as solved
When I add or remove records to a share's hierarchy using CKModifyRecordsOperation, do I need to include the share in the recordsToSave argument of one of the convenience initializers or the property recordsToSave property?
I included the Tests and UITests schemas when I created my Xcode project, but now I want to remove them. Even if I delete those groups, I still get build errors on the files and the files still show in the editor. How do I remove those files from my project for good?
Post not yet marked as solved
I'm trying out UICloudSharingController. I noticed that When I select "Anyone with the link" for "WHO CAN ACCESS" in Share Options, then click to copy the link, a screen comes up saying "Add People" at the top. If anyone with a link can access this share, why does it ask me to add participants?
It seems I remember that before it didn't ask me to add participants when I select "Anyone with the link".
I'm getting message "This operation can fail if the version of the OS on the device is incompatible with the installed version of Xcode. You may also need to restart your mac and device in order to correctly detect compatibility." when I try to run an Xcode iOS project on my iPhone 8. I'm using Xcode 13.2.1 and iOS 15.4 on my iPhone 8.
This post in this forums gives the solution to restart the iOS device and I did that and also restarted the mac. My Mac has macOS Monterey 12.3. My Xcode, Mac, and iPhone 8 all have the most recent updates. That post gives an answer for the same problem but with iOS 15.2.
I have recently changed settings in my iPhone 8 in Accessibility. Could that affect anything?
Post not yet marked as solved
I’m looking for ideas here. Is there anyway I can access the record of which calls a user has made. I would like to figure out a way to know which numbers a user uses most. I want to be able to set a default number for each contact in my app that the user uses. Is there so way I can determine what default phone number user would normally call for a contact?
How do I get the microseconds of an object of type Date? I'm open to any suggestions. I'm not able to set the dateFormat property of DateFormatter to be able to show microseconds.