I'm having problems running my iOS project with Xcode 6 beta. I believe it is entering a debug mode or something. I might have done something by pressing a key shortcut, because I didn't have the problem before. Previously the iOS simulator would appear with my app showing.
Whenever I run the project now this screen appears and the iOS simulator doesn't show up at all. I would like the run button to function as before. I have tried the Product->Clean feature, closing Xcode, recreating the project, removing the app from the iOS home screen, deleting the derived data and various features in the Debug menu.
What is happening and how can I revert the change?
In xcode, I tried to add a tap gesture to my app and when I built it, it started a problem with Xcode. It goes from building, 'running on iPhone 6.1 simulator' to 'finished running on iPhone 6.1 simulator'.
If the simulator is closed, it starts up with a black screen and you cannot click the home button etc. If open, nothing happens, the app doesn't install but the simulator doesn't crash.
I have tried the armv6 architecture 'fix' but that didn't work. I have also cleaned the project and project data. I have reset the simulator multiple times as well.
If I add the old files to my new project, it works up to a point (I copy and paste old files into new) but then the same happens.
Thanks for your help in advance!
NOTE:
New blank projects build and run fine.
EDIT: It still didn't work after undoing my previous actions, and the simulator is responding according to Finder, although the screen stays black
–––––––––––––––––––––––––––––––––––––––––
UPDATE
I had a folder named 'resources' in my application, imported as a reference which, following links from the thread #arthan.v supplied me with fixed the problem. What I did was rename the folder to files and reimport it.
Thank you so much, I spent 2 days trying to fix it before now!
Click the Center Button in View on your right hand side of Xcode.
In your Bottom bar, you'll see error: failed to attach to process ID 0.
Check these error: failed to attach to process ID 0 and Xcode compiles my App, but can't run it in the simulator
This sometimes gets fixed by these steps:
iOS Simulator > Reset Content and Settings ... > Reset
Xcode > Build and Run
I experienced the same issue after I had re-organized some code and renamed the workspace and project. Eventually realized there was an old version of my test app on the simulator's homescreen. I delete that and then everything was building fine again.
You might need to add the device to the provisioning profile. I experienced this on Xcode 6 and a real device.
On Xcode when you build on device you can troubleshoot the app within the console. How can i do that with Titanium? It's very difficult without troubleshooting
What you can do is use the Ti.API.info('whatever') method to log everything you need and will help in debugging then while you run your app on the device and it is connected to your computer, just open xcode -> go to organizer -> click on your device -> and select console. Every Ti.API.info() log you do in your app will show up in the console.
Titanium's SDK (http://www.appcelerator.com/platform/titanium-sdk) is Eclipse with the Aptana plug-in. You can do the same debugging you'd do in Eclipse: set break points, step through code, set watch points, ...
To run your app in debug mode, start by setting some break points in your app. To do that right-click on the line number that's on the far left of our line of code and select "Toggle Breakpoint". Next, towards the top of the Project Explorer panel are several icons. One of them is debug. Click on that debug's dropdown menu and select the iphone emulator or ipad emulator. The app will compile for debug and run the emulator you chose. From this point on, everything is like debugging on Eclipse.
Lately when I have been deploying any iOS application to the simulator (iPad or iPhone), XCode locks up (Not Responding) and the simulator simply displays a black screen. I have to force quit both.
Steps I have taken so far towards a resolution:
Clean
Reset the Simulator
Deleted the simulator folder
Reinstalled XCode from the App Store
Reinstalled XCode from the developer center
Has anyone else encountered this? Any suggestions for a solution?
Other info:
OSX Lion 10.7.3
XCode 4.3.2
Shibboleet
Thanks in advance for any help.
I had this problem and was able to continue by:
1) Edit the run scheme by clicking on the first part of the App name to the right of the "Stop" button to bring down the scheme list and click "Edit Scheme..."
2) Click on the Run item and change the debugger from LLDB to GDB.
3) Run
I think the problem was that I validated the settings and it offered to automatically change the debugger from GDB and LLDB and I clicked "OK" because the advisor message sounded very self-assured.
Enjoy.
Under Scheme, go to edit scheme, and change launch from wait for App.app to launch to automatically under the Info tab.
EDIT: If you upgraded Xcode, make sure the old separate simulator is uninstalled.
hmmm, weird simulator, instruments issue i had once would work when i command-tabbed back and forth. try deleting derived data?
I don't know why but now the default iphone simulator launched when I build the project is "ipad", but I want it to use iphone 3g instead.
Any way to set this preference?
On Mac, if you right click on the Simulator icon, you can select devices and it will open a new device.
Or go to File -> Open Simulator
In Xcode,
Click Product -> Destination -> iOS Simulator -> Choose Device to run.
Then build and execute Xcode project.
It works..
2022 Fix:
You have two options!
With the simulator running go to File > Open Simulator > iOS [current version] and select the desired device.
With the simulator running, right click the icon in the bottom toolbar, select Device > iOS [current version] and select the desired device
If you are using Expo, after selecting the new device will open in a new window, so you'll have both. Heres how to get Expo to run on the new device:
Close the device window you don't want (cmd + w)
You will now be able to "Run on iOS Simulator" and it will open up Expo Go on the new device.
2020 Fix:
With the simulator running go to File > Open Device > iOS > iPhone 11 and select the device. It will open up the device as another window but there won't be the Expo app.
Close the device window you don't want (cmd + w), then close the window with the device you would like.
Restart Expo (in the command window with it running do ctrl + c then re-run Expo with expo start
You will now be able to "Run on iOS Simulator" and it will open up with the selected device type.
In the chance that anyone reading this is building their app in react-native, the solution is the --simulator option.
For example:
$ react-native run-ios --simulator "iPhone X"
Go to Hardware > Device from simulator menu.
For me works changing active SDK from 3.2 to 4.0. If your project is mentioned to work on iPad and iPhone (or for compatibility matters) I believe the only way is manually switching active executable before running your app on simulator.
Apple:"iPhone OS 3.2 does not support iPhone and iPod touch devices. It runs only on iPad.".
You can select the device from the menu inthe simulator.
Try
Project > Active Executable , and select the one you want the most.
This worked for me. When I already have the app open on an iphone in "Simulator". I click File -> Open Simulator -> iOS 14.0 -> iPhone 8 (or iPad (7th generation))
None of the above worked for me, but the following took care of the issue :
Source:
http://www.cocoabuilder.com/archive/xcode/301182-xcode-3-2-6-keeps-switching-to-ipad-simulator.html
Excerpt:
This works for Xcode 3.2.6. I don't yet use Xcode 4.x so don't know
if this will work for it or not. I would also quit Xcode before doing
this, just in case.
Go to the project folder and find the .xcodeproj file. Right-click
(or Control-click) it and select Show Package Contents. When the
package contents window appears, find the .pbxuser file (there might
be multiple such files if the project was worked on by multiple folks
and/or multiple computers). Open this file, which is XML, in your
preferred text editor. Find the section with the comment "/* Project
object */". There is most likely not a line in that section for the
key "activeSDKPreference". If there is no such key, add the
following:
activeSDKPreference = iphonesimulator4.2;
I found it after the "activeExecutable" key in that section, so I've
been adding it in that same order.
If there is already an "activeSDKPreference" entry, change it to
"iphonesimulator4.2".
Close the editor and the package contents window and then double click
the .xcodeproj file to reopen the project. Now you should have
entries for iPhone Simulator 4.2 and iPad Simulator 4.2 in the project
settings pull down menu, with iPhone Simulator 4.2 probably already
checked.
Additional Notes:
In my particular case, my entry in .pbxuser file had said
iphonesimulator4.3, even though under Project-Project Settings
menu
it said iphonesimulaor4.2!. However, once I changed it to
iphonesimulator4.2 in the .pbxuser file it stop auto selecting
iPad
all the time.
If you use SVN you will not see an "M" in SVN column showing that
you changed the project (even if you refresh/update). However,
just
do a "Commit Entire Project" and your changes to .pbxuser file
will
get updated. I also suggest referencing this post in your
check-in
comment in case you ever need to change it back for whatever
reason.
I finally solved this problem myself.
First, install new version of Xcode, which is Xcode 4.
Then set project scheme to iPhone Simulator and run app in Xcode several times.
And re-install Xcode 3 and the problem will be gone!
Yes, it's annoying. This worked for me:
Open the .plist file in group/folder resources and check the checkbox for key "Application requires iPhone environment".
If you are using Flutter, open the Runner.xcodeproj file in ios/ folder. Then right next to the Runner breadcrumb, you can click >and select what device to launch.
For Xcode Version 3.2.6 the following helps:
Project->Active Executable->iPhone Simulator 4.3
I don't know if it is working for newer Xcode environments.
Gary Tsui has also pointed out this approach previously.