Problem: I cannot get the Xcode debugger to attach to my new Apple Watch
Hardware:
Apple Watch Series 3 (no GPS)
iPhone 6s
Where it works:
Debugger works fine on the physical iPhone
Simulators work great (both iPhone and Apple Watch)
Things I've tried:
Restarting all three devices (Mac, iPhone, Apple Watch)
Formatting and reinstalling iOS 11 on my iPhone
Unpairing and repairing the Apple Watch (done this 1000 times)
Completely removing all of Xcode and reinstalling from the app store (deleting simulators, sdks--everything)
Other things:
I've made sure to trust this computer
I've started a brand new project just to make sure it's not something in my code.
It shows up in Xcode as a valid target, but when I build it just says "Running App on Jason's Apple Watch." It installs the app, but doesn't start it, and the debugger doesn't hit any breakpoints.
Attempt to attach the debugger manually to the Likely Targets.
XCode -> Debug -> Attach to Process -> Likely Targets -> Your Project
I had this same issue and am uncertain of why this started happening to me. If someone knows how to permanent fix this problem, please feel free to edit this answer.
It started working. Not sure what specific thing it was, but I enabled all the checks in the debugger scheme. Posting in case this helps someone else:
So I got my new watch (yay!). I manually added its UDID to the developer portal and refreshed the provisioning profiles and I was able to push an archive to ITC for testing but now I want to run the app in debug on my watch itself.
I try deploying the watch kit app target set to my phone as the device and it sits there and runs/ churns for a while and nothing happens.
If I wait long enough, Xcode eventually errors with
"Install of Apple Watch Application never finished"
Has anyone run across this or know of any tricks I can try?
I keep running into this as well with Xcode 7 beta and iOS 9 / watchOS 2 simulators.
One solution that worked for me was to reset and restart both simulators, but it didn't work reliably. So I tried some other things, and what eventually started to work reliably for me was:
Go to the "Apple Watch" companion app on the iOS simulator.
Click your app's name.
Toggle "Show App on Apple Watch" switch as shown in the screenshot below. (turn it off, and back on again)
Run the app again from Xcode.
Well with much testing and fooling around, I was able to fix the problem.
There was a mix of the error above as well as the usual verification error.
I had to double check and triple check that all 3 of the developer provisioning profiles for watch ext, watch app, and the app were up to date with the updated Watch UDID device.
Note: For debugging watch apps, I have found that you seem to have to select to run the app from your watch and then the debugger will trigger
I had this problem with the simulator. I solved it by resetting both simulators (File/"Reset Content and Settings..."). Not sure if I had to be that drastic... deleting the app may have worked also, restarting the simulator didn't.
I had this same problem, but for different reasons when developing with Xcode 7 and iOS 9.
If this helps for anyone developing their WatchKit Extension (not watchOS 2.0 app stand alone) with Xcode 7 beta (and iOS 9) and they wish to test on their actual Watch, I had to make sure the WatchKit App Device Id (on the Apple Dev Portal) AND the Xcode target had App Groups enabled.
This is different. Perviously just the Watch Extension required App Groups enabled.
My WatchKit app DEV provisioning profile also, of course, had to have the UUID of the watch used in development.
I had similar issue on a physical device. I fixed this by restart apple watch.
To do this just long press a button on right side of watch and select "Power off" from screen and after that next long press on right side button.
I had the exact issue, and after trying different combinations, I was able to resolve this issue.
Below is list of items you need to check before you debug your Watch App on Simulator:
Make sure that the Bundle Identifier of your WatchKit App and WatchKit Extension is set properly and you have selected proper provisioning profile and certificates for both.
The Bundle Identifier of your 'WatchKit extension' should contain the Bundle identifier of your 'WatchKit App'. For example if your 'WatchKit App' has bundle identifier as 'com.example.watchkitapp', then your 'WatchKit Extension's' bundle identifier should be 'com.example.watchkitapp.watchkitextension'
Make sure your Watch App & Extension has Version Number same as your iPhone app.
I hope the above steps will help you resolve your issue.
Happy Coding :)
I had this problem and solve it by turning 'Keychain sharing' off in Project->Target->Capabilities.
I have a WatchKit app that runs fine in the Simulator. But when I try to run it on an actual device it never finishes installing and never provides any error message or feedback.
The iOS app installs and runs fine. I bring up the Apple Watch app on the iPhone and it lists the app and shows the correct icon. Selecting that, the "Show App on Apple Watch" switch is on. Underneath it it says, "Installing...". And it stays there.
I can also see the app icon on the Apple Watch. Selecting it just shows the spinning wheel indicator as if it is trying to load.
Things I've tried based on other suggestions I've found here, on the Apple Developer forums, and around the web:
Verified that all app bundle IDs are correct and match.
Verified that the deployment target is iOS 8.2.
Verified that the WatchKit App runs in the simulator.
Verified that my provisioning profile includes my Apple Watch's UDID.
Verified that my Apple Watch shows up as a "Paired Watch" in Devices.
Deleted the app from my phone, and then rebooted my phone, watch, and Macbook before reinstalling.
None of the above work. Any suggestions?
Thanks!
Thomas Aylesworth
A friend who works on the USA Today iOS team, including the Apple Watch app, suggested I go to the project settings for the WatchKit App target and set "Skip Install" to NO. Sure enough, after doing this, I was able to install.
I've found it very useful for reading the iPhone console log. (Not to be confused with crash logs).
Use Xcode --> Window --> Devices -- select your plugged in iPhone, and make sure the log screen lower left arrow is down.
In my case, I had invalid provisioning profile entitlements, which were corrected via the Apple Dev portal, and re-downloading the profiles -- after making sure the entitlements were correctly being set in the WatchKit App Capabilities.
Check Info.plist file. In my experience if there is something added there that is not supposed to be there, it will cause this behavior. I added NSLocationWhenInUseUsageDescription and it caused this same issue.
I have found a similar problem due to my storyboard referencing an image which I later deleted (I no longer actually used it anymore). This gave the symptom of running ok on simulator but not deploying fully on hardware as you are seeing. To exclude this potential problem go through each image view on your apple watch storyboard and look out for the exclamation mark against image view entries.
I had the same problem but for me it actually turned out that the Apple Watch was running a WatchOS version lower than what what I had in XCode. I could not see a runtime warning about this (it just silently failed), but when selecting WatchKit scheme in XCode with device connected there was a small warning about version requirement.
You can also try deleting the watch app on the watch by long tapping on the icon and then you should get the giggle UI with a X on 3rd party apps. You can then delete the watch app and retry the install.
I was getting this error too, and I got it to install, after creating a new project from scratch in the non-beta Xcode, and copying my assets and code into the new project. I had the same problem, and tried everything that people suggested on other posts, without any success, including everything that you listed above.
Apparently, there was something incompatible with the way the project was stored in the beta Xcode, that I had created for the WatchKit app.
Here's what works for me with iOS 8.3 and Watch OS 1.0.1:
Make sure your app is finished installing on your iPhone.
Restart the iPhone by holding down the Home button and Wake/Sleep buttons.
Launch the TestFlight app on your iPhone.
Staying in TestFlight, go to your app's detail page and toggle the Install on Apple Watch to the On position.
Press the Home button on your iPhone to exit the TestFlight app.
Press the digital crown on the Watch to get to the Home screen. An icon for your Watch app should appear and begin installing.
make sure your app support 64Bit, otherwise it cannot run on Watch,just spinning there.
Did you add a custom entry to the of your Info.plist of the WatchKit App
This isn't allowed and it will fail validation and will just sit on Install...
Checkout the device console log for information on it
Yeah, had that problem too.
I deleted the Xcode Beta (and the .dmg) downloaded it again and installed it.
Don't have that problem anymore.
In my case, I disconnect the iPhone and the Mac, reconnect them via data line. Then something appear on my watch, a choice, agree or disagree, agree it. After that, Xcode begin to install symbols for watchOS 2.1:
When this is done, you can check it in Library->Developer->Xcode->watchOS DeviceSupport->Watch1,1 2.1 (13S661)->Symbols
Then I disconnect the watch and iPhone, reconnect it. Now I can install WatchKit App on my watch.
I have followed the answer by #hunterleebrown to see the log and found that the WatchOS version is not updated (i.e. Watch OS version is lower than the required version).
Here is the screenshot [ The log says (4th line): The system version is lower than the minimum OS version specified for bundle at ... ...]:
Then I went to the iPhone's watch app's-->general settings-->Software Update and found the watch OS is not updated (which is obvious). Then I downloaded the update and installed it. Then it worked!
Note: I also tried quitting XCode, restarting iPhone and Watch but didn't work for me.
Press "Trust this device on Apple Watch"
I had the same endless installation issue ending with a Time Out error and I finally fixed it thanks to this answer: https://stackoverflow.com/a/61636074/2854405
I had to:
Unpair my iPhone (from the "Devices and Simulators" screen),
Exit Xcode
Replug my iPhone
Trust the iPhone again when it was prompted
Start Xcode
Rebuild
I also had the same issue.
#SwampThingTom suggestion is good, but it changes the archive format as well size increases too.
In my case, the issue was DER entitlements not working only watch app, mobile app was fine.
Make the changes as per the comment over here This Code Signature is no longer supported when building app on iPhone 12
Upgrade to Xcode 13.1
In my case I resolved this problem when selecting the WatchApp target to creating AdHoc.
So, for example, there is three targets in project:
Demo;
Demo WatchKit App;
Demo WatchKit Extension;
If create AdHoc with Demo target, you will get infinite installation.
If create AdHoc with Demo WatchKit App target, the problem goes away.
I opened up Xcode5 but my app cannot deploy onto my phone.
The organizer lists it as a deployment device, but all I see in the main toolbar is just generic "iOS Device".
It's odd because on another project does list my phone when I hit the "Play" button. Anyone seen this?
I am new to Xcode. Are you only allowed to deploy one project on your phone at a time?
Both projects are Universal.
It could be that the device has an older version of the OS on it. If you are targetting a newer version of the OS it will not show.
There is no limitation to the number of apps that can be on the device, you can have multiple. It could be that the device is not registered with apple? Showing in the list, does it have a green dot?
here is a question with the answer: Provisioning New Device for Development Xcode
Also, is it possible it is just not selected, here is a screen shot and link: http://www.techotopia.com/index.php/Testing_Apps_on_iOS_7_Devices_with_Xcode_5
Go to /Library/Developer/Xcode/DerivedData and delete all the contents.
This should now allow your device to be seen in the devices for selection.
This has been tested and works as I had the exact problem.
I have a PhoneGap application which works in the Xcode simulator. I also am in the Apple Developer Program so I can do code signing to run apps on actual devices.
However, I am having a hard time finding a good resource to walk me through the exact steps to get the app on my physical iPhone/iPad. I have found other guides which are either for Xcode 3, or they show how to get PhoneGap working in the emulator but not how to get on an actual device, or they are presumably using a different version of Xcode 4 because they reference different commands than I have.
If you have successfully deployed an application from Xcode 4 onto an iOS device, could you please post a link to steps that you used or refer a book that has that information? I appreciate any help that anyone can give on the subject. Thanks!
[Edit: Though I am using PhoneGap, the steps to deploy from Xcode to iOS device are AFAIK the same.]
[Edit to add more detail:
I have my project made and it runs on iPhone 4 simulator and iPad 4 simulator.
I also can plug in my iPad (already went through the assistant to get it provisioned), select it in the scheme list box, click the Run button and it will launch as expected on the iPad. Does this mean that I have the code signing part working at least?
So far so good. Now I want to make a build so that I can distribute to people to test the app on their devices (I have their UDIDs already). When I get to the "Publishing Your Application for Distribution" section of the iOS Development Guide in the iOS Developer Library, I get stuck in the Archiving Your Application for Testing section. I am having trouble finding the Code Signing Identity build setting. It also looks like they have changed the menus around because they refer to a Build > Build and Archive menu item that doesn't exist anymore. I tried Product > Build for > Build For Archiving which seems like the closest option and the build actually succeeds but in the Organizer > Archives tab there are no archives.
Sorry that I do not have more specific information about where the process is breaking down for me but I'm new to the Xcode environment. I can typically figure these things out on my own as long as there is documentation somewhere but I have not been able to find any that match my build of Xcode. Thanks!]
[Edit again: After doing more research I ended up following the suggestion of others and did a complete uninstall/reinstall of Xcode which ended up resolving the issue albeit in a rather heavy handed way.]
You'll want to check out Apple's Documentation, for sure:
iOS Development Guide: Managing Devices and Digital Identities
iOS Development Guide: Building and Running Applications
They have a complete walkthrough of provisioning, building, and deploying your application to a device.
The Xcode Organizer makes it fairly straight forward and painless now... but there are still some sticking points, and reading the documentation will give you a full overview of exactly what's going on in the process.
Contrary to apple advise, setting Skip Install (Build Setting) to NO fixed this. Using phone gap here.
Archives not showing up in Organizer for XCode 4
Once you have your Apple Developer Account Credentials, You can follow gist I have created:
Apple's Code Signing Process