04 May 2016

Keeping Spark Inspector working across new versions of Xcode has been like trying to keep a house of cards upright on a windy day. I’m sharing how I successfully re-enabled the plugin after upgrading to Xcode 7.3.1. After the procedure, the plugin is available under the Debug and Product menus in Xcode.

Neither their website nor the plugin seems to have been updated recently but I still find it useful for certain debugging situations and that’s why I’m sharing this info.

Get the current DVTPlugInCompatibilityUUID

The way I was able to get the plugin to work in Xcode up to version 7.3.1 was by adding the DVTPlugInCompatibilityUUID to the Info.plist contained in the Spark Inspector plugin package.

To obtain the correct plugin UUID for your Xcode, use the following command (all on one line):

$ defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID

The DVTPlugInCompatibilityUUID for Xcode 7.3.1 is

ACA8656B-FEA8-4B6D-8E4A-93F4C95C362C

Add it to Info.plist

I then added it to the Info.plist found in the plugin package.

The quick way to get to the plugin package is, from within Spark Inspector, by selecting Getting Started Instructions under the Window menu.

Figure 1: Quick way to the plugins folder.Access the Xcode plugins folder using the link within the Spark Inspector app.
Figure 1: Quick way to the plugins folder. Access the Xcode plugins folder using the link within the Spark Inspector app.

Click the “>” icon next to “We’ve copied a plugin into Xcode’s plugins folder” (Figure 1). This will bring up a window in Finder. The icon might not be visible, or the plugin might not exist, if you have not yet installed the plugin. The plugin can be re-installed by selecting Re-install Xcode Plugin under the Spark Inspector menu.

Right click SparkInspectorXcodePlugin.xcplugin and select Show Package Contents from the menu.

Add the DVTPlugInCompatibilityUUID to the Info.plist and save it.

Figure 2: Load Bundle prompt.The Load Bundle button needs to be clicked to load the plugin. Be careful, the load button is not the default!
Figure 2: Load Bundle prompt. The Load Bundle button needs to be clicked to load the plugin. Be careful, the load button is not the default!

Restart Xcode. If all is well you should receive a prompt (Figure 2) requesting that the plugin be loaded. Load Bundle should be selected.

Finally, check the Debug and Product menus to make sure the plugin is there.

If the prompt is not available, you can use the following command to delete the currently linked plugins for Xcode.

$ defaults delete com.apple.dt.Xcode DVTPlugInManagerNonApplePlugIns-Xcode-7.3.1


blog comments powered by Disqus