Telekinesis

Telekinesis allows you to change the design of your app in PaintCode, while the app is running on a real device.

Why “Telekinesis”?

telekinesis |ˌteləkiˈnēsis|
noun
the supposed ability to move objects at a distance by mental power or other nonphysical means.

How to use it?

To make Telekinesis work, you have to:

Swift and Objective-C StyleKits are supported for both iOS and macOS.

Telekinesis is meant to be used only during development. You should not include the Telekinesis.framework in your app’s release builds.

How to integrate Telekinesis into your app

  1. Drag the framework to Embedded Frameworks or Embedded Binaries section of your target General panel.
  2. Done! Run the app and you should see a message in console.
    PaintCode Telekinesis is running...

Troubleshooting

Problem: Compilation fails with an error

  1. Framework must be added to the project and visible in Project Navigator.
  2. Build Phase Linked Binary with Libraries must include this framework.
  3. Build Phase Embed Frameworks must include this framework.
  4. Build Setting Framework Search Paths must include a path to this framework.
  5. Try adding “-ObjC” to Build Setting Other Linker Flags.

Problem: Framework prints message:

This application doesn’t have a StyleKit class named...

Make sure that StyleKit name in your PaintCode document and the StyleKit name in the app is the same.

Problem: Your device is not present in the popover.

Make sure the device runs compatible version of Telekinesis. A message with the version is being printed when the framework is initialized.

If you use App Sandbox, make sure the network communication is allowed.

Since Telekinesis uses Bonjour for discovery on local network, perform the standard procedure: turn it off and on again.

Technical details