Post

Replies

Boosts

Views

Activity

macOS & NSUserDefaults
Folks;When I run an archived copy of my mac application on a test dev machine (not my main dev box) I see errors in the Console log that trouble me...1) I see this error immediately before any of my code executes!error 16:14:25.839821 -0700 [MYAPPNAME] Couldn't read values in CFPrefsPlistSource<0x6000000ed280> (Domain: [MYAPPBUNDLEID], User: kCFPreferencesCurrentUser, ByHost: No, Container: (null), Contents Need Refresh: Yes): accessing preferences outside an application's container requires user-preference-read or file-read-data sandbox access, detaching from cfprefsdI open my standard defaults (a .plist) in -awakeFromNib like so: NSUserDefaults *ud = [NSUserDefaults standardUserDefaults]; [ud registerDefaults:[NSDictionary dictionaryWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"WhodoMacOSDefaults" ofType:@"plist"]]]; [ud setObject:launch_Date forKey:kKudosLaunchDate];This activity throws 2 of these errors in the console:error 16:14:26.429881 -0700 [MYAPPNAME] attempt to set <private> for key in <private> in non-persistent preferences domain CFPrefsPlistSource<0x6000000ed280> (Domain: [MYAPPBUNDLEID], User: kCFPreferencesCurrentUser, ByHost: No, Container: (null), Contents Need Refresh: Yes)Then subsequently every 'set' for NSUserDefaults throw another of these into the console log...Nothing fancy going on in this app: no app groups, no iCloud, no hardened runtime...I don't see a 'user-preference-read' option in the standard entitlement document. Am I missing some basic conguration setting?Is this all just a by-product of running a 'development' archive?Any thoughts appreciated!Steve
Topic: UI Frameworks SubTopic: AppKit Tags:
6
0
9.2k
May ’19
How to make iOS App Preview for 6.5"
The specs state that the resolution for the video should be 886x1920 (or 1920x886).How do I create a video with this resoultion?I have looked at QuickTime Player, iMovie, and FinalCutPro and I don't see a way to produce a video with this resolution.BTW: I don't have an iPhoneX of any kind. Does this fact alone mean I cannot produce a 6.5 inch App Preview?It doesn't seem like it should but maybe..??I hope I am just missing something easy but in the programs mentioned above I find only 480p, 720p, 1080p, and 4K.Any guidance (a link to a "how to" with tools required?) would be really appreciated!
1
0
2k
Nov ’19
App Store Connect Notifications
When logged into App Store Connect and viewing Users and Access I select Account Holder and then open my AppleID.On the ensuing window I see the possible notifications that I can sign up for.One is entitled 'Developer Response' which has the clarifying text 'Receive an email if a customer edits a review you’ve responded to.'I would like to advocate for a new notification:'Receive an email if a customer creates a review.'Without this notification I must manually check for this activity.Even with one app this seems to me to be an unnecessary use of my limited time.With now several apps this is becoming quite tedious...Please advise if there is a better way to advocate for this useful feature.Steve
2
1
8.2k
Apr ’20
Mac App Store Sandbox Test -> App is Damaged..
macOS 10.15.6 - Xcode 11.7 This app has been in App Store for over a year. The code in question here has been working and tested. It no longer functions as before... Attempting to test a brand new install using a sandbox account on a Mac. Receipt validation is run in main.m with: ...             return NSApplicationMain(argc, (const char **)argv);         } } @catch (NSException *e) {         exit(173);     } Delete the appropriate folder in ~/../Containers Clean - Build - Run When Run the exception is trapped and the prompt for sandbox credentials is shown. Upon completion of the credentials I receive the 'app is damaged and cannot be opened...' I have logged out, I have rebooted, I have tried with a different sandbox account - all to no avail. Any thoughts would be deeply appreciated! Thanks for your time! Steve
11
0
3.1k
Sep ’20
dataForType:NSPasteboardTypeRTF
Now using 10.15.7 and Xcode 12.0 Have had an app which reads data off the general pasteboard. This app is no longer behaving as it once did... // a standard service entry point (void) xyzService:(NSPasteboard *)pboard userData:(NSString *)userData error:(NSString **)error; {     NSData *rtfData=[pboard dataForType:NSPasteboardTypeRTF];     if (rtfData!=nil) { ... } ... } This used to reliably report the rtf data on the current pasteboard. Now rtfData is a 0 byte non null Data object. Has there been some change that I am just completely unaware of? Why would this just stop working? Thank-You for any help here!
Topic: UI Frameworks SubTopic: AppKit Tags:
0
0
433
Oct ’20
macOS - NSPasteboard not functioning as it used to??
Using 10.15.7 and Xcode 12.0 I've had an app for years which reads data off of the general pasteboard. This app is no longer behaving as it once did... // a standard service entry point- (void) xyzService:(NSPasteboard *)pboard userData:(NSString *)userData error:(NSString **)error; {    NSData *rtfData=[pboard dataForType:NSPasteboardTypeRTF];    if (rtfData!=nil) {... }...} This used to reliably report the rtf data on the current pasteboard. Now rtfData is a 0 byte non null Data object. Has there been some change that I am just completely unaware of? Why would this just stop working? NOTE: NSPasteboardTypeString still returns the usual response.... Thank-You for any help here!
11
0
2.5k
Oct ’20
In-App Purchase Question
Folks; Running on a Developer Transition Kit - (A12Z) macOS 11.2  - Xcode 12.3 I have built a free to download Mac App which has a variety of in-app purchases; some are auto-renewing subscriptions, some are non-consumable. (all of these in-app purchases have been approved by Apple) I am experiencing difficulty testing in the sandbox. I have logged out of my user account in the Mac App Store. I have removed the existing Container folder from user’s Library folder. I have created a brand new testing account in App Store Connect. I have done a clean and build in Xcode. When I then run the app I am prompted to ‘Sign in to use this application on this computer’. (“AppName” was purchased using the App Store on another computer….) I enter the new AppleID I just set up in App Store Connect and then I am prompted for a password. After I supply the password the app crashes: Application Specific Information: dyld: launch, loading dependent libraries Dyld Error Message:   dyld: Using shared cache: 775BB65E-F213-3A39-ACF0-7343BCDE1E6C Library not loaded: @executable_path/../Frameworks/……..   Referenced from: /Users/USER/Library/Developer/Xcode/DerivedData/AppName-hcuqdwzeykfjvqfdldsnjiocbxtj/Build/Products/Debug/AppName.app/Contents/MacOS/AppName   Reason: image not found If I immediately re-run the application at this point I get a successful launch.... As part of my app’s normal launch I process the receipt. During this successful re-launch the receipt is found and is correctly processed. It correctly determines that no in-app purchases have yet been made. In the app code I successfully perform an SKProductRequest (I receive the correct information back). Based on this SKProductRequest success I then attempt to make an in-app purchase which uses the product information from the SKProductRequest I am prompted to ‘Sign in to the App Store’ (If you have an Apple ID, sign in with it here.  [Environment: Sandbox])  Buttons: Cancel  & Buy - there is a textfield to enter an Apple ID (the pre-filled in Apple ID is NOT the Apple ID I submitted during the initial launch…. When I click the ‘Buy’ I am prompted for the password.   When I supply the password I then prompted with a different dialog window ‘Sign In to the App Store’ (If you have an Apple ID, sign in with it here.  [Environment: Sandbox])  Buttons: Cancel  & Buy - no textfield to enter an Apple ID If I click the ‘Buy’ button, the dialog window disappears for a second or two and then re-appears After the 4th such 'Buy' click I see an error logged by SKPaymentQueue: <SKPaymentQueue: 0x600001a13b80>: Payment completed with error: Error Domain=ASDErrorDomain Code=500 "Unhandled exception"  UserInfo={NSUnderlyingError=0x600001612700 {Error Domain=AMSErrorDomain Code=306 "Reached max retry count"  UserInfo={NSLocalizedDescription=Reached max retry count, NSLocalizedFailureReason=Task reached max retry count (3 / 3);}},  NSLocalizedFailureReason=An unknown error occurred, NSLocalizedDescription=Unhandled exception} Can anyone provide some clarity as to what I am doing wrong? Any thoughts appreciated!! Steve
1
1
1.4k
Jan ’21
Unable to use Sandbox for testing in Mac App Store
Folks; I've had an app in the Mac App Store for some time. I used a test account setup in App Store Connect to test this. Let's call this testAccount1. Everything worked as expected. For various reasons I have eliminated that account in App Store Connect. Now I need to perform more sandbox testing against this app. I have setup a new account in App Store Connect. Let's call this testAccount2. BTW: macOS 11.2 Beta (20D5042d) on Transition Kit (A12Z Bionic) with Xcode 12.3 Used Xcode to perform a 'clean' Used Finder to remove the ~/Library/Containter/'appName' folder. When I launch the app in Xcode and reach the appropriate point I perform 'exit(173)' This results in a prompt to sign into the App Store which I do by providing TestAccount2. So far so good. Now when I attempt to purchase an In-App Purchase I am again prompted to Sign in to the App Store. This window contains a text field to enter an AppleID. This field is pre-populated with TestAccount1!!! scenario 1: over-ride the pre--populated AppleID with TestAccout2. in this case I am then prompted to enter the password. after entering the password I receive a prompt to 'Sign in to App Store' this window does not contain a text field to enter an AppleID (only 'Cancel' or 'Buy') On the 4th click it errors out .... " Code=306 "Reached max retry count" scenario 2: accept the pre-poulated AppleID NOTE:this AppleID is not valid - I have deleted this from App Store Connect after entering the password the normal in-app prompts appear after confirming the purchase I receive : "You are not authorized to make purchases of this InApp in Sandbox at this time." Bottom Line: I cannot test with a new Sandbox account I cannot test with an invalid Sandbox account Can someone please clarify how I am supposed to test in Mac App Store Sandbox? Please! Steve
0
0
793
Jan ’21
How to get rid of pesky file created by Migration Assistant
macOS 11.2.1 File was created by Migration Assistant directly in Trash ~/.Trash/delete/Delete/Containers/com.apple.mail/Data/DataVaults Empty Trash throws multiple ‘in use’ errors beginning at ‘Data’ and moving up nested folders Running First Aid in Recovery Mode does not change anything. This is what Apple Support documents recommend. Yes, I have renamed upper 2 folders… I have successfully assigned ‘Read/Write’ to my user account (which is an admin account) to all folders Finder says ‘You have unknown access’ to ‘DataVaults’ Cannot move any folder out of Trash Cannot 'chown' any item in the hierarchy Use of ’sudo’ does not alter results How do I get rid of this? Steve
1
0
690
Feb ’21
Please Help - Brain Block
Using Xcode 12.5.1 I have 2 properties on an object @property NSMutableArray *mutA1; @property NSMutableArray *mutA2; During initialization I do this: self.mutA1 = [NSMutableArray arrayWithCapacity:10]; self.mutA2 = [NSMutableArray arrayWithCapacity:10]; The first assignment works fine but I get an error on the second assignment! Exception NSException * "[<__NSArrayM 0x6000037f1ec0> addObserver:forKeyPath:options:context:] is not supported. Key path: count" 0x00006000037d74e0 What can explain this? I am just stumped!! Thank you for any help! Steve
2
0
807
Aug ’21
Using an App Review .crash file
Hello Folks; I'm trying to utilize a crash log from App Review. I've uploaded the app with DWARF with dSYM File. When I open the App Review .crash file in Xcode I see this: #0 in __pthread_kill () #1 in pthread_kill () #2 in abort () #3 in abort_message () #4 in demangling_terminate_handler() () #5 in _objc_terminate() () #6 in std::__terminate(void (*)()) () #7 in std::terminate() () #8 in _dispatch_client_callout () #9 in _dispatch_main_queue_callback_4CF () #10 in __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ () #11 in __CFRunLoopRun () #12 in CFRunLoopRunSpecific () #13 in RunCurrentEventLoopInMode () #14 in ReceiveNextEventCommon () #15 in _BlockUntilNextEventMatchingListInModeWithFilter () #16 in _DPSNextEvent () #17 in -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] () #18 in -[NSApplication run] () #19 in NSApplicationMain () #20 in 0x10a062000 () #21 in 0x10a062000 () #22 in start () Whereas in Console it looks like this: 0 CoreFoundation 0x00007fff2053783b __exceptionPreprocess + 242 1 libobjc.A.dylib 0x00007fff2026fd92 objc_exception_throw + 48 2 CoreFoundation 0x00007fff205609a2 +[NSException raise:format:arguments:] + 88 3 Foundation 0x00007fff2131e4d2 -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 191 4 AppKit 0x00007fff22d02679 -[NSCell _objectValue:forString:errorDescription:] + 260 5 AppKit 0x00007fff22d024d3 -[NSCell setStringValue:] + 44 6 AppKit 0x00007fff22d7af3e -[NSControl setStringValue:] + 121 7 AppXYZ 0x000000010a069107 AppXYZ + 28935 8 AppXYZ 0x000000010a07eed1 AppXYZ + 118481 9 libdispatch.dylib 0x00007fff20219623 _dispatch_call_block_and_release + 12 10 libdispatch.dylib 0x00007fff2021a806 _dispatch_client_callout + 8 11 libdispatch.dylib 0x00007fff20226b4f _dispatch_main_queue_callback_4CF + 940 12 CoreFoundation 0x00007fff204fa5a8 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__ + 9 13 CoreFoundation 0x00007fff204bc7a2 __CFRunLoopRun + 2755 14 CoreFoundation 0x00007fff204bb61c CFRunLoopRunSpecific + 563 15 HIToolbox 0x00007fff28701a83 RunCurrentEventLoopInMode + 292 16 HIToolbox 0x00007fff287017e5 ReceiveNextEventCommon + 587 17 HIToolbox 0x00007fff28701583 _BlockUntilNextEventMatchingListInModeWithFilter + 70 18 AppKit 0x00007fff22cc3172 _DPSNextEvent + 864 19 AppKit 0x00007fff22cc1945 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1364 20 AppKit 0x00007fff22cb3c69 -[NSApplication run] + 586 21 AppKit 0x00007fff22c87e6c NSApplicationMain + 816 22 AppXYZ 0x000000010a155a62 AppXYZ + 997986 23 AppXYZ 0x000000010a155afb AppXYZ + 998139 24 libdyld.dylib 0x00007fff203dff3d start + 1 25 ??? 0x0000000000000001 0x0 + 1 So what am trying to understand is how to utilize lines 7 & 8 in the Console. Reading through the Docs (https://developer.apple.com/documentation/xcode/adding-identifiable-symbol-names-to-a-crash-report#Symbolicate-the-Crash-Report-in-Xcode) it seems like I should use 'atos' but its not working out.... For starters there is no 'Binary Architecture' information in the 'Binary Images' section of the .crash file. Can someone point out what I need to do here or clarify my misunderstanding? Thank for any help! Steve
1
0
1k
Sep ’21
Entitlement Question for a macOS Text Processing Service
Folks; I have a sandboxed macOS app that provides text handling via a service. This app has been for sale in the Mac App Store for several years. The basic mechanics of the service work just fine… To set the scene: user opens a file in some fashion user makes a text selection within this open file user invokes my app’s service In the course of development of this service, I now have established an NSURL (file) for the user’s document. However, when I later attempt to open this url I get a sandbox error: client lacks entitlements? for path: …. NOTE: It does not matter where the file is located! My app already has this entitlement: com.apple.security.files.user-selected.read-write My question: Is there an entitlement that will permit me to programmatically open this fileURL?
5
0
2.0k
Jun ’22