OS X Application Signing [closed] - macos

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
To Sign an app built for OS X (so that users with gatekeeper or whatever it's called to use them without a popup do I need to be part of the Mac Dev program? Can I use my iOS program certs?
If I choose not to sign people will have to explicitly right click and run the app?
Finally is there any restrictions to what you can do in code on OS X when you don't sign the app or go through the app store?

You must be a member of the Mac Developer program, no, you cannot sign with an iOS certificate. If you do not sign, users must explicitly right click your app under Mountain Lion, Mavericks and above, unless users set their security preferences to allow apps from anywhere, which is not recommended.
If you don't sign the app, you cannot deploy to the App Store and you cannot use MAS-specific features like iCloud or Game Center. You also cannot enforce an app sandbox.

It's not the matter of joining the developer program. The popup could appear unless you distribute your applications through Mac App Store. See Security & Privacy Preference Pane in Preferences.
I'm sorry. I've never heard of signing desktop applications with iOS certificates.
You don't have to join the developer program in order to code-sign your applications. There are other certificate authorities. For example, VeriSign (owned by Symantec) is one. Unlike Apple, Inc., Microsoft does not act as a certificate authority. So they exclusively use VeriSign to offer code certificates to their Windows Store developers. Windows Store developers also have to join Microsoft's developer program separately. In fact, I'm a Windows Store developer member. Anyway, again, there are software certificate venders. But their prices are a lot more expensive. ($150 ~)
If you have purchased a code certificate, you can code-sign your applications with a terminal app (productbuild). In fact, I used to do that for a while.
Why don't you join Mac App Store? It's worth the price. Paying $99 or equivalent, you'll get to use OS software and Xcode without a fee. You can use Mac App Store software certificates to unofficially code-sign your applications even if you don't distribute them through Mac App Store.
There are no restrictions as to what you do with your desktop applications you develop. Even if you don't want to or can't code-sign your applications, you can still distribute them. And other people can use them.

Related

Export XCode App for One Person

Alright so I've built my first desktop app in xcode. The app is intended for use by one person only. I want to export it in the quickest, easiest way possible so they can use it on their laptop.
I've got Mac OS 10.10.3 and XCode 6.4. The target laptop has Mac OS 10.10.5. I am reluctant to update my system and the one on the laptop but will do if I have no other choice.
Getting it to work on my own computer would be a great start. Currently if I do Product > Archive. And then Export "As Mac Application" (unsigned). It creates the app but when I try and open it, it say "App couldn't open because of a problem". Is there a way I can debug this? Or an obvious thing I may have missed?
Ideally I want the app to work on my computer and to be able to transfer it to the target laptop and have it work on there too. I'll pay for the developer licence if I have no other choice but for a single-target application I feel like it's a waste of money.
You don't say it explicitly in your question but do you not have an apple developer certificate? If not, then you will not likely be able to sign the app appropriately to export it for use. If I'm not mistaken, when I export my apps (even for local testing on other machines in my house) the app gets signed with my developer certificate, enabling OSX to see that the app has been signed by a registered developer.
I believe you will be able to run the app in Xcode (without a developer certificate), but in order to export it you need a signature (development certificate) which is provided as part of the Apple Developer subscription.
An easy thing you could try to do, assuming your app builds:
Run your app
Right click the app icon in the dock
Click Options -> Show in Finder
Boom there's your app bundle. Send that over to your recipient
It seems fairly obvious in hindsight but I ended up installing XCode on the target computer (using the Apple Developer site to get the same version as I was running on the dev computer. I was then able to just copy the project across and run it. This wasn't ideal but it did the job.

Do I need an Apple Developer account? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 5 years ago.
Improve this question
I am newbie in Xcode and Mac. I can make programs working well on simulators but cant make dmg files . Somewhere I heard I need an Apple Developer account ( 99$) for that but I dont want to publish my file on App store. I just need to install it on 1 or 2 other Macs.
With Xcode 7 you are no longer required to have a developer account in order to test your apps on your Mac and/or iOS device:
Check it out here.
Please notice that this is the officially supported by Apple, but you'll have to use Xcode 7 or later and your iCloud account.
Before going on - You CAN develop iOS apps and deploy to device from Xcode without developer account, but as far as I know it can be done only on jailbroken devices.
Check this link for more info.
UPDATE
sorry, I thought you meant developing for mobile. check this video about Creation of .dmg files for more information.
ORIGINAL ANSWER
Have a look at the apple developers page to see the different account types. Specifically, the free account:
If you're not ready to join one of our developer programs, you can register as an Apple Developer for free. As a registered Apple Developer you gain access to development tools, resources and information to assist you in creating apps for iOS and OS X. Learn more
With the free account you could run your app on any mac OS as well as on an iPhone connected to the mac OS.
With the paid account you could install the app on any provisioning device and submit the app to the store.
If you are developing for the mac and you are not going to publish on mac app store, you do not need a developer account.
You do need an account for any of the following:
Install an app on an iOS device (even your own one for debugging)
Publish an app on any of the app stores (either iOS or Mac)
Edit: note that if you do not have an account, your Os X applications will be unsigned. They'll work, but each of your users will get a warning and will need to lower the security settings of his Mac in order to be able to run the application (or, at least, he'll have to approve each application specifically).
You need Developer account for developing and debugging application on device. Of course, there are several ways to do that without this account... Have a look:
http://www.alexwhittemore.com/developing-jailbroken-iphone-ios-401/
You don't need an Apple developer account to make apps, but if you want to put them on the App Store, gain access to developer beta release software and forums, then yes you do.
You can develop Mac applications without a membership, but if you want to develop iOS applications, you need a membership to run your app on any device.
If you want to run your iOS app in the iOS Simulator, though, you don't need a membership. You can install Xcode and the iOS Simulator on any Mac running 10.7 Lion or later.
Maybe you want to use the Simulator binaries on other Macs without having to compile the app on the other Macs, then you should have a look at that tool: https://github.com/landonf/simlaunch

Bypass Gatekeeper in Mac OS X Apps without a Mac Developer Membership

Scenario
I want to release an app for Mac OS X, but not on the AppStore. The app runs on 10.6 - 10.8 and up.
Problem
Apple requires all apps for Mac OS X 10.8+ to be signed by the developer to get past Gatekeeper. And unless I tell each user to temporarily disable and re-enable gatekeeper just for my app, according to this document and the Mountain Lion change log... my app won't be allowed to run.
From the wording on Apple's website, it sounds like I'll have to pay the $99.00 a year for the certificate. However, I do not want to pay the $99 - I'm not publishing to the AppStore!
Question
Is there any way I can get around paying the $99 for distribution on 10.8+? I know my app will work on 10.6 and 10.7, but according to Apple it won't be allowed to run on 10.8 without the certificate. Is that true? How can I distribute on 10.8+ (preferably a DMG) without a $99 distribution certificate? Thanks in advance!
Edit #1
DMG files are not authenticated by Gatekepper, only the app itself is.
OS X Lion 10.7.5+ also has Gatekeeper * angry face *
Apple currently provides no way to get around Gatekeeper without paying the $99 / year membership fee. To me, this seems unfair because it squishes out the smaller developers (but that's a discussion for elsewhere).
For a rather cumbersome workaround, one can include a ReadMe or note on the download page for their software to explain to users that they need to right click your app and then click 'Open' and then click confirm to run it. I have also found through experimenting that Gatekeeper does not run security checks on DMG files or the installation of files, only the execution / running of Apps. So one could include some kind of note in their DMG installer that told the user exactly how to install and run the app.
Hopefully Apple will provide a workaround for developers (possibly a cheaper solution for a limited membership) that distribute freeware and open source software.
You don't need to purchase membership. Just get a code signing certificate from any agency and sign your app with it. Then it will bypass the Gatekeeper check. Gatekeeper only checks whether the app is from identified developer or not.

Need apple Mac developer account for distribute free app?

I'm developing Mac app for free.
In iOS , we need developer account to distribute for upload into iTunes Store.
In Mac application, Is that also need to mac developer account for free distribute.
Firefox distribute their app free , we can download that dmg file from their website , not in Mac app store.
Please let me know is that need?
You need a developer account to submit your application to any of Apple's online stores. The price you want to sell for is irrelevant (even if that price is $0).
You don't need one to distribute the program yourself.
iOS will not allow software to be installed except with the Apple online store. The exceptions are:
Web applications
Jailbroken iOS devices
OS X Lion and earlier has no restrictions on what software can be installed.
OS X Mountain Lion will have a user preference that can limit software install sources (including the strictest setting which limits it to the Apple App Store only).

OSX Lion application with iCloud access

I need to build an application for Lion with iCloud functionality.
I know that I have to sign the application in order to use entitlements options to enable iCloud.
I do NOT have to distribute my application on MacStore, just to sell it directly to my clients.
Do I need to subscribe to Mac Developer program in order to get a working certificate? Or I can generate a self-signed one and use it to sign my application?
Thanks
Currently it looks like you have to sign up to the Mac Dev Programme to be able to support iCloud in your apps (you need to edit a setting in the portal to enable iCloud for your bundle ID).
Additionally, it is unclear if non-appstore apps will be able to support iCloud anyway.

Resources