App is crashing after launch - ios

I have Xcode project and under that project I have two targets, two separate apps which core functionality is the same, but they are using different Bundle IDs and different provisioning profiles. In signing certificates only the app ID prefix is the same (i.e., my Team ID).
The first application works fine, but now when I'm starting to run a second application using Xcode profiler, application launched and after splash screen image application crashed without any error information, in the other side when I'm running the applications on the test device everything works fine.
What is the problem? I spent whole my day to this issue , but it didn't help :(
My bet is that something is wrong with certificates/provisioning profile, but I can't figure out what.

Fixed,
problem was connected with preprocessor macroses, I forgot to define preprocessor macroses for Release configuration.

Related

Bundle ID not listed App store connect new app list (Xcode 11.4.1)

I have created a developer account for two weeks, and now I want to submit my first App. However, when I click new app, the bundle ID list does NOT show the project I would like to submit, but It do show some projects I used to practice. I have look up a variety of solutions on internet, including sign out and log in again, or clean up my Safari data. I have suspected some reason, but I'm not quite sure if it right?
First doubt : some SDK import?
The Bundle ID shows on the list are some small project I used to practice when I was a beginner. Recently, I have tried to use some SDK like Facebook SDK and Firebase. Facebook and Firebase works fine on my simulator and iPhone devices. So I'm not quite think this might be the reason, nut just type on in case I missed something
Second doubt : Xcode version?
When I tried to using Firebase, since iOS 13.3.1 seems not to support, so I update my iPhone to iOS 13.4.1. However, the Xcode should also be updated to 11.4.1, otherwise it cannot connect to my devices. When I look up the bundle IDs listed on App Store Connect, I think those projects are created before I updated Xcode. The project created after updated not showed on the list. But I have created too many projects to practice, so I'm not quite sure I remembered right. I suspect this might be the reason, anyone else met the same problem after updated Xcode?
By the way, there is also a strange thing confused me. I have deleted some projects I used to practiced on my MAC, but they stilled shown on the list... I have manually deleted on my Apple Developer Web.
1) Go to https://developer.apple.com/account and set up the app with its explicit bundle ID.
2) Then go to https://appstoreconnect.apple.com > "Create new app" > Select the previously created bundle ID.
This does not really have anything to do with SDK usage or Xcode setup. (Automatic code signing might do some steps for you, but the most bullet-proof way is mentioned above)

app with Objective-C and swift code crash at launch in release mode, debug mode fine

My project is Objective-C based, and have some third party swift code.
The app runs fine at debug mode, however, when I archive the app as release mode, the app will crash at launch screen.
Set swift optimization level to None still has the same issue. I have crashlytics 3.7 installed, but it crashes at launch, it didn't have a chance to upload the crash. I am very desperate. Any ideas?
Update:
I tried to remove all swift stuff and archive, everything is as usual now. However, once I drag the swift files into my Objective-C based project, Run(debug) the app is fine. But if archive(release) and install it on iPhone, immediate crash at launch. Anything what I am missing?
Alright, after thousands of archiving and testing, I found it's being caused by the in-house distribution.
It is mssing one attribute 'OU' in the certificate. I had to re-create a new cert, and now it has 'OU' there. Looks like Apple does not mention it at all when dealing with old projects adopting swift code.
Quote from Enterprise Distribution not playing nice with iOS8 in Swift App
All explained in details in this article :
https://www.airsignapp.com/ios-apps-using-swift-crash-when-signed-with-inhouse-certificate/
We can confirm that after create a new cert and .mobileprovision, no more issues.
We found origins that caused this issue, related to a missing attribute in “Subject” field InHouse Certificates :
BEFORE Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, O=Company Name, C=FR
AFTER Subject: UID=269J2W3P2L, CN=iPhone Distribution: Company Name, OU=269J2W3P2L, O=Company Name, C=FR
I'll post this is an answer, because I don't have the rep to post comments. I've had similar problem, although not related to Swift. Could be worth checking out though.
For me the problem had to do with file deletion in Xcode. I had removed some files from the Xcode project, but they were still present in the folder on my hard drive. When running the project through Xcode it would load these files as if they were part of the project, but when archiving it would not include them. This made the app work perfectly when run through Xcode, but crash when running the archived version, as it tried to load something that didn't exist.
So, one thing to check is that the files that should be loaded when starting the app are visible in the project navigator in Xcode. Hope it can be of help!

Xcode 6 process launch failed: timed out trying to launch app

I can't debug my app because when I run it, Xcode gives me the error:
Process launch failed: timed out trying to launch app
In the device I see a black screen and after the error message the app starts.
How can I fix this?
I tried to change the code signing identity and the provisioning profile, and to refresh the provisioning profiles in the Xcode > Preferences > Accounts > Details tab.
I'm using Xcode Version 6.0.1 (6A317) with an iPad mini, running iOS 8.0 and a MacBook with OSX 10.9.4.
After this, if the iPad goes into sleep mode (the screen turns off) I can't wake it anymore; I have to do a soft reset.
You are using distribution provisioning profile rather than development profile. check this link
How to Fix:
I fix it with:
clean project (Product > Clean)
hard reset device (power button + home button)
delete app from device
close xcode
CLOSE ITUNES (itunes must be closed)
re-open Xcode and run!
I think that iTunes was the problem.
EDIT: 2017/02: Solution still Woks (Thanks to #SalGad for information).
I am using Xcode 6.2, running on iPhone 4 with iOS 7.1.2, the problems happen to me as well.
It turned out that the Project and Targets' Code Signing settings are different from each other! And that's what is causing the issue.
To solve the issue, you must make sure that their Code Signing settings is the same.
One more thing that may be a reason to launch timeout arising is that you have a lot of Provision Profiles on your device. I have about 100 of them, downloaded automatically by XCode from our team dev portal. So if your team have tons of apps and Provision Profiles, you better unlink your XCode from your Apple ID, to prevent automatic downloading for unwanted PPs. It significantly decreases app launching time.
To delete unwanted PPs from your device you have to go XCode - Window - Devices, select your device and click "Show provision profiles..." on the bottom context menu. Then you have to manually remove the profiles. Tip: use key sequences "down arrow" - "backspace", to ease the hand routine.
I had this but nothing previously posted seemed to work. This is what I did to fix the issue in Xcode 6.3.2:
Go to Product->Scheme->Edit Scheme...
Select the Run Scheme
Select the Info tab
Make sure the settings are as follows:
Build Configuration is set to "Debug"
Debug Executable is checked
Launch Automatically is checked
In my case I was using the development profile, but somehow, in Build Settings > Code Signing, the Provisioning Profile for Debug was empty.
But before setting it to "iOS Team Provisioning Profile", I had to reset my account since it said " is Not on Any Development teams"
- Xcode > Preferences > Accounts
- Remove my account (click "-")
- Add the account again
That fixed the problem
Note that if the app still manages to start on the device after Xcode displays this error, you can attach to the running process with Debug->Attach to Process.
This warning is shown when you try to run and debug your code directly in device but you are using distribution profile in your Build Settings.
To directly run the code in device and debug, you need to use development profile in your Build Settings of Xcode.
After setting the development profile, just reboot your device clean your Xcode project and run again.
I hope this helps !!
An app should return from his initialisation procedure in less then 10 seconds, or it will be killed by the OS. This is probably because you are doing too many things in the startup phase.
Try to refactor your code to do it diffrently, by doing lazy initialisation, and only initialize what is really important before showing the first view.
It's hard to give better advice before knowing more about the app itself
I have faced this issue with Xcode 6.2 and Iphone 5s with iOS version 8.3.
I get this message when I deploy the application to the device for the first time.
The work around I found was that with out unintalling the application from the device,redeploy the application from Xcode.It should run perfectly this time.
I observed this only on Xcode 6.2 not on Xcode 6.3 so this might be an Xcode to iOS version compatibility issue.
Big and weird tip for this problem... this was happening to me and none of the advice helped anywhere on the web, but then i noticed if i deleted everything out of the main ViewDidLoad method it would work. I realized there was one line of code that was messing it up. It was a line that was referencing to an array of strings that was way to big. I had something like this NSString *mystring[100][1000][100]; i accidentally added some zeros and for whatever reason this problem produced the same error message that the incorrect signing gives you. So don't let your arrays or matrixes get too out of hand!
Method #1:
Lock your phone, press XCode start, wait till XCode says "unlock your device to launch", then unlock your phone, it will be launched successfully, works every time.
Method #2:
If your goal is just to debug the app, here is another simple and straight-forward approach:
After the app is deployed, launch it manually.
Goto XCode -> Debug -> Attach to Process ... to choose your app from the list, then debug properly.
This works well for me, and it saves lots of time.
I hope this helps, thanks!

iOS application Ad Hoc installation stuck due to wrong configuration

My application got stuck on installation due to wrong configuration on my iPhone with iOS 7. Provisioning profiles, certificates, devices everything seems ok.
I found an example of how to prepare a web page to provide a download link for your iOS application. I completed the necessary steps with one small mistake. The mistake was my appName.ipa and appName.plist was different.
As a result, the link was look like working but was installing 2 apps because of this difference. Real app finished installing but other clone that comes from the wrong .plis file never finished installing.
I'm able to install/remove application but this second clone cannot be removed even there is an (X) symbol in edit mode. When I press the (X) symbol for deleting it shows the Alert View but not deleting the clone even I press Delete or Cancel.
I tried to delete it but couldn't find a way. I currently don't have any issues installing/removing my application but it just stuck there. Is there anyone has the same problem before or any ideas?
Did you try with iPhone Configuration utility (Win) / iPhone Configuration Utility (Mac) ?
I realised the problem, it's about the Bundle Identifier difference. I created a new app with the ghost icon's bundle identifier and run it from XCode, so XCode overrode it and successfully installed the test app.

IOS MDM Server IOS App OTA Deployment

We've built an MDM server using a mac mini.
We have 2 applications to push out to a number of users. One app will push and download on the remote devices with out a problem. The other displays an error "The app could not be installed at this time"
This second application is an older application.. however we are building it for 6.0. In the console we see this.
ipad SpringBoard[65] <Warning>: could not save thumbnail for downloading icon: image=(null) path='/var/mobile/Library/SpringBoard/DownloadingIconImageCache/
This app can be built an installed when a device is connected to the build computer. We have all of the signing the same as the first application. We can also archive the app without any errors. What would cause this app to not install, or what should we start with?
Several notes/ideas:
a) Take a look at this (they mention the same problem)
Trouble installing AD-HOC distribution through safari
iOs application crash on install
Ad-hoc distribution fail
http://community.phonegap.com/nitobi/topics/not_installing_my_application_in_ipod
b) Can you please post your manifest (if you are installing inhouse apps)?
Please double check that that if you pointing to icons in this manifest, the links are correct.
Ok this took days to figure this out... In my situation at some point another icon was added into the build settings. We did change the name of the bundle so I'm assuming that xcode automatically populates the icon information?
In the info tab check to make sure you only have one property for 'icon files' (to be clear you should have the ability to open the drop down menu and expose sub menus... What I had was 2 'icon file' sections.) After I deleted the second set of icon files it pushed fine.
Hope that helps others figure out a very frustrating situation

Resources