iPhone UUID mismatch detected with the loaded library
March 19, 2009 § 5 Comments
UUID mismatch warning is a very common issue when iphone developers make minor modifications to the SDK app. The app doesn’t fail on iphone simulator. The UUID mismatch warnings would occur when it is run at build on debug and print on console.
Restoring iTouch from factory setting and restoring the iTouch back to the iTouch device won’t remove the warnings. Restoring to the device name where provisioning is generated for the app won’t remove the warnings.
Create a new project within Xcode won’t remove the warnings.
If you restore from factory setting and original device profile, unplug the device, start Xcode, open Organizer to select device “Use For Development” then build debug on console, it won’t remove the warnings.
In my case, UUID mismatch warnings print tens of lines and the app would not start. If you force to open the app, you would see the Default.png on MainView and UILabel and UIButton won’t render.
If you unplug the device from mac, run the app on device. The app works except you won’t be able to utilize console to debug any problems on device. After searching for answers on developer forums, it is a very common problem among developers. However, there is no known solutions except a few possible tips.
WARNING: Falling back to active SDK directory at: /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk
warning: UUID mismatch detected with the loaded library – on disk is:
What we learn:
- it doesn’t occur in simulator
- it appears when it runs on device and prints on console
- it seems to occur after device upgrade as the debugger version on the device is out-dated
- it occurs when building debug and not build release.
- app would crash when running from Xcode. It would run on device. After making minor modifications to the same app, the app would keep crashing on the device
These are steps other developers tried and failed
- reinstall Xcode
- re-install iphone OS 2.2
- create a new project and copied all the sources
The message is telling you that a library on the device isn’t exactly the same as a library in the SDK, but the difference between the libraries in this case isn’t one which has any visible impact.
1. unplug the phone
2. delete the app from the phone (using the standard method of holding your finger on the icon until the ‘X’ appears)
3. Once deleted, plug back in and re-build
4. Again the app crashes on the device, but this time after the crash, unplug again and run it directly from the phone