---
title: 'Creating A Vaandroid Plugin'
url: 'https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials/creating-a-vaandroid-plugin'
markdown: 'https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials/creating-a-vaandroid-plugin.md'
date: '2026-09-25'
description: 'This page consists of a list of the things necessary to create a plugin with links to how to do so Vaandr'
taxonomy:
  category:
    - docs
---

[](#)  [ Home ](https://www.twelvetone.tv/docs/)     [ Operating Systems ](https://www.twelvetone.tv/docs/operating-systems)     [ Vaandroid ](https://www.twelvetone.tv/docs/operating-systems/vaandroid)     [ Vaandroid Developer Guide ](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide)     [ Tutorials ](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials)      Creating A Vaandroid Plugin    

# Creating A Vaandroid Plugin

This page consists of a list of the things necessary to create a plugin with links to how to do so

[Vaandroid.xml](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/project-anatomy/vaandroid-xml)

- Place file in root directory

[https://developer.android.com/guide/topics/manifest/manifest-intro.html|AndroidManifest.xml](https://developer.android.com/guide/topics/manifest/manifest-intro.html%7CAndroidManifest.xml)

- Follow the format of on Androids website
- Place file in root directory

pom.xml

res directory - link to android website

src directory

- Include the following the activities folder. These are the files necessary to register your plugin 
    - [PluginImpl](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/vaandroid-architecture/pluginimpl)
    - Template Activity

Register the plugin

DS - \[https://www.ibm.com/support/knowledgecenter/SSEQTP\_8.5.5/com.ibm.websphere.wlp.core.doc/ae/twlp\_declare\_services\_ds.html|Declarative Services\]

Res helper files

- In the res dir, files such as the following (strings.xml could be helpful)

strings.xml

```
<resources>
    <string name="app_name">Your app name</string>
</resources>

```

Launcher activities

# Start a new Maven project

\*Give the project a groupId

- tv.twelvetone.vaandroid.plugin 
    - Give the project an artifactId. This tutorial uses the name 'tutorial\_1'
- tv.twelvetone.vaandroid.plugin.tutorial\_1 
    - Name the project the same thing as above

# Creating new directories and adding files

- Create a new directory inside src/main/java \*Name it the same as your artifactId from above
- Create 3 classes inside this directory 
    - Name the classes MainActivity, and PluginImpl
- Create a directory named 'activities' on this level
- Move MainActivity into this class

# Edit the 2 files

- Main Activity
- [PluginImpl](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/vaandroid-architecture/pluginimpl)

# Edit the pom file

- Here's an example pom.xml

# Add a file called [Vaandroid.xml](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/project-anatomy/vaandroid-xml)

- Link to the manifest, resources directory, and others as fit
- Define permissions

# Go to modules in the project structure, add an android module

- Select the top element, and change the sdk to the android sdk
- Attention IntelliJ Users: make sure you deselect 'Generated Sources' from the Generated Sources Tab, as it is not necessary

# Add a directory named res

- Add the following subdirectories 
    - drawable, layout, menu, and value
- In layout, add the following file 
    - activity\_template.xml
- In value, add the following files 
    - strings.xml
    - Replace the text 'Your app name' with your application name
    - dimens.xml, styles.xml

# Add the [https://developer.android.com/guide/topics/manifest/manifest-intro.html|AndroidManifest.xml](https://developer.android.com/guide/topics/manifest/manifest-intro.html%7CAndroidManifest.xml) file

- Make sure the package name has your project name in it
- Make sure the activity name is correct

 [ ](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials/creating-a-vaandroid-application-from-scratch) [](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials/creating-a-runtime-container)

---

## Navigation

- Parent: [Tutorials](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials.md)
- Previous: [Creating A Vaandroid Application From Scratch](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials/creating-a-vaandroid-application-from-scratch.md)
- Next: [Creating A Runtime Container](https://www.twelvetone.tv/docs/operating-systems/vaandroid/vaandroid-developer-guide/tutorials/creating-a-runtime-container.md)
