we run a small software company in Guatemala and we're having a bad time deciding/investigating how to deploy an app we were hired to develop.
The current options are, enrolling on the enterprise program, but does that means that we are as a third party cannot do that? How do we get the DUN for our client? (we would jump the app store validation)
Enroll to the traditional developer program and have our application sold via the B2B portal, but Guatemala is not listed as a country where our customer can enroll (and as a custom app we dont know if the approval process would approve our app)
Please any previous experience you can share is welcome.
You can go with below steps:
1) Create developer account on Apple. (You may ask to client to create it).
2) Request client to provide devices UDID number on which, they will test your app. (You can achieve this by going to iTunes, once device connected).
3) Create AppID, provisional profile with client UDID added.
4) Create AdHoc bundle and sent to client for testing the app.
5) Just check the AppStore from where your client can download app from app store. And simple upload the app on AppStore and check that country only.
Note:
To deploy app on App Store, you need developer account. You can not deploy app on App Store with Enterprice account.
Hope, you got an idea of whole process.
Let me know in case of any difficulty.
Cheers!
As stated above in comment. You need to have developer account, to create provisioning profile having device UDID attached.
In your case, you can request your client to create developer account or enterprise account for you or request his client to create developer or enterprise account.
You can also use TestFlight which is great tool for sharing enterprise applications for iOS.
Hope this info helps you.
Related
We use apple developer account for submit IOS application in appStore. we got this email from apple after 10 days :
We are unable to include your app, MY APPLICATION, on the App Store. Under the U.S. sanctions regulations, the App Store cannot host, distribute, or do business with apps or developers connected to certain U.S. embargoed countries.
This area of law is complex and constantly changing. If the existing restrictions shift, we encourage you to resubmit your app for inclusion on the App Store.
our company in Iran and apple reject our request for Political reason.
now we want to publish application with enterprise account, my question is with enterprise account we should have get appStore review? that means We will rejected.
Enterprise account mean it should be used within your company, the app signed by that will be able to install to any devices, as long as the user trust the account in device management, it cannot be use to publish on AppStore.
You can anyway, host it in your website and ask people to download from there and trust the company without needing approval from Apple
AppStore :
With AppStore account you need to distribute application through iTunes and it will go through iOS review guidelines and It should satisfy those guidelines.
Enterprise :
With Enterprise account you will still be able to work exactly like how you process for app development. But, Under enterprise account you will not be asked for application review.
Using Enterprise account you will be generating InHouse certificates and provisioning profiles and using it you can distribute your app within your organization and you will not get portal to download app like AppStore.
You need to create or expose link from there user can download app.
Your app .plist should be included with link or path where the .ipa is stored.
You can deploy your app at any time without apple review process.
A good advise for you (your company), establish a small branch outside Iran (where, there is no any kind of restriction) and register for developer account from new location.
OR
Your company can create Individual account by using trustable resource of organization living outside Iran (with citizenship of other county).
Enterprise account is for enterprise (in house) applications only. Enterprise account is useful, If you want to distribute your application to specific segment of users, to whom you can share IPA build directly using downloable source (server).
You can find official information about apple enterprise account from this link:
Apple Developer Enterprise Program
But if want to distribute your app for general public usage, which is not limited to specific segment of users, you should use/choose Individuals or Organisation (Non-Enterprise) Apple Developer Program
Here you can see difference between enterprise & developer account:
Choosing a Membership
i have some doubt to how distributing for clients that have an Enterprise Developer account works.
Here is the situation:
-My company have its own developer account (normal one not enterprise).
-My client wants to distribute an app using their own account.
-My company have to develop this app.
Now, how do i setup my xcode for this? Which solution is the best? Should i use directly the clients account or there is a way in which they add my account as developer in their team?
I'm concerned about this because i'm going to use my company account to test this app on devices during the development and xcode , to me, is pretty hard to understand when it comes to change certificates and accounts.
Thanks a lot.
As Alessia already wrote the easiest way is to build the app with the enterprise certificate of your customer. For that your customer has to provide you the private/public key pair or give you access to their enterprise program so you can create and download it.
If your customer do not want to provide it to you (maybe for security reasons) there is another way. It's more complicated especially if your customer has no experience with iOS development. In that case you have to develop and test your app with your own developer program. If your release version successfully passes your quality tests you deliver it to your customer and they need to resign your app. see: example for resign
i think the easiest thing is to make the build with the certificates in enterprise.
So you should ask identity and mobile provisioning created from enterprise account of your client, and then build your app with this certificates.
Your client can also enable (in developer mode) your apple account so you can create yourself certificates (in enterprise).
You can also create multiple target for this management.
I want to make my app available for the testers without adding their UUIDs to the distribution profile. Is there any way to achieve this. I know about Enterprise distribution but my app will eventually be uploaded to AppStore.
So I also want to know is it possible to use same Apple ID for both Enterprise App and App Store app.
Thank you
Yes, you can use the new Testflight feature on the developer portal: https://developer.apple.com/testflight/
You have two options when using this. For internal testing anyone who is tied to your account can test it. For external testing your app has to go through the approval process, and you can give out an email that will allow them to test it, or put their email in and it will send out an invitation to that person to install the app. Any updates to the app have to be approved before it can go to external testers.
UDID is no longer required. The focus is on test users rather than device. A single user may have multiple devices on which the beta app may be installed.
You can enable up to 25 users from your iTunes Connect team to be
internal testers and up to 1000 users to be external testers. External
testers do not need to be in your organisation; you can invite any
user with an email address to become one of your external testers.
reference from below link :
https://subodhnpushpak.wordpress.com/2015/01/05/deploying-ios-apps-without-udid-to-beta-testers-using-testflight-beta-testing/
I have
An apple id
The source code
A Distribution Certificate generated for my apple id using client's developer portal
A Provisioning profile for the newly created App ID and my distribution certificate
My client dont want to share his apple id credentials with me. I am able to archive the product in Xcode, but am not able to submit it to App Store.
Can i directly submit it to the store with the above details i've got?
Or Can i build IPA file and share it with client, so he can submit to App Store?
Is there any other alternative ways we can submit the app to store (other than sharing his credentials)
Kindly explain the answer (with step by step guide if possible).
Thanks
For those who needs to do the same on behalf of clients, here are the steps i've followed...
What i had
An apple developer account (with no Developer Program Enrollment)
What client had
An apple developer account (with Apple Developer Program Enrollment for Company)
As far as app distribution is concerned, apple have 2 systems: Member Center (for Certificates, Profiles, App IDs etc) and ITunes Connect (for publishing your app to app store and further management of the app).
I need access to both ITunes Connect & Member center for distributing on behalf of client.
In Member Center, client should give you Team Admin Role. [steps]
In ITunes connect, client should give you Developer Role / Admin Role for the app. If Developer Role, given u can only upload the build, to submit app for review you'll need to ask the client. If Admin role, basically you can do almost everything upto Submitting the app for review. [steps]
Now you can create certificates, profiles, app ids through Member Center (you can create certificates & profiles in Xcode also. But App IDS should be created through Member Center).
Create App Record in ITunes Connect using the same bundle ID used for App ID creation.
Upload your build through Xcode
Submit for review through Itunes Connect
This is what i did for submitting the app. If you find any mistakes/better alternatives, pls comment below, so i'll update the answer.
You'll need to do the following:
Build the app using the distribution cert of the client
Archive the app using XCode (it's in the same menu as the build
options)
When the archive is done it will open the Archive
Organizer
Select the newly created archive and export it. The
first option in exporting is the 'Save for iOS App Store
Deployment'.
This will create a directory on your mac that contains the bits
and pieces your client will need to upload it.
Zip that directory and transfer to your client. They should be able
to use the web-interface in iTunes connect to upload the app and
complete the app submission process.
... Or Can i build IPA file and share it with client, so he can submit to App Store?
To answer your question, you can build the app and provide to your client for them to submit the app.
For building the app (.ipa) you need to get the Provisioning profile & Certificate (.p12) corresponds to Apple developer program from the client.
I have done this for many of our clients and solution is working. In fact few of the clients they have an internal portal with the predefined process.
In case, if anyone of you have queries on this response comment below and I shall try to answer.
Note: when signing remember to choose use local signing assets in order to avoid giving apple id credentials.
The easiest way would be to have your client add you under User and Roles in iTunes Connect. There is a developer role now that can limit access to a certain app and restricts it to the below:
As of Summer of 2017, Which is after this was initially asked) The developer and the app producer name must be the same. Thus just have them spend the
$99 a year and get a Dev account that they add you to to Develop / manage.
Here is a short and detailed explanation: [1]: http://www.goodbarber.com/blog/your-client-s-developer-accounts-vs-your-own-a856/
Here is how to tranfer if already in app Store under your account:[1]: https://support.appmachine.com/hc/en-us/articles/360000012284-Transfer-your-app-to-another-iOS-Developer-Account
You need to use IP distribution with iOS to build IPA to upload to the App Store
According to the description the simplest way would be to submit the app on your own behalf and as soon as you pass the certification to transfer the published app to your client from iTunes Connect dashboard.
I have developed an enterprise app and its ready to use for my client.
My company bought an account and provides me with the credentials. So i created the ad-hoc distribution profile to distribute the app to my client's testing team during development using testflight.
But as i read somewhere, the account type iOS developer program can not distribute the app to any one,
If you want to distribute your app, you need to enroll for iOS developer [enterprise] program account. But that was not in my case, I was able to distribute my app to the client using the iOS developer program account.
I know, if you want to submit your app to the app store, you need to have an iOS developer program and,
iOS Developer Enterprise Program only allows you to distribute your applications to employees or members of your organization through Ad Hoc distribution.
Now my doubt is,
Is it really mandatory to submit our app to the apple for review to
ensure that our app is free of explicit OR else we can use it without
review? Why do we need an approval from apple when we are not
submitting to app store.
The client is telling they just want to get approval then they can sell it within In-House or B2B use.
Because my client asked me to submit our app to apple for just review, but do not want to put on app store. Once they approved, then they will distribute by using ad-hoc distribution profile.
Thanks.
You dont need to submit an enterprise app to the app store for review.
Your client's request is weird. It doesn't make sense. You can tell your client that Apple does not review enterprise apps.
Update:
your doubt:
Is it really mandatory to submit our app to the apple for review to
ensure that our app is free of explicit OR else we can use it without
review?
Answer: NO. Its not mandatory
Why do we need an approval from apple when we are not
submitting to app store.
Answer: You dont need an approval.
Now, there is a case where your client's request will fail for sure:
Assuming (for the sake of explanation) this app is a porn video viewer app, it'd never be approved by the Apple App Store reviewer. And if the enterprise build deploy is contingent upon AppStore approval, even that wouldn't happen (since the client is adamant)
Note: Enterprise accounts are not meant to circumvent Apple's pay wall. i.e., you should not distribute the app outside your organization.
Hope this answers your question. (if it didn't feel free to add a more specific question to the original post.)
3rd Update:
FYI Enterprise Developer account are not easy to obtain. If Apple Developer Center thinks your client is shady, they may have to manage with the regular developer account. The question you are asking has no credible sources for answers because no one would insist on doing something like this.
Is it really mandatory to submit our app to the apple for review to ensure that our app is free of explicit OR else we can use it without review? Why do we need an approval from apple when we are not submitting to app store. The client is telling they just want to get approval then they can sell it within In-House or B2B use.
You do not need approval, once you are enrolled on the enterprise scheme you will not need to get approval from apple for any applications created as an enterprise application.
However if you then want to sell it on the normal app market it will need to be done from a totally separate account and will need approving.
The enterprise license is a way of making sure that rogue apps do not start making the rounds as they do not need to be installed via itunes, they can just be hosted on a website and downloaded directly from there to the device.
I assume your client may be worried that you aren't going to provide a stable, malware free application and would like apple to authorise & test it first, even though it is not going on to the app store so they have peace of mind that if it's good enough for apple its good enough for them. Or that the MD once heard that Apple HAS to authorise it and they are just jumping through hoops for them.
Companies that are enrolled in the iOS Developer Enterprise Program (currently $299 / year) do not need to submit apps to Apple for approval or distribution. These companies can host and wirelessly distribute their in-house apps without Apple acting as gatekeeper.
If you are an external contractor who has been hired to code an app, you may need to hand the app over for them to sign with their Enterprise key so that they can then distribute in-house.
It would be (very) unusual for an Enterprise Program member to submit their app to Apple for review because it is unnecessary. And so far as I know there is no option to do this without setting up all the app details in iTunes Connect and pretending you were going to sell the app.
Update 1:
#Praveen-K: What doubt is there? If you want to have Apple "test & approve" your Enterprise app (a really bad idea) then you will need to:
Create a fake Apple store app
Fill in fake info in iTunes Connect
Provide an on-sell date a long way onto the future
Provide all the login info and access to your servers that the real app requires
Assist the Apple app approvers in accessing your own data to get approval
Then, after approval, delete the app from iTunes Connect and the App Store
If this does not answer your question then perhaps you need to make sure your question is very clear.