Buying iTunes content from desktop app - macos

I have a desktop application running on OS X and Windows. I'd like users to be able to buy iTunes content from within the app, and I'd like to earn via the affiliate program.
Is this allowed, and if so, how do I do it? The documentation states:
The use of the affiliate program inside apps is perfectly acceptable
and in fact encouraged behavior for app developers.
but it's not clear if this only applies to iOS apps, or desktop apps, too. Furthermore, I don't know how to pull it of in practice: It seems I am supposed to open a certain URL*. I believe on iOS, this is intercepted, and the user is taken to the App Store. On OS X (or Windows), it seems that this would flash a browser window before opening iTunes, which I'd like to avoid. I'd like to directly open iTunes with the purchase option. Or do I have to embed a browser frame in my app and use some kind of web interface?
*) There is some redirecting, and I can improve the user experience with 'short links', or by handling the redirection manually in the background, but in the end there is always an openURL call.

www.apple.com/itunes/affiliates/
the program applies to most content types, links can be on a website or within an app. essentially anywhere a iTunes store is: Mac: iTunes and Mac App Store. and on iOS: app store, itunes store and iBookstore. and Win: Itunes Store.

Related

Is it possible to get an app to open up when entering a beacon region / within range of a beacon/ibeacon

I'm exploring the end user experience for a beacon prototype but I'm struggling to find any end-user scenarios that involve the app becoming active / opening up on the screen when within range.
I can get the app to send a notification and this is the most likely experience on both Android and iOS but does anyone know if it is possible to get the app to open up?
It's unlikely that I'd want real customers to have their experience interfered with in this way, I think it's ok if the app is already running and is open but not if it's running but not open.
Thanks
On Android this is possible. The reference app for the Android Beacon Library demonstrates how to do exactly this.
On iOS, it is not possible due to OS security restrictions. See here for details. The best you can do is send a local notification to the user when the beacon is detected, then if the user gestures to it, bring up the app.

Can Mac App Store Sandboxed apps use CGEventPost?

For an app I am working on I am using CGEventPost to post some key events and I noticed that it stopped working with sandboxing enabled, even I turned on the "Enable Access for Assistive Devices" system preference.
Is there an entitlement to allow the use of CGEventPost? Or, is there another way to post key events with apps submitted to the Mac App Store?
Can Mac App Store Sandboxed apps use CGEventPost?
No.
Is there an entitlement for CGEventPost? Or is there any way to post key events with apps submitted to the Mac App Store?
No.
If you look at the developer forums, Apple has made it very clear that they will never enable an entitlement for this, because it allows a blatantly obvious way for any app to escape the sandbox.
If you have some more specific need that you can justify (not "post some key events" but "get iPhoto do to XXX, which as far as I know can only be done by posting event YYY at it"), file a bug report, and post a thread on the dev forums.
This will do two things:
Someone at Apple may suggest a workaround--possibly a private one that nobody else can tell you and/or one that isn't normally allowed on the App Store but will be accepted if you've been told to use it.
It increases the chances that Apple will invent some better way to do what you want in the future.
Old question, but accepted answer is wrong. There are apps in Mac App Store that are using CGEventPost to simulate events. For example apps "Remote Mouse" and "Mobile Mouse Server" do that. They can send input to any other app and based on symbols in those apps they are clearly using CGEventPost-function. I would like to know how are they doing it.

Mac App Store app with Safari Extension

I'm trying to understand how an app like 1Password can be on the Mac App Store and come with a Safari extension (and most importantly, how can the extension communicate with the app) because I'd like to do the same.
Is the native app running a server as a subprocess that get's called by the safari extension?
I'd like to know if it's possible to do that and still be Mac App Store + Sandboxing friendly.
1Password uses an agent to communicate between the Mac App and the Safari Extension. The agent is most likely a small server process that can receive RESTful calls from the extension(s). This mechanism allows the synchronization between all the different extensions (Safari, Chrome, Firefox, etc), the client and the main database.
The Safari extension is no longer installed directly by the 1Password app, by the way. Instead, you are directed to a web page that contains the Safari extension download, thus making the App sandbox-friendly.
I believe it's a regular .app that has a Safari extension inside it as a resource.
The app will check for the existence of the Safari extension on application launch, and if it doesn't find it in the default locations it will prompt the user to install it. If the users chooses to install it, the app copies the extensions to the Safari extensions folder.

Blackberry and Windows phone 7 publishing of trivial app

We have a mobile version of our web site which works well on all mobile screen resolutions and sizes. Now, we would like to build a very simple app for Blackberry and Windows Phone 7. The app would be trivial - after you click on its icon, it opens a web browser and send you to our mobile web site. Just like a Windows OS shortcut that you place on your desktop.
Can you tell me if Blackberry and Windows Phone 7 policies allow such app be published? For example, Apple rejected us.
I can't speak for Blackberry, but Requirement 2.10 from the WP7 Application Certification Requirements:
Your application must have distinct,
substantial and legitimate content and
purpose other than merely launching a webpage.
So the answer seems to be no on the WP7 marketplace. Is there a reason you want to create an app like that anyway? On WP7, users can pin a tile to their home screen that will launch the website they've pinned. You could simply encourage users to do that on their WP7 and you'll get the same effect (except your site won't appear in the app list).
Seems this is okay for BlackBerry. See section 4.b of the App World FAQ.
Very strange. Our company has placed a similar application on Android Market and the Appstore and they have been resolved and now they available at stores. Also, I had a similar application for Windovs Phone, and it was also allowed.
P.S. Our application is not just a browser window, it has custom control panel in bottom. Also it has the communication protocol with the site - such a sending pictures from camera and phone and access to phone contacts.

launch an app from a URL on Windows Phone 7

I know that on the iPhone you can register a URL prefix such as myapp://blah which, when opened in safari, will open up your application.
Is there anything like this for Windows Phone 7?
Unfortunately not, applications can only be launched by the user from the application list or home screen. I suspect that the hooks are there in the operating system because the YouTube application is launched when attempting to view a video on the YouTube website from the browser and the user is prompted to install the app if they haven't already got it installed. But unfortunately, this approach isn't publicly available.
You may give Receive Push Notifications in an Application for Windows Phone http://msdn.microsoft.com/en-us/library/ff402556%28v=VS.92%29.aspx a try.

Resources