App Inventor Extensions


Extensions Directory

This page lists all available extensions for App Inventor and its distributions like , WxBit Chinese version, Niotron and Androidbuilder


See the App Inventor Extensions document about how to use an App Inventor Extension. For extension developers, also the document App Inventor Annotations, Adding Helper Blocks to a Component and How to add a Dropdown Block to a Component might be helpful.

For questions about extensions or bug reports, please start a new thread in the App Inventor Extensions forum. For feature requests please contact me by email. To be a sponsor of a new method already is possible starting from only 10 USD! With your contribution you will help the complete App Inventor community. Thank you.

How to avoid runtime errors with the companion app

  1. After importing an extension, please restart the companion app.
  2. If you like to use an extension on a different screen, in Screen1 additionally drag the extension into the working area.

While starting the companion app, all necessary assets and also the imported extensions of your project will be copied to your device. So in case the no such class error shows up, the extension code to run the extension is not available on your device. Without that code the companion app is not able to execute methods from the extension.

In case restarting the companion app does not work for you after trying several times, then as it looks like the only way for you to test you app will be after building it using the apk file.


Available Extensions at Pura Vida Apps


Account Manager Extension to get some information about the user

AES Encryption Extension to encrypt/decrypt strings

Alarm Extension to set an alarm or a timer programmatically. Also a repeating alarm is now possible.


Alarm Manager Extension with Notification or Autostart to send a notification at a given time only once, hourly or daily. After clicking the notification your app will be started.You can define a start text, which will be passed to your app in method 'get plain start text' and trigger some action after your app is started. Also of course works if your app is not running. You also can define several alarms, just use a different id for each alarm.

Barometer Sensor Extension to get the current pressure and altitude

Battery Manager Extension to provide battery information

Classic Bluetooth Extension to enable/disable bluetooth without user interaction, scan, pair/unpair devices

Camera Extension to take pictures programmatically without user interaction.

Clipboard Extension to copy/paste text to/from the clipboard

Exif Extension to read and write Exif tags in a JPEG file or a RAW image file.

File Extension is an extension related to the File component

Flashlight Extension to turn on/off the flashlight.

FTP Extension to upload or download files to/from your server via FTP

Geofence Extension to trigger enter, exit, or dwell events. Also of course works if your app is not running.

Headset Plug Status Extension to get the headset plug status.

Hotspot Extension (DEPRECATED) to toggle wifi hotspot on or off.

Image Extension to do some basic image manipulation.

Image Metadata Extension to read the metadata of an image file

Light Sensor Extension to get the illuminance

Location Service Extension. This extension is able to run in the background while your app is closed and stores location data (latitude, longitude and optionally current datetime, altitude, accuracy, speed, current address and provider) in TinyDB.
Also a background web functionality is available
which can be used to send the location data to a web service of your choice using a POST request. This could be used for example to store the location data in a MySQL database or to send an email after a location change was detected while the app is not running.
A notifier will be displayed while the location service is running in the background.

Magnetic Sensor Extension to get magnetic X, Y, Z and absolute field strength

Mail Extension to send emails via SMTP

Math Extension to parse a mathematical expression

Simple Notification Extension (DEPRECATED) to send a notification

Notification Listener Extension to listen to all notifications of your device. This service runs in the backround also if your app is closed. It will listen to all notifications and stores them in TinyDB (aka shared preferences).

Package manager Extension to get information about installed apps and to be able to launch an installed app using a package name.

Phone State Listener Extension to listen to phone state changes of your device. Also of course works if your app is not running and also survives a reboot of the device.

Pdf Extension to open pdf files and render a specific page (without using an external app).

Settings Extension to get/set the brightness of the display and get/set/play a ringtone

Take Screenshot Extension to take a screenshot

Screenshot Service Extension to capture a screenshot while the app is not running.

Sharing Extension offers the functionality of the Sharing component with some modifications

SMS Receiver Extension to receive SMS while your app is not running and start your app or display a notification.

Speech Recognizer Extension offers the functionality of the Speech Recognizer component and some additional blocks

SQlite Extension to access the local SQlite database

Telephony Manager Extension to get some information from the telephony manager.

Ambient Temperature Sensor Extension (DEPRECATED) to get the ambient temperature in Celcius.

Textbox Extension to get/set cursor position, to highlight text, to have an event, which fires after text changed

Texting Extension, read all SMS from the inbox, draft and sent folders.

Tools Extension, a collection of several tools, which do not need additional permissions.

WiFi Extension offers some useful blocks to use in a wireless lan

Zip Extension (DEPRECATED) to zip/unzip files.

For questions about App Inventor,
please ask in the App Inventor community.Thank you.

Extensions Database

All available extensions for App Inventor, Kodular, Niotron and other distributions are now available as database for easier querying and filtering. Thank you very much @TimAI2 for all your work to set up the database and bring the data into its current form. Link to the old extensions directory (as of May 2026).


Creative Commons License
This work by Pura Vida Apps is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License
with attribution (name=Pura Vida Apps and link to the source site) required.


Home | Snippets | Tutorials | Extensions | Links | Search | Privacy Policy | Contact