Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

iPhone app under test crashes after a few days

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!

like image 399
hs7624 Avatar asked Jul 11 '16 12:07

hs7624


People also ask

Why are apps suddenly crashing on my iPhone?

Most often, apps crash because they aren't updated and have unaddressed bugs. To fix this, go to the Updates section of the App Store and update the app if an update is available.

Why does an app keep crashing as soon as I open it?

Apps on Android can crash because of low storage space, too many apps running simultaneously, a weak internet connection, or not having the proper app updates installed.


3 Answers

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.

like image 51
Ketan P Avatar answered Oct 18 '22 22:10

Ketan P


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:

screenshot following the above instructions

like image 22
dev_m Avatar answered Oct 18 '22 22:10

dev_m


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.

  1. Your Apple developer account
  2. Create a Production Ad-Hoc Distribution Certificate
  3. Create an Ad-Hoc Provisioning Profile
  4. Managing Devises and Provisioning Profiles
like image 2
Shane McCurdy Avatar answered Oct 18 '22 21:10

Shane McCurdy