I\'m trying to run XCode\'s time profiler on my app that is running on my device, but the symbol names show up like 0x2fe26643 instead of [MyClass myMethod]>
Here is what I did to enable profiling, without switching to debug mode. This is for Xcode 4.5.1
Create a new "Profile" build configuration, based on the existing "Release" configuration: Select the project in the project navigator to open the project editor. Select the project in the project editor and click the Info button. Expand the Configurations section in the Info pane and click the Add (+) button at the bottom of the section. Select the existing "Release" configuration from the pop-up menu as a starting point for the new configuration. Select the name of the copy and type "Profile". See more in the Xcode User Guide.
Set the Code Signing Identity of the "Profile" configuration to "iPhone Developer" (or the same as your "Debug" configuration): Click the Build Settings button to display the build settings for the project. To change the build settings in the new configuration for all the targets in the project, edit them at the project level. To change the build settings for an individual target, select that target. If you edit them at the project level, make sure that you double-check the target level afterwards: target settings override project settings. The Code Signing Identity is in the "Code Signing" section.
Make sure that the "Generate Debug Symbols" setting is YES for the "Profile" configuration. It was already YES in my case.
Set your new "Profile" configuration to be used by the "Profile" scheme: Select "Product->Edit Scheme" from the menu, select the "Profile appname.app" tab at the left, and then select the "Profile" under "Build Configuration".
In your appname.entitlements file set the "get-task-allow" property to YES.
Press the ALT key, and select "Product->Clean Build Folder" from the menu.
Now select "Product->Profile" from the menu, and you should be good to go.
All kinds of strange things can happen if you don't do all of this. I have had no symbols show up at all, or only library symbols show up. I have had symbols only showing up if you first do a debug build, and then profile afterwards (which means the symbols are probably incorrectly taken from the debug build). I have had the profiler complaining about UUID mismatch, and I have had the infamous "Entitlements do not match" error (see more on that here).