Module Verification

Futuristic technology background. Internet data connection. Cloud networks.

So by now you have heard or seen our Open Mobile Marketplace, and most likely also used a module or two. Now while these modules are great, we get a lot of questions about verification issues so we decided it would be a good idea to write a quick blog post to explain how module verification works, and how to prevent these issues.

For developers

So to start, each module has a GUID which allows us to track modules, and allow for things like paid for modules to exist. The issue for many comes in to play with this simple string. You see, our systems do a quick check to our servers to see if a module is one that is paid for, and if so if you have the rights to use it. This also applies to free modules in the marketplace as they are “paid for” just the price is free.

So to prevent collision, with each release location (such as the Marketplace, open source…) use a new GUID in your modules manifest file. To generate a new GUID, simple run the uuidgen command from the terminal / command line. Then (if your working with an iOS module) paste the new GUID into the manifest, as well as the  <module name> file under the moduleGUID property.

For users of modules

An issue some users see, is that Titanium requires an internet connection to make sure you actively have the rights to the module(s) your using. So to build an app with a module, an internet connection is needed.

Another issue users see is they buy a module under one account, but the app project they are working on was created under another users account. In this case, a new project will need to be created under the user that bought the app for verification to work.



  1. If I have an internet connection and still see the error, does that mean that the module provider needs to make some changes to the way the GUID is handled before it will work?

  2. Could it be possible to do it differently ? I would like to buy one module for one application, with or without internet connection.
    It would be more flexible if we could buy a license for one application id, and the module checks the license locally, with a hash string for example.

    I understand it’s not the way you’ve chosen, but would it be difficult to do it so ?

  3. 2 Questions:

    1. Does it try to do verification on custom modules or open-source modules found on Github?

    2. Does this mean a constant internet connection is required? What if I want to do some work somewhere where internet is unavailable – are you saying this in not possible???

Comments are closed.