Verify/Check to see if a Configuration Profile has been installed on iPhone - iphone

Does anyone know if there's an API to check to see if a particular Configuration Profile has been installed on a iOS device?
Thanks, Cole

There is no API for that, but there is a workaround based on certificate validation. You have to create a self-signed root certificate and include it into your configuration profile. Then you have to create another certificate signed by this root certificate and include it into your application. When you need to verify if a configuration profile is installed, you may verify if that certificate is trusted. See Apple developer forums for details - https://devforums.apple.com/message/11142#11142

Related

Is it possible to share .appx without trusted certificate? If not than how can I share/distribute my app without publishing?

I have created a build which works fine in my system by when I share it with my team they get certificate issue while installing app. Either you need a new certificate installed for this app package, or you need a new app package with trusted certificates. Your system administrator or the app developer can help. A certificate chain processed, but terminated in a root certificate which isn't trusted (0x800B0109)
What are the ways by which, I can share build with my team before publishing it.
Note:Certificates cannot be attached in most of email client.
In order for others to deploy your .appx or .MSIX, the app must be signed, and the users must trust the certificate you used to sign it.
While developing your app you can use a test certificate that your team agrees to trust.

Implementing APN's, get valid signing identity not found when install development profile?

For APN's i'm following raywenderlich tutorial from here
i already have developer certificate installed in xcode, when i create AppId and configure it to push notification and create certificate(SSL) it adds a development certificate under certificate section..it's Ok.when i go to create provisioning profile it shows me only one certificate to choose(not newly created APN certificate). i created profile with that certificate but whenever i go to install it, it say "valid signing identity not found".
Please note that I've installed both iOS Development and APNs Development iOS certificates in xcode. I've searched similar question on stackoverfllow but still no luck.What I'm doing wrong?
I'm not sure what you are doing wrong. But here is the general procedure:
Go to developer.apple.com and login
Go to Certificates, Identifiers and profiles
Create a certificates for iOS app development and APNS. For creating a certificate you need to upload a CSR (use Keychain Access to do this) from your Mac. Once you upload the CSR from your Mac, download the App and APNS certificates to your machine - If you don't upload the CSR from your machine, you will get a valid signing identity not found error.
Points to remember:
When creating APNS certificate, chooose the appropriate App ID. By choosing wrong ID push notifications wont work.
When creating the provisioning profile, choose the App certificate you created in the above steps.
Thats the gist, you should be able to figure out things I missed by following on screen instructions.
I got the solution private key(.p12 file) was missing in keychain.

Valid Signing identity Not Found in Xcode

Actually i developed an app using my own developer certificates and provisioning profile.
Now i need to publish it on my client developer account and my client sent his distribution certificate along with provisioning .And I have installed the certificate and then i drag the provisioning profile to xcode, and i have got error message like "Valid signing identity not found"
Please assits me.
Change code sign in project settings.
You need the private keys that were used to sign the certificate. If you don't have them
anymore you can generate a new signing request.
You need p12 file from your client to use its developer certificate and provisioning profile.When your client provide you that p12 file than double click that file and its run perfectly.
And for geting p12 file ,select the cert, and open the arrow to also select the private key and export them together as a .p12 file from Keychain Access.
There are several ways to solve this issue.
The first one is, to export your developer certificate including the associated key from your keychain and importing it on your client machine.
The other way would be (If your client machine would use another apple dev account) to go through those steps listed here Apple Certification & Provisioning
I would recommend to delete the old certificates from xcode, sometimes xcode might lag otherwise

Apple's Developer Certificate and Provisioning Profile

Can I use someone else's Apple's Developer Certificate and Provisioning Profile to build and run my application on the iPad ? Are the certificates and profiles Machine Specific ?
Actually I am trying to install my friend's dev certificate and it is getting installed but when I am installing the provisioning profile its showing me an yellow warning "
The main question is that The Developer' Certificate and Provisioning profile can be used on different machines or not ?
See the message, "A valid signing identity matching this profile could not be found". You are adding the certificate in your keychain, not the identity(which is a .p12 file containing the private key). From wherever you got the certificate, you should get the private key exported from the keychain rather than exporting only the certificate.
At the end, like BoltClock said, it is violation of Apple's license to use some others' certificate.
"Error: "A valid signing identity
matching this profile could not be
found in your keychain"
Solution: Most likely that you have
not downloaded the necessary WWDR
certificate from the Apple developer
site. There is a link to download this
certificate in the 'Certificates'
section of the developer portal. If
you do have the certificate in your
keychain, make sure that it has not
expired (unlikely, as mine is valid
until 2016). Also make sure that your
developer certificate has not expired
(these seem to be valid for only 12
months at a time)."
http://discussions.apple.com/thread.jspa?threadID=2220082&tstart=0
If you want to run your app on a device then you have to add that device's id to the certificate.

iPhone: Error-'this provisioning profile does not have a valid signature'?

In Developer program portal,
I created a developer certificate. I registered for my iPhone deice. And registered an App ID (In App Purchase enabled). I created a provisioning profile using the created certificate and app id details.
I followed the procedure that Apple said and created it.
I downloaded the provisioning profile and installed on Xcode and on the device.
I tried to install my application on my jailbroken iPhone device( i did jailbroken already) using the provisioning profile which i downloaded, but it throws an error as 'this provisioning profile does not have a valid signature or it has a valid but untrusted signature(or it has a valid but untrusted signature)'.
Can some one advise me what is wrong here and how to resolve it?
NOT YET RESOLVED WITH THE SUGGESTIONS PROVIDED UPTO NOW. ANY HELP PLEASE?
Martin/
I had the very same issue although I set up provisioning, entitlements etc. correctly.
One cause of the error is described in http://www.onidev.com/2010/01/12/the-application-does-not-have-a-valid-signature/
Certain folder names may not be used in your app bundle. Check especially your "Copy files" build phases.
It seems this correlates with typical Apple app bundle names.
Unallowed folder names include (but are probably not limited to):
resources
contents
Renaming my folder from contents to myContents solved the problem for me.
Did you add the developer certificate and the corresponding private key to your keychain?
Not only do you have to add your own certificate (iPhone Developer: Johny Appleseed) you must also add Apple's Certificate Assigning Authority to your local keychain as well.
EDIT:
The certificate section in the program portal has the following info:
Downloading and Installing Development
Certificates In the ‘Certificates’ >
’Distribution’ section of the Portal,
control-click the WWDR Intermediate
Certificate link and select “Saved
Linked File to Downloads” to initiate
download of the certificate. On your
local machine, double-click the WWDR
Intermediate certificate to launch
Keychain Access and install. Upon CSR
approval, Team Members and Team Admins
can download their certificates via
the ‘Certificates’ section of the
Program Portal. Click ‘Download’ next
to the certificate name to download
your iPhone Development Certificate to
your local machine. On your local
machine, double-click the downloaded
.cer file to launch Keychain Access
and install your certificate. Team
Members can only download their own
iPhone Development Certificates. Team
Admins have the authority to download
the public certificates of all of
their Team Members. Apple never
receives the private key for a CSR.
The private keys are not available to
anyone except the original key pair
creator and are stored in the system
keychain of that Team Member.
The certificate assigning authority should be something like applewwdrca.cer, there are screen shots and more info in the "How To" section.
EDIT 2:
Read through this Provisioning HowTo carefully (as well as the other HowTo tabs in the program portal), provisioning is a pain in the ass tedious process, if this documentation does not fix your problem then you need to burn one of your free support cards and call Apple because there is a problem with your particular machine. You should have gotten 2 of those support requests when you entered the program, if you used them all you can buy more.