I am new to making iPhone apps and this is my first attempt.
I have made a simple app which has two buttons in it. One button opens a URL and the other opens a Pop-up window.
I am yet to enroll as an apple developer and am testing my application on the physical device by connecting it to Xcode.
When I install the application, it runs properly for a few days in spite of disconnecting it from Xcode. However, after a few days, the application does not open and flashes a black blank screen and goes back to the home screen.
When I reconnect it to Xcode and run the same code again on the same iPhone, it works properly again for a few days and then crashes again.
I am unable to understand why the app is behaving in such a manner after a few days and not immediately.
Is there some expiry period for application when one has not signed in as a developer? (The provisioning profile shows expiring soon) If not, can you please guide me as to how to go about troubleshooting this issue?
Kindly give me your esteemed suggestions/comments as I am badly stuck and need to find a solution as soon as possible.
Thanks a lot!
If application is installed with Xcode and you don't have a Paid Program Developer Account, the life expectancy of the app is approximately 48 hours (There is no official time of validity for this).
For a paid program, it's a few months with the correct certificate. With TestFlight, it's now 60 days.
Indeed, if you don't sign your app, it has low life expectancy. It's quite new that Apple allows installation to devices for free accounts, but it's just for testing purposes (other than simulator), if you want more days to test on a device, you have to pay for the developer program.
No it's not a guess actually...
It's 7 days exactly for a free developer account.
You can check validity also in Xcode Provisioning profile also:
In General → Signing ("Automatically Manage Signing" checked) → Provisioning Profile (Click on Info (i) icon)
you can check validity of the profile:
This forum helped me find an answer for a very similar issue I was facing with an Ionic iOS app I have running on a few iPads for a checkin kiosk at a non-profit I am developing for. For my scenario I just need the apps to run locally on WiFi and never on any other devices, never to be downloaded as a distributed app to the public. My apps kept randomly crashing on launch, and I would re-install the app from Xcode and they would start working again.
So my only real solution was creating an "Ad-Hoc" certificate and provisioning profile, where you can add up to 100 iOS devices to the provision. I had to manually add my 3 iPads to the provisioning profile, then download the file and open it, then in Xcode un-check "Automatically manage signing", then go below to "Provisioning Profile", then select your new ad-hoc style profile. And you should be good as long as your Apple developer account is in good standing (I believe, someone correct me if I'm wrong).
Just a heads up, first you personally have to be a paid and registered developer with Apple, not just added to a team by invite. I was invited in by another team for a completely different project and was not able to get set up and create the certificate and provisioning file on my own because of that. I had to leave my team, then register anew with Apple as an individual developer, then I could complete my steps.
Your Apple developer account
Create a Production Ad-Hoc Distribution Certificate
Create an Ad-Hoc Provisioning Profile
Managing Devises and Provisioning Profiles
Related
I am trying to install my app to my iOS devices through Xcode. However after a week I the app doesn't open anymore. After doing some research I understand that on the free developer account the provisioning profile will only last 1 week, the problem is is that I actually have a personal developer account that I pay for so this shouldn't be the case?
I have set the team to "my name (Personal Team) and in my Build settings I have made sure the Code Signing Identity is set to iOS developer, if I change that to iOS Distribution I get this warning:
yourApp has conflicting provisioning settings. yourApp is automatically signed for development, but a conflicting code signing identity iPhone Distribution has been manually specified. Set the code signing identity value to "iPhone Developer" in the build settings editor, or switch to manual signing in the project editor. (in target 'yourApp')
Is it actually possible to install an app to an iOS device via Xcode that has an infinite lifetime or does it always have to go to iTunes Connect & the App Store?
Any help would be great as this is the final step to rolling my app out to my colleagues.
Edit:
When I click info next to the provisioning profile I get this:
It is not possible to build an iOS application that doesn't have an expiration (unless you distribute through the App Store). This is to prevent developers from building iOS apps and distributing them through third party app stores.
A standard development account is meant to be used by a developer to test apps for short periods on physical devices before submitting the app to Apple for real distribution. The short duration of the development provisioning profile is a reflection of this.
If you really want to do longer term distributions on devices (up to 12 months), you could sign up for an Enterprise development account ($299/year, but also requires an EIN). That allows you to create an In-house Distribution profile that will be good for 12 months from when it is created. You will still need to re-build the app (or at least repackage it with a new distribution profile) at least once a year.
In the end, you are attempting to do something Apple really doesn't care to support. I wish there was a better answer (could you write the app as a web app?), but I'm afraid there isn't.
I am new to iPhone development, so hope not asking dump question.
I finished my Xamarin app development, works fine on Android, released. Now finished the iPhone version of it, runs fine on iOS Simulator (without some features, those are not available on Simulator, like email/iap). Now I want to test on a real device, but I don't have iPhone.
However, I got one for about 2 weeks from a friend, who will also develop for it, but will start a bit later, so he does not need it now.
I read through several tutorial, and found that I have to "Add to Member center" the phone, so basically "register" this phone under my apple dev account, when using with proper provisioning profile/certificates.
This is fine, but when I finished testing in let's say 10 days, and give the phone back to the owner:
can he also register this phone to develop on this on his account?
is it possible to "unregister" myself from this phone (then I won't have any in apple dev center), but keep my App in the Store? Isn't 10 days (too short time) an issue?
any other issues with this approach?
Thanks
As your question i think you are familiar with Apple developer portal & managing Certificates & provisioning profiles. So, i am going to answer your listed points:
Yes, a device can be register with different developer account for testing, no issue in it.
Yes, you can disable the device from Apple developer portal this will no impact on you App on App Store, because App on store with Distribution Certificate & Provisioning Profile, not with developer Certificate & Provisioning Profile.
No issue with this approach, but keep in mind disabling the device will invalidate all associated provisioning profiles, then You can remove the device from your account at the start of your new membership year.
I have an iOS app that I'm testing on my phone. I installed it through XCode. I've had the app on my phone for several weeks. After a couple of weeks the app no longer works. If I open the app it immediately closes. If I do a fresh re-install of the app, then everything works for a couple more weeks till it breaks again.
My theory is that the provisioning profile I used has expired, preventing the app from loading. This is expected as I'm installing the app through XCode and Apple probably doesn't intend for users to have a test build used on an iOS device for extended periods of time. My question is this, how can I set it so the provisioning profile doesn't expire? How would I need to adjust the code signing settings to adjust for this?
You cannot set provisioning profiles to never expire. Development provisioning profiles will expire after a set amount of time. For a free developer account with Apple, your profiles will be set to expire after 30 days. If you have a paid developer account, the profiles will last for a year from when it is created. Note that a new profile isn't created every time you build, so you have to keep an eye on the profile expiration date and generate a new one when you get to 10 months or so.
Apple will not let you go longer than this, as it would allow / encourage other distribution mechanisms. If developers could build an app and distribute it to other peoples' devices, and those apps could run indefinitely, someone would quickly develop a 3rd party app store and Apple would lose control of its ecosystem.
FYI - If a provisioning profile expires, the app will launch briefly, then shut down when iOS realizes that there is a code signing problem (also happens if your certificate has been revoked or has expired). You can check for sure by plugging the device into your Mac and monitoring the device console when you attempt to launch the app. You will likely see a code signing error in the logs.
Set device type to generic in Xcode.
Go to Product in the status bar on the top of your screen
Select Archive
Build your app as an AdHoc file
When its done, save that file somewhere, (I usually throw it on my desktop and then delete it)
Double click the .ipa file, Make sure your phone is plugged in and hooked to iTunes.
This should install the app on your phone.
I have had good luck with this, I hope it works for you.
Note: This may only be possible with a developers license, I'm not 100% sure.
I am new to making iPhone apps and this is my first attempt.
I have made a simple app which has two buttons in it. One button opens a URL and the other opens a Pop-up window.
I am yet to enroll as an apple developer and am testing my application on the physical device by connecting it to Xcode.
When I install the application, it runs properly for a few days in spite of disconnecting it from Xcode. However, after a few days, the application does not open and flashes a black blank screen and goes back to the home screen.
When I reconnect it to Xcode and run the same code again on the same iPhone, it works properly again for a few days and then crashes again.
I am unable to understand why the app is behaving in such a manner after a few days and not immediately.
Is there some expiry period for application when one has not signed in as a developer? (The provisioning profile shows expiring soon) If not, can you please guide me as to how to go about troubleshooting this issue?
Kindly give me your esteemed suggestions/comments as I am badly stuck and need to find a solution as soon as possible.
Thanks a lot!
If application is installed with Xcode and you don't have a Paid Program Developer Account, the life expectancy of the app is approximately 48 hours (There is no official time of validity for this).
For a paid program, it's a few months with the correct certificate. With TestFlight, it's now 60 days.
Indeed, if you don't sign your app, it has low life expectancy. It's quite new that Apple allows installation to devices for free accounts, but it's just for testing purposes (other than simulator), if you want more days to test on a device, you have to pay for the developer program.
No it's not a guess actually...
It's 7 days exactly for a free developer account.
You can check validity also in Xcode Provisioning profile also:
In General → Signing ("Automatically Manage Signing" checked) → Provisioning Profile (Click on Info (i) icon)
you can check validity of the profile:
This forum helped me find an answer for a very similar issue I was facing with an Ionic iOS app I have running on a few iPads for a checkin kiosk at a non-profit I am developing for. For my scenario I just need the apps to run locally on WiFi and never on any other devices, never to be downloaded as a distributed app to the public. My apps kept randomly crashing on launch, and I would re-install the app from Xcode and they would start working again.
So my only real solution was creating an "Ad-Hoc" certificate and provisioning profile, where you can add up to 100 iOS devices to the provision. I had to manually add my 3 iPads to the provisioning profile, then download the file and open it, then in Xcode un-check "Automatically manage signing", then go below to "Provisioning Profile", then select your new ad-hoc style profile. And you should be good as long as your Apple developer account is in good standing (I believe, someone correct me if I'm wrong).
Just a heads up, first you personally have to be a paid and registered developer with Apple, not just added to a team by invite. I was invited in by another team for a completely different project and was not able to get set up and create the certificate and provisioning file on my own because of that. I had to leave my team, then register anew with Apple as an individual developer, then I could complete my steps.
Your Apple developer account
Create a Production Ad-Hoc Distribution Certificate
Create an Ad-Hoc Provisioning Profile
Managing Devises and Provisioning Profiles
I am new to making iPhone apps and this is my first attempt.
I have made a simple app which has two buttons in it. One button opens a URL and the other opens a Pop-up window.
I am yet to enroll as an apple developer and am testing my application on the physical device by connecting it to Xcode.
When I install the application, it runs properly for a few days in spite of disconnecting it from Xcode. However, after a few days, the application does not open and flashes a black blank screen and goes back to the home screen.
When I reconnect it to Xcode and run the same code again on the same iPhone, it works properly again for a few days and then crashes again.
I am unable to understand why the app is behaving in such a manner after a few days and not immediately.
Is there some expiry period for application when one has not signed in as a developer? (The provisioning profile shows expiring soon) If not, can you please guide me as to how to go about troubleshooting this issue?
Kindly give me your esteemed suggestions/comments as I am badly stuck and need to find a solution as soon as possible.
Thanks a lot!
If application is installed with Xcode and you don't have a Paid Program Developer Account, the life expectancy of the app is approximately 48 hours (There is no official time of validity for this).
For a paid program, it's a few months with the correct certificate. With TestFlight, it's now 60 days.
Indeed, if you don't sign your app, it has low life expectancy. It's quite new that Apple allows installation to devices for free accounts, but it's just for testing purposes (other than simulator), if you want more days to test on a device, you have to pay for the developer program.
No it's not a guess actually...
It's 7 days exactly for a free developer account.
You can check validity also in Xcode Provisioning profile also:
In General → Signing ("Automatically Manage Signing" checked) → Provisioning Profile (Click on Info (i) icon)
you can check validity of the profile:
This forum helped me find an answer for a very similar issue I was facing with an Ionic iOS app I have running on a few iPads for a checkin kiosk at a non-profit I am developing for. For my scenario I just need the apps to run locally on WiFi and never on any other devices, never to be downloaded as a distributed app to the public. My apps kept randomly crashing on launch, and I would re-install the app from Xcode and they would start working again.
So my only real solution was creating an "Ad-Hoc" certificate and provisioning profile, where you can add up to 100 iOS devices to the provision. I had to manually add my 3 iPads to the provisioning profile, then download the file and open it, then in Xcode un-check "Automatically manage signing", then go below to "Provisioning Profile", then select your new ad-hoc style profile. And you should be good as long as your Apple developer account is in good standing (I believe, someone correct me if I'm wrong).
Just a heads up, first you personally have to be a paid and registered developer with Apple, not just added to a team by invite. I was invited in by another team for a completely different project and was not able to get set up and create the certificate and provisioning file on my own because of that. I had to leave my team, then register anew with Apple as an individual developer, then I could complete my steps.
Your Apple developer account
Create a Production Ad-Hoc Distribution Certificate
Create an Ad-Hoc Provisioning Profile
Managing Devises and Provisioning Profiles