Mac App Store : Entitlements?

So, let me see if I get things right: an app using Apple’s mechanism cannot be sold outside the Apple Store. While the same app without Apple’s mechanism can be sold outside.
Right?

[quote=245722:@Carlo Rubini]So, let me see if I get things right: an app using Apple’s mechanism cannot be sold outside the Apple Store. While the same app without Apple’s mechanism can be sold outside.
Right?[/quote]

Apps sold outside of the MAS can have for instance mechanisms to promote some features or other products, and a system of payment to purchase them, would it be a simple Paypal button or a more elaborate scheme.

In the MAS, this is strictly forbidden, because Apple has its own in-App-Purchase mechanism, where users must buy in the MAS.

Fine. Thank you.

[quote=245728:@Michel Bujardet]Apps sold outside of the MAS can have for instance mechanisms to promote some features or other products, and a system of payment to purchase them, would it be a simple Paypal button or a more elaborate scheme.

In the MAS, this is strictly forbidden, because Apple has its own in-App-Purchase mechanism, where users must buy in the MAS.[/quote]
hmm… I think I need to hire you as my copy editor, you said what I meant in a far more understandable way. Sometimes my brain gets addled and I can’t think how to explain things.

Thank you Sam. If you need any assistance, just whistle :slight_smile:

What does “Addled” mean???

Old English word. Originally relating to eggs… either scrambled or rotten, I think.
Now means ‘confused’ or ‘scatterbrained’

http://dictionary.cambridge.org/dictionary/english/addle

When I use the ReceiptTester.zip in my application (After using AppWrapper), I got this error message in “Console” and the app does not run.

storelegacy(943) deny mach-lookup com.apple.lsd.modifydb

Process: storelegacy [943]
Path: /System/Library/PrivateFrameworks/CommerceKit.framework/Versions/A/Resources/storelegacy
Load Address: 0x104ead000
Identifier: storelegacy
Version: ??? (???)
Code Type: x86_64 (Native)
Parent Process: launchd [1]

Date/Time: 2016-02-09 00:54:48.280 +0100
OS Version: Mac OS X 10.11.3 (15D21)
Report Version: 8

Thread 0:
0 libsystem_kernel.dylib 0x00007fff91bc4386 mach_msg_trap + 10
1 CoreFoundation 0x00007fff89423624 __CFRunLoopServiceMachPort + 212
2 CoreFoundation 0x00007fff89422aec __CFRunLoopRun + 1356
3 CoreFoundation 0x00007fff89422338 CFRunLoopRunSpecific + 296
4 CoreFoundation 0x00007fff894e51f1 CFRunLoopRun + 97
5 storelegacy 0x0000000104eae764
6 libdyld.dylib 0x00007fff876575ad start + 1

Thread 1:
0 libsystem_kernel.dylib 0x00007fff91bcaff6 kevent_qos + 10
1 libdispatch.dylib 0x00007fff8a956d01 _dispatch_autorelease_pool_pop + 0

Thread 2:
0 libsystem_kernel.dylib 0x00007fff91bc4386 mach_msg_trap + 10
1 libxpc.dylib 0x00007fff86126bde xpc_pipe_routine + 249
2 libxpc.dylib 0x00007fff8612a212 _xpc_interface_routine + 163
3 libxpc.dylib 0x00007fff8612c2be _xpc_look_up_endpoint + 192
4 libxpc.dylib 0x00007fff8612c1d3 _xpc_connection_bootstrap_look_up_slow + 312
5 libxpc.dylib 0x00007fff86129d37 _xpc_connection_init + 562
6 libxpc.dylib 0x00007fff86129af7 _xpc_connection_resume_init + 14
7 libdispatch.dylib 0x00007fff8a95133f _dispatch_client_callout + 8
8 libdispatch.dylib 0x00007fff8a9551cf _dispatch_root_queue_drain + 1890
9 libdispatch.dylib 0x00007fff8a954a34 _dispatch_worker_thread3 + 91
10 libsystem_pthread.dylib 0x00007fff8850668f _pthread_wqthread + 1129
11 libsystem_pthread.dylib 0x00007fff88504365 start_wqthread + 13

Thread 3:
0 libsystem_kernel.dylib 0x00007fff91bc43c2 semaphore_wait_trap + 10
1 libxpc.dylib 0x00007fff8612c595 xpc_connection_send_message_with_reply_sync + 218
2 LaunchServices 0x00007fff81eb0b42 _LSRegisterItemInfo + 333
3 LaunchServices 0x00007fff81f213ee _LSDispatchRegistration(LSContext*, char const*, LSRegistrationInfo*, __CFData const*, __CFData const*, __CFData const*, __CFURL const*, __CFDictionary const*, unsigned int*, __CFArray**, unsigned char*) + 100
4 LaunchServices 0x00007fff81f2163b _LSSetContainerState + 120
5 LaunchServices 0x00007fff81e82ab2 _LSContainerCheckState + 280
6 LaunchServices 0x00007fff81ebe95a _LSPluginFindWithInfo + 575
7 LaunchServices 0x00007fff81f60d89 +[LSPlugInKitProxy pluginKitProxyForURL:] + 32
8 storelegacy 0x0000000104eaf231
9 storelegacy 0x0000000104eb0417
10 libxpc.dylib 0x00007fff8612b396 _xpc_connection_call_event_handler + 35
11 libxpc.dylib 0x00007fff8612b00f _xpc_connection_mach_event + 2198
12 libdispatch.dylib 0x00007fff8a9594ca _dispatch_client_callout4 + 9
13 libdispatch.dylib 0x00007fff8a95993c _dispatch_mach_msg_invoke + 555
14 libdispatch.dylib 0x00007fff8a956134 _dispatch_queue_drain + 1207
15 libdispatch.dylib 0x00007fff8a958293 _dispatch_mach_invoke + 735
16 libdispatch.dylib 0x00007fff8a95133f _dispatch_client_callout + 8
17 libdispatch.dylib 0x00007fff8a9551cf _dispatch_root_queue_drain + 1890
18 libdispatch.dylib 0x00007fff8a954a34 _dispatch_worker_thread3 + 91
19 libsystem_pthread.dylib 0x00007fff8850668f _pthread_wqthread + 1129
20 libsystem_pthread.dylib 0x00007fff88504365 start_wqthread + 13

Thread 4:
0 libsystem_kernel.dylib 0x00007fff91bca6de __workq_kernreturn + 10
1 libsystem_pthread.dylib 0x00007fff88504365 start_wqthread + 13

Thread 5:
0 libsystem_kernel.dylib 0x00007fff91bca6de __workq_kernreturn + 10
1 libsystem_pthread.dylib 0x00007fff88504365 start_wqthread + 13

Binary Images:
0x104ead000 - 0x104eb1fff storelegacy (459) /System/Library/PrivateFrameworks/CommerceKit.framework/Versions/A/Resources/storelegacy
0x7fff81e75000 - 0x7fff81f9aff7 com.apple.LaunchServices (728.6 - 728.6) <204cd7a1-d99c-3655-82d7-e8e89f9c666b> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices
0x7fff86124000 - 0x7fff8614dfff libxpc.dylib (756.20.4) <61ab4610-9304-354c-9e9b-d57198ae9866> /usr/lib/system/libxpc.dylib
0x7fff87654000 - 0x7fff87657ffb libdyld.dylib (360.19) /usr/lib/system/libdyld.dylib
0x7fff88503000 - 0x7fff8850cff7 libsystem_pthread.dylib (138.10.4) <327cecd0-b881-3153-8fcc-4fd4818b7f16> /usr/lib/system/libsystem_pthread.dylib
0x7fff893b3000 - 0x7fff89829fff com.apple.CoreFoundation (6.9 - 1256.14) <768a7fb7-9143-3148-8591-7c6ed3162d35> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
0x7fff8a94f000 - 0x7fff8a97cfff libdispatch.dylib (501.20.1) <324c9189-2af3-3356-847f-6f4ce1c6e901> /usr/lib/system/libdispatch.dylib
0x7fff91bb3000 - 0x7fff91bd1fff libsystem_kernel.dylib (3248.30.4) <9ceb6c3b-1caf-3c32-a9fd-93bc72cbcea1> /usr/lib/system/libsystem_kernel.dylib

It seems the one of Apple’s app store components is crashing, try restarting Windows (I mean OS X). Failing that, make sure that use Xcode to install your certificates (as it installs a basic provisioning profile at the same time).

it shouldn’t be anything to do with the receipt validation code…

Thank you Sam,
tested on a new virtual machine with 10.11.2, everything is working. Thanks for the 64Bit support.

[quote=246038:@Horst Jehle]Thank you Sam,
tested on a new virtual machine with 10.11.2, everything is working. Thanks for the 64Bit support.[/quote]
Welcome to El Capitan, Windows for Mac. Where two identical machines can operate so differently. I used to laugh when I heard about Dell machines exhibiting this issue, it’s now a feature of OS X too.

So true: I recently upgraded from 10.10 to 10.11 and, boy, it’s kind of a mess. Lots of weird bugs that really shouldn’t be there. Hoping 10.11.4 fixes a bunch of stuff.

So far so good. Seems a lot more stable.

If you swap those numbers, you get the most stable OS X version ever shipped:

10.4.11

:slight_smile:

Update on original post: App is under review. This will be interesting…:wink:

[quote=247629:@Tim Jones]If you swap those numbers, you get the most stable OS X version ever shipped:

10.4.11

:)[/quote]

Heh Luddites Unite !
I too am not impressed with the rapidity of Apple’s releases as they haven’t exactly been “bug free”
They REALLY need to do a 10.6 bug fix breather release again

Funnily enough Cue & Federighi were interviewed & commented about “all those bugs”

Advice please (warning: possible blinkered reviewer alert)
Ive had my first rejection on the grounds that a sandboxed app should only use the minimum set of entitlements

My app can open pictures
It can create user documents and open the same.
It can print.

I have requested
Sandbox
security.assets.pictures.read-only
security.device.usb
security.files.downloads.read-write
security.files.user-selected.read-write
security.print

which all make sense to me.
Obviously it makes sense for the Apple reviewer NOT to tell me which one they dont like.
Anyone here have an idea what they are complaining about?

Without knowing your app, going from just the description here

security.device.usb // You didn’t say your app could access the camera, so this is assuming it doesn’t
security.files.downloads.read-write // I’m just going to hazard a guess your app is not a download tool.
security.files.user-selected.read-write // I didn’t think you needed an entitlement if you use Get*FileDialog, this I could be wrong on.

However, I hear they’re human, so if you ask they might tell you.

Spot on Tim.
Just had a reply.
Essentially, because Im using a standard file open/save dialog, I don’t need to ask for access to any particular folder.
Sandboxing will handle that.
Should be a simple twiddle in App Wrapper, then.