Issue regarding provisioning profile ios - ios

As I am new to iOS, I don't know much about it. So please help me
First someone tell me , what is the purpose of provisioning profile.
Second, is it possible to create a provisioning profile without having an Apple Developer Membership??
Help would be appreciated..

Provisioning profile is impossible to obtain without Apple Developer Membership.
Nevertheless Provisioning profile is required to test application on real devices and use it to upload application it to App store.
Provision profile is :
A provisioning profile is a collection of digital entities that
uniquely ties developers and devices to an authorized iPhone
Development Team and enables a device to be used for testing. A
Development Provisioning Profile must be installed on each device on
which you wish to run your application code. Each Development
Provisioning Profile will contain a set of iPhone Development
Certificates, Unique Device Identifiers and an App ID. Devices
specified within the provisioning profile can be used for testing only
by those individuals whose iPhone Development Certificates are
included in the profile. A single device can contain multiple
provisioning profiles.

Take a look on this link please , the author explains everything regardless the provisioning profile .
http://www.doubleencore.com/2013/04/what-is-a-provisioning-profile-part-1/
However you can not get a provisional profile without the Apple Developer Membership.
Also if you want to test you app on a real device or publish it to app store you must have a provisional profile.

"A provisioning profile is a collection of digital entities that uniquely ties developers and devices to an authorized iPhone Development Team and enables a device to be used for testing. A Development Provisioning Profile must be installed on each device on which you wish to run your application code. Each Development Provisioning Profile will contain a set of iPhone Development Certificates, Unique Device Identifiers and an App ID. Devices specified within the provisioning profile can be used for testing only by those individuals whose iPhone Development Certificates are included in the profile. A single device can contain multiple provisioning profiles."
No, it is not possible to create a provision profile without Apple Developer Membership. If you are deploying an ios App you need to get registered with APPLE.
You need to register your devices' UDIDs in the provisioning profile if you are testing your app and if you want to use it for Ad-hocs.
If you want to submit your app to appstore, then also you will require a provision profile attached with your app having 0 devices i.e infinite devices.
Here is the way you can register and make Provision Profiles:
How to create provision profiles?

Ans 1 : To run or test the application in ios device provisional profile is
must require.
Without it you can not run/test/install in your device.For this you have
to buy Apple Developer Membership from Apple
to became apple registered developer.
After successfully registration below link will useful to create provisional profile.
Link : http://www.wikihow.com/Create-a-Provisioning-Profile-for-iPhone
After downloading provisional profile you have to install and set that profile in your code.
After you can run application in ios device.
Ans 2 : No, Without Apple Developer Membership you can not create provisional profile.

Related

Is there any way to add testing device UDID to free provisioning profile?

I don't have paid developer account and want to test my ios app on a team member's iPhone which is not registered to my provisioning profile. Is there any way to register a new device without deploying from the code directly.
I got a solution for this... May not be a proper solution... Still if it can help..,
If you connect your device to mac and refresh your free provisioning profile in xcode with selecting connected device for running, in xcode that will automatically register your device to your provisioning profile. And you can access one provisioning profile on multiple mac by using same apple id and bundle identifier.
Note: you can register maximum 5 devices to a free provisioning profile.
For Now you can not add UDID of a device in Free developer account, since a free account has no access to the Certificates, Identifiers, and Profiles in the developers portal.
But you can install the app by connecting (multiple, I guess upto three) device(s) with your Xcode.
Free apple developer account dose not allow for create any development or distribution certificate and it is also not allow to add any UDID until enroll (99$ per year).
You can refer to this link:
Adding UDID of testers with free developer account

What is the Team Provisioning I have from scratch?

I understand the provisioning profiles something like this: a provisioning profile contains signing identity information, and used to sign an application code. I can develop an application using simulators without any provisioning profiles. To run and test an application on real devices, I need at least development provisioning profile. These profiles should be generated in Apple Developer Portal and then downloaded to use them locally with Xcode. Currently Xcode itself is responsible for generating and downloading profiles, and Xcode does it automatically. There are also distribution provisioning profiles Ad-Hoc and AppStore.
But I'm confused by so-called "Team Provisioning Profile" used to sign the application in Xcode by default. It appears automatically and allows me to install application on the real devices, so I understand it as an automatically generated development provisioning profile. But I can't see any corresponding iOS-development provisioning profile in the Apple Developer console.
My question is: What is the Team Provisioning Profile then? If it's kind of Development Provisioning, why can't I see it on Apple Developer console?
Team : - A kind of Development profile that’s managed by Xcode. Xcode automatically adds everyone’s cert to it and all UDIDs from devices as well.
What is the Team Provisioning Profile then?
To save you time, Xcode creates and manages a type of development provisioning profile, called a team provisioning profile, for you. The team provisioning profile allows all your apps to be signed and run by all team members on all your team’s devices. For an individual, the team provisioning profile allows all your apps to run on all your devices. Xcode also performs configuration steps for each app service you enable that requires some type of provisioning. Although Xcode simplifies this process, it helps to understand your code signing and provisioning assets and to know where they reside.
If it's kind of Development Provisioning, why can't I see it on Apple Developer console?
Xcode creates a team provisioning profile and its components as needed in your developer account. Xcode requests a development certificate for you if it’s missing. The development certificate is used in the team provisioning profile to identify you. A device must be registered to create a provisioning profile, so Xcode may ask you to connect an iOS or tvOS device. For Mac apps, Xcode automatically registers the Mac that is running Xcode.that's why you can't see it on Apple Developer console
More check this : apple doc

iOS Distribution Provisioning Profile invalidates itself when new devices are added

I've got a Distribution Provisioning Profile I use for distributing my application to QA testers via AdHoc builds / HockeyApp. I'm also part of a team of other developers working on other apps, and they have their own QA teams.
Whenever someone else adds a device to the Apple Developer Member Center (previously the "Provisioning Portal") located at https://developer.apple.com/membercenter/index.action , the Distribution Provisioning Profile becomes Invalid.
To make the profile valid again, I must open up the profile and include all of the newly added devices in the profile, then re-download it.
This is all fine, but it seems unnecessary. My Distribution Provisioning Profile should only need the devices of my app's testers linked to it, not the devices others have added for their own testing purposes.
Does anyone have any information / links to documentation on why this happens (searches only seem to bring up the common issues with provisioning profiles in general that people always run into when starting out), and whether or not there is a way to get around it?
Thanks,
- Adam

iOS: What are DISTRIBUTION provisioning profiles used for?

This might have been asked lots of times, but still I couldn't find info on why are they needed. I use DEVELOPER prov profiles to test apps on my device, that makes sense.
The Provisioning Portal explains prov profiles like this:
A Provisioning Profile is a collection of digital assets that uniquely ties
developers and devices to an authorized iOS Development Team and enables
a device to be used for testing.
By this logic they are only needed for testing, eg not for distribution. Do we need one to deploy the app on the AppStore?
Absolutely yes. The distribution profile is used for submission to the App Store. It does not have the 100 device limit that the development profiles have.
From the Tools Workflow Guide:
When you’re ready to share your app for user testing or for general distribution through the
App Store, you need to create an archive of the app using a distribution provisioning
profile and send it to app testers or submit it to iTunes Connect. This chapter shows
how to perform these tasks.
The distribution profile prevents the attackers from submitting a modified version of your app to the store - only you, who hold the private key of the distribution certificate, can submit and update your app.
Once your app is submitted, your embedded.mobileprovision and your binary will be checked and compared to make sure that you are the legitimate author. embedded.mobileprovision file is then discard and the app is signed again by Apple using their own certificate (which is by default accepted by all iDevices), so that all iDevices can run it.
When an iDevice downloads the app, the executable binary is then encrypted with an encryption key associated that device. At run time, only that device can decrypt the executable binary and run it.
There are two types of distibution profiles, the first one is to submit your app to the appstore and the other one (Ad-Hoc) is necessary if you can´t connect a device to your mac(developer profile). Then you can share your app wit the Ad-Hoc profile to someone else e.g. via mail.
Distribution Provisioning Profile
Distribution Provisioning Profile is used by Apple to publish an application to App Store. When Apple approve the application it is signed by Apple and became public.
Distribution Provisioning Profile contains:
Application ID - application which are going to run
Distribution certificate - who can debug the app
[Development Provisioning Profile]
[Certificate]

What is a provisioning profile used for when developing iPhone applications?

What is the purpose of a provisioning profile and why is it needed when developing an iPhone application? If I don't have a provisioning profile, what happens?
A Quote from : iPhone Developer Program (~8MB PDF)
A provisioning profile is a collection of digital entities that uniquely ties developers and devices to an authorized iPhone Development Team and enables a device to be used for testing. A Development Provisioning Profile must be installed on each device on which you wish to run your application code. Each Development Provisioning Profile will contain a set of iPhone Development Certificates, Unique Device Identifiers and an App ID.
Devices specified within the provisioning profile can be used for testing only by those individuals whose iPhone Development Certificates are included in the profile. A single device can contain multiple provisioning profiles.
You need it to install development iPhone applications on development devices.
Here's how to create one, and the reference for this answer:
http://www.wikihow.com/Create-a-Provisioning-Profile-for-iPhone
Another link:
http://iphone.timefold.com/provisioning.html
Development Provisioning Profile
Apple cares about security and as you know it is not possible to install any application on a real iOS device. Apple has several legal ways to do it:
When you need to test/debug an app on a real device the Development Provisioning Profile allows you to do it
When you publish an app you send a Distribution Provisioning Profile[About] and Apple after review reassign it by they own key
Development Provisioning Profile is stored on device and contains:
Application ID - application which are going to run
List of Development certificates - who can debug the app
List of devices - which devices can run this app
Xcode by default take cares about it

Resources