In one of our products we generate the digital certificate multiple times and I need to update my connected app. Is there any way by which we can update the connected app without going through the UI and upload the updated certificate.
Related
I am developing app like ourpact. https://itunes.apple.com/in/app/parental-control-kid-tracker/id954029412?mt=8
For any MDM app we will require enterprise account to set up MDM. So how could we upload app to app store ? Because enterprise account doesn’t allow us to upload app to app store. So how ourpact app uploaded to app store with MDM configuration? Is apple giving any special gateway for this kind of app?
You will need both an enterprise membership (to generate the MDM key) and a company membership (to generate your App Store app).
The enterprise account is used to generate a key that is used by your MDM to sign management profiles. The corporate membership is used to create an app that connects to your MDM to request and install management profiles.
There is no need to "merge" the products.
The relationship between the two is simply your app connecting to the hostname of your MDM server.
I currently have my app deployed on the Apple Store and I had to create a new certificate for some reasons.
Now, I need to update my app on the store but I had to sign it with my new certificate.
My question is, if I sign my application with a different certificate, will the app store update the existing one on my phone or consider the application like a new application ?
Plus, if it updates the application, will my data stored in the local storage be kept ?
Thanks in advance.
You can sign with another certificate. Think of company with multiple developers: they can have multiple appStore certificates.
The data stored in local storage will be kept as long as the bundle identifier stays the same.
im having a big doubt here, and i couldn't find any answer over the internet.
We develop multiple ios apps, under phonegap build, apps are similiar, just logo image change and some internal parameters.
In the process of publish one app, we generate an ios certificate for distribution, then generate the mp , and register the app on pushwoosh.
Now we get adviced than no more certificates are avaible to distribution for ios, so the only way to continue doing this is to use a same distribution certificate for multiple apps.
Is this possible, considering we are using pushwoosh for pushes?
Thanks in advance
A push certificate cannot be used for more than one app.
Every app has a unique app id and push certificates are for one specific app id only.
Distribution certificates are not linked to an app, there is one per Apple account, why are you even trying to generate and use more than one?
Maybe you are confusing a distribution certificate with a distribution profile, a distribution profile is linked to a specific app.You should defiantly have multiple distribution profiles.
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 know this has been talked before, but I don't know if this changes with recent changes in the App Store.
I'm a freelance developer, and as such I develop apps for many different clients, each of which have their own Apple Developer accounts to sell their apps on the App Store.
I know I can't upload the app myself for my client (not without their private key) I'm looking for an "easy" way to get the app on the App Store with as less effort as possible for the client side.
Options I can think of:
Getting the private key and credentials for the client and upload it for them. But I would like to avoid that.
Client adds me as a member of their iOS team, set me as a developer for the app and I download the provisioning profiles and somehow send them a file they can resign and upload to the store.
I upload the app to my account and then use the new transfer funcionality to put it under the client name.
I don't know, there HAS to be a way, hasn't it?
EDIT:
I seem to have found a way, its described in my answer.
I'm sorry I didn't accept any of the answers yet, but I've been trying some stuff and I think I found a way, a little strange and probably not optimal, but it could work and I would like to share it with you to see if you think it's ok.
First: I'm a developer with my own Apple ID and developer certificate. I have my own apps on the app store.
Second: I also make client work and then I want to upload and manage the apps I do for them, to a certain extent.
Third: My client has to have their own developer account and it has to be a company account, which will allow them to manage teams.
This is what I think that works:
I ask my client to add me to their iOS Developer Team as an "admin". This is done through the member center. This allows me to create distribution certificates and distribution provisioning profiles, as stated in here.
After I accept the invitation (can't remember if I really have to) I log into the member center. It will ask me to select the team I want to use for my session (my own team or one of my clients'). I choose my client's team.
I go to Certificates and create a new Certificate for Production->App Store and Ad Hoc (I think there's a max of two per account, so if there are already two of them this option will be grayed out)
I have to upload a CSR file generated from my computer's keychain, following on screen instructions, and then my certificate is ready to download and use.
While I'm on member center I generate my AppID and then go to Provisioning Profiles and generate a new Distribution Profile for the App Store with my AppID and for the certificate just created.
That's it for member center, now I can download the distribution profile for the app I'm am developing for my client. Or let XCode 5 manage it.
Then I want to upload the app to the store and manage it with iTunes Connect with my own account.
I ask the client to iTunes Connect -> Manage Users -> iTunes Connect User and add me with a Technical role. This allows me to manage apps, but I wont see anything about banks, contracts, payments...
The problem with point 1 here is I already have an iTunes Connect account for myself with my email address and you can't have two iTunes Connect accounts linked to one email address. I could use a different address, but as I'm using gmail, I just use an alias. I give them the address: myemail+clientname#gmail.com
Once invited, I receive an activation mail and then I can log into iTunes Connect with that address and create apps and set them ready to upload.
Then I just have to go to Xcode, select my client's code signing identity (which is the certificate I created), the apps distribution provisioning profile (I created earlier too), archive, validate and submit to the app store with my alias for this client.
I've just tested it and it works.
It's not yet an optimal solution because when logging into iTunes Connect I can see every other app my client has and I could, potentially, delete something. But still, I think is a pretty good one for clients with no knowledge of XCode (or no interest in doing all this) but also wanting to keep their credentials and private keys secret.
I recommend asking the client to add you to his dev center team as well as a iTunes Connect user , you can then take over the uploading and make the app uploading part smooth.
If the client has a Mac and already knows how to upload apps.. you could just send xcode archive for him/her to upload.. this though might make the process slower due to communication/other things.
Transferring ownership isnt an optimal solution since after transferring, next updates would require client keychain and provisioning profile which will bring you back to step one.
I think the approach should vary for the technical ability for your clients. Having them export a "Developer Profile" of all the certificates would allow you to manage the process.
If they are comfortable downloading XCode and submitting the app then you can just become a member of the team or just send them the Xcode project with instructions to change the code signing in build settings.
Without a private key, you can't submit and sign the app.
Exporting a Developer Profile in Xcode 5
In the Xcode Preferences window, click Accounts.
Click the Action button (to the right of the minus button) in the lower-left corner.
Select Export Accounts from the pop-up menu.
You will then be allowed to password protect the .developerprofile