I help manage a Mac-based graphics labs and I teach web design for my university's art department. I installed Xcode and the iPhone SDK/simulator so that the students can have experience testing websites on mobile devices (such as the iPhone or iPad). The simulator works just fine when logged in as the local admin user for the computer, however the iOS simulator fails to launch when logged in with one of the student accounts (which are hosted from Snow Leopard Server) or any other networked account.
The simulator begins to launch (and the application does open) but it gives me this message:
The simulated application quit.
Click Relaunch to try again.
My options are "Quit", "Switch SDK..." or "Relaunch".
Is it possible for the simulator to launch using a network account? If so, does anybody know how?
The client computers are running Mac OS 10.6.8 and the server is also on 10.6.8. I'm using Xcode 4.2 with the iOS 5 SDK (for Snow Leopard).
Thanks in advance.
I had the exact same problem, for some reason the iPhone Simulator doesn't like it when the ~/Library/Application Support/iPhone Simulator directory isn't on the local volume.
Here's the fix/workaround:
rm -Rf "~/Library/Application Support/iPhone Simulator"
mkdir "/Developer/Local/$USER/.iPhoneSimulator"
ln -s "/Developer/Local/$USER/.iPhoneSimulator" "~/Library/Application Support/iPhone Simulator"
Using the /Developer/Local directory is totally arbitrary, as long as you choose a place on the same drive as the iPhone simulator it will work. Of course, /Developer/Local/$USER should also have the correct permissions so $USER can actually use it.
Cheers
It seems that with every new OS X and Xcode release, something else breaks with regard to running Xcode on network home directories.
Our method of getting around this was to have students set their Derived Data location to /tmp/username in Xcode settings. This will create that folder when they try to build a project. Then we can place a symbolic link, ~/Library/Developer/CoreSimulator -> /tmp/username and this way the iOS Simulator will work for them.
Also, having Derived Data in /tmp/username really improves build performance and reliability.
I don't think many people use OS X and Xcode in this configuration; it's very common in university computer labs where you need to have students able to log into any workstation and have their own environment. I wouldn't mind it so much if they didn't change something new every year which breaks Xcode causing us to have to fix it all over again.
Related
I built an app, and I'm distributing it for testing OTA. It is targeted for iOS 5.0 and above and is configured to be universal (so should work on both phones and tablets). It has been running just fine on both kinds of devices. Today I put out a new version. It installs just fine on tablets. However it won't install on phones running any version of the os from 5.0 up. They just get the message 'This app cannot be downloaded.' All of these users are verified provisioned. I'm not sure what I could have done between versions to keep this app from being installed on phones now. What should I be looking for as a possible issue?
It runs fine in the iPhone simulator
If you have access to any of the iPhones the app won't install on, you can connect it to xcode and view the device logs for why the installation failed.
That'll give you the most definitive answer.
If you can't access the iPhones, I would say you should regenerate your IPA file and make sure the target you're building the IPA for has the right configs (universal app, iOS version, provisioning profile assignments etc.)
Not sure why this helped, but I decided to export the ipa with a new file name this time. I didn't modify any settings in the package anywhere other than giving the .ipa file a new name. Doing that fixed it. Now everyone can download it again.
I just tried to get my own app on my iPhone without a developer account. The following are steps I did:
I patched Xcode and my project (Currency.xcodeproj) with JailCoder
I want to build the project with "iOS device" in Xcode. But I got a error message like "no device found". So I ran it in the emulator and I got the currency.app-file in /Users/Dogan/Library/Developer/Xcode/DerivedData/Currency-gjxrulouxbmjslbzslsplyehgfgm/Build/Products/Debug-iphonesimulator
SSH to iPhone in /var/mobile/Applications
Creating a new folder named FADE9826-4878-4458-B5BE-90AD4EB60FDF (I have to take a valid UDID. Have I use to specific tools to create a UDID? I have the UDID from an other example). I also created a directory in this folder with the name "Documents".
chown -R mobile FADE9826-4878-4458-B5BE-90AD4EB60FDF
scp -r Currency.app root#IP-ADRESS-OF-IPHONE:/var/mobile/Applications/FADE9826-4878-4458-B5BE-90AD4EB60FDF/
Restarting Springboard in SSH with "killall SpringBoard"
I got the app, but it doesn't work. Every time on click, it crashes and kicks me to the home screen. Had I missed something?
You missed that simulator builds don't work on iPhones, because they are built for the wrong CPU type. Simulator builds are Intel x86 apps, and the iPhone has an ARM CPU.
There might be other problems (I don't know how jailcoder works) but there's no way you're getting the simulator build running on the phone.
After downloading Jailcoder and going through the guided patch of Xcode and then patching your project, if your device is plugged into your computer, select the target type (where you can select simulator, iOS Device, etc.) and there should be a listing of your device's name.
I hired 2 developers to work on an App and both developers have no problem loading the App in the Simulator. However, on my iMac, it won't load the App at all in Simulator and only gives me the icon screen of the App.
I got paranoid and did a clean install of OS X and upgraded to 10.6.6
I even erased the hard drive completely before install
running Xcode 3.2.5
developers are also running Xcode 3.2.5 iOS SDK 4.2
I did Clean Targets
I did reset in the Simulator
Maybe something in the Xcode Preference Settings?
Has this happen to anyone before?
--
Have you see them load the app?
Here are few suggestions/options:
Try to load a test app and just
see if it is actually your computer.
http://www.tuaw.com/2009/04/27/iphone-dev-101-the-hello-world-app/
Have the developers use TeamViewer
(http://www.teamviewer.com/en/index.aspx)
to load the app in your phone for
you.
You have to sign your app through
apple dev store, are you on the list
of developers that can open/edit the app?
Is there any way that client can check my app on his simulator what should i do for that...I do not want to send code of my application to him.....
I know adhoc is required to test on device but here i want to run on his simulator...
Build your app for the iPhone Simulator (iOS 4.2 on this example) and run it from Xcode.
The app should now be stored in a coded subfolder under
~/Library/Application Support/iPhone Simulator/4.2/Applications/ (e.g. ~/Library/Application Support/iPhone Simulator/4.2/Applications/E5548CB9-0A50-49EF-92AB-39F10820D9D6/)
Send your client the whole subfolder (E5548CB9-0A50-49EF-92AB-39F10820D9D6) and tell him to copy it over to /Library/Application Support/iPhone Simulator/4.2/Applications/, then run the iPhone simulator. He should be able to see the app on the simulator and run it. Note that the app will probably appear on the second 'page' of the simulator, so you client may need to scroll to the right.
You can test this between different machines at your own office prior to sending it to your client. He'll have to have Mac OS X 10.6 with the latest iOS SDK installed of course.
Go: Macintosh HD\Users\ YourUserName\Library\Application Support\iPhone Simulator\ iPhoneVersionNumber\Applications:
Then you have to look through each "AJ2783FO29ZO38-WSOHF93" weirdly named folder and find the one that is your app folder. Copy it and put it in the same place on your clients computer.
I have not personally tried this myself. Let me know if you need any other information!
There is no Apple supported method. However if you quit your Simulator after installing your app, zip up your entire Library Applications Support directory for the iPhone Simulator, send it to the client and have the client replaces theirs (after a backup of their Library, or maybe running in another Mac User account). Then when they start their Simulator (has to be from the exact same Xcode/SDK installer as yours), they will see a clone of your Simulator, with your app installed.
Trying to copy just the app bundle may or may not work, as some versions of the Simulator depend on metadata elsewhere within the App Support dir.
I recently upgraded my XCode SDK to version 3.1.3 and my iPhone OS to 3.0. It is important to note that everything was working fine when I had OS version 2.2.1 in my iPhone. My iPhone Touch device is not jailbroken and I have a valid provisioning profile in the organizer which is linked to my iPhone Touch however it has a yellow circle next to it.
This is because in the organizer under devices it displays the ipod with version 3.0 (7A341) and then it Reads (in the section where the provisioning profiles should go):
This device is not activated. Please activate it using iTunes.
When I go in xcode and build the application it does so just fine, and the code signing is in fact assigned to the correct provisioning profile. But whenever I try to run it in the device I get "No provisioned iPhone OS device is connected.". This is because the organizer keeps telling me to activate the device using iTunes.
I have iTunes version 8.2 and the device is there and i can sync it just fine, however it keeps displaying that message in XCode. I have tried restoring my ipod about 10 times but I always get the same result, I have also tried powering off the iphone Touch and the computer but nothing seems to help.
Does anyone else have this problem?
I have the same issue, but I have an ipod touch version 2.2.1. It used to connect to Xcode 3.1.2, then I upgraded to 3.1.3 and it doesn't work. I reverted back to 3.1.2 and it does not work. It does work on a friends mac with 3.1.3 so there is something wrong with my iMac. Firewall is disabled. It connects to iTunes fine and it is activated. Just won't show up in the organizer. Rebooting does not work. I reset, and restored it and it still doesn't connect. The fact that it connects to a friends mac and not mine leads me to believe that upgrading the ipod to version 3.0 would not fix the issue.
Jimi
http://developer.apple.com/iphone/index.action#downloads
download and install it
Leopard Downloads
* iPhone SDK 3.1.3 with Xcode 3.1.4
* iPhone SDK 3.1.3 with Xcode 3.1.4 Readme
open mac terminal
$ ln -s /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.1.2\ (7D11)/ /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.1.3
my space write in here
http://leefj.spaces.live.com/blog/cns!ADF54DD0A549AD9B!462.entry
Thanks to flycomputer i was able to resolve my problem with iphone os update to 3.1.3.
But i didn't need to make the symlink so check if it's done by itself or not before lunching the command :
$ ln -s /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.1.2\ (7D11)/ /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.1.3
This usually means your Phone is not activated with your provider. Can you actually make phone calls with your iPhone? Did you restore your phone via the XCode Organizer or iTunes?
Well it is not actually a phone it is an iPod Touch. I tried to restore it both via Xcode Organizer and iTunes with the same results.
This isn't the error I get, but try rebooting the iPod. Hold down the sleep/wake button on the top for a few seconds. When it asks if you want to turn off the device, move the slider to turn it off. I usually wait a minute and power it back on. This always works for me.
You are probably behind a firewall, with anti-spyware protection activated.
iTunes needs to connect properly to web (Apple, I guess) in order to activate correctly your device.
Disable the firewall, then launch iTunes, that worked for me.
JR