Thunkable Docs
Build an AppDrag and Drop DocsSnap to Place DocsAcademy
Drag and Drop
Drag and Drop
  • What is Thunkable?
  • 🗺️Getting Started
    • Getting Started Guide
    • Keyboard Shortcuts
    • Undo Redo
    • Thunkable Account
      • Account Management
    • Preview and Test your App
    • Versioning
    • Data Sources
      • Google Sheets Data Source
      • Airtable Data Source
      • Webflow Data Source
      • Local Table Data Source
    • Project Collaboration
      • Organizations
    • 🎓Sample Apps & Tutorials
      • Thunkable Community Forums
      • Sample Apps
      • Video Tutorials
        • Thunkable Live App
          • How to Test and Troubleshoot with Thunkable Live App
        • Data Source Tutorials
          • Connecting to Data Sources
            • Google Sheets
            • Local Table
          • Create Data in a Thunkable Data Source
          • Read Data in a Thunkable Data Source
          • Update Data in a Thunkable Data Source
          • Delete Data in a Thunkable Data Source
        • User Auth & Management
          • Firebase
            • User Sign-Up, Sign-In, and Auth
            • User Sign Out and Password Reset
          • Google
            • User Sign-Up, Sign-In, Sign-Out, and Auth
          • Apple
            • User Sign-Up, Sign-In, Sign-Out, and Auth
        • Projects
          • How to Save Versions of Your Thunkable Project
          • How to Copy and Customize Public or Sample Thunkable Projects
        • User Interface & Design
          • Screens
            • Save and Reuse Thunkable Screens
            • Change Thunkable Screens with a Button Click
            • Create Scrollable Screens in Your Thunkable App
          • Navigators
            • How to Use the Thunkable Stack Navigator
            • How to Use Thunkable Top and Bottom Tab Navigators
            • How to Use the Thunkable Drawer Navigator
            • Combine Figma Frames with Thunkable Navigators
          • Components
            • How to Use the Visibility Property to Create Modals in Thunkable
          • Data Visualization
            • Customize a Data Viewer
          • Text
            • Implement Text Input Validation
        • Alerts & Notifications
          • Display Alert Messages in Your Thunkable App
          • How to Create Three-Button Alert Messages
        • Files
          • Cloudinary
            • Store and Access Cloudinary Files in Your Thunkable App
        • Camera
          • How to Use the Device’s Camera
          • How to Use the Device’s Video Camera
          • Use the Device’s Camera as a QR or Barcode Scanner
        • Realtime Databases
          • Firebase
            • How to Read Data in a Firebase Realtime Database
            • How to Update Data in a Firebase Realtime Database
        • Advanced Blocks
          • Connect Your Thunkable App to a Web API
        • Thunkable Academy
          • Building Your First Thunkable App
            • Getting Started with Thunkable
            • How to Design a Thunkable App
            • How to Connect a Thunkable App to a Data Source
            • How to Make A Thunkable App Interactive with Blocks
          • Thunkable No Code App Creation Basics
            • Thunkable UI Components and App Features
            • Understanding Thunkable's Drag and Drop Block Builder
            • Design, Develop, Debug, and Deploy Your App
        • Hour of Code
          • 2021 - Build an Informational App
          • 2022 - Build a Scavenger Hunt App
          • 2023 - Build a Translator and Text-to-Speech App
        • App Building
          • How to Build a Translation App in Thunkable
          • How to Create an Image Recognition App with Thunkable
          • How to Create a Text-to-Speech App in Thunkable
  • 🎨App Design
    • User Interface (UI) Components
      • Basic Components
        • Button Component
        • Label Component
        • Rich Text Component
        • Image Component
        • Text Input Component
        • Layout Component
        • Group Component
      • Data Components
        • Simple List Component
        • Data Viewer Components
          • Data Viewer List Component
          • Data Viewer Grid Component
          • Custom Data Viewer
      • Input Components
        • Switch Component
        • Slider Component
        • Checkbox Component
        • Date Input Component
        • Time Input Component
      • Media Components
        • Animation Component
        • Video Component
        • Loading Icon Component
      • Embed Components
        • Web Viewer Component
        • Map Component
        • Canvas Component
        • PDF Reader Component
        • Rating Component
      • Modules
        • Introduction
        • User Guide
      • Generative AI
    • Screens
      • Save and Reuse Screens
      • Improve Thunkable Load Time
    • Navigators
      • Top Tab Navigator
      • Bottom Tab Navigator
      • Drawer Navigator
      • Stack Navigator
    • Figma Integration
  • 🛠️Blocks
    • Thunkable Blocks Overview
    • Core Blocks
      • Control Blocks
      • Logic Blocks
      • Math Blocks
      • Text Blocks
      • Lists Blocks
      • Color Blocks
      • Device Blocks
      • Objects Blocks
      • Variables Overview
        • Connect a Firebase Realtime Database
        • Variables Blocks
      • Functions Blocks
    • App Features Blocks
      • Speech Blocks
      • Sound Blocks
      • Share Blocks
      • Camera Blocks
      • Files Blocks
      • Sign In Blocks
        • User Sign Up, Sign In, and Authentication with Firebase
        • User Sign Up, Sign In, and Authentication with Google
        • User Sign Up, Sign In, and Authentication with Apple
      • Location Blocks
      • Push Notification Blocks
      • In-App Purchase Blocks (with RevenueCat)
      • Data Sources Blocks
      • Alerts Blocks
      • Timer Blocks
      • Sensors Blocks
        • Gyroscope
        • Magnetometer
        • Accelerometer
        • Location Sensor
      • Ads by AdMob
    • Advanced Blocks
      • Web APIs Blocks
        • CORS Policy
        • 🆓No Auth APIs
          • Update Data in a Data Source
          • CRUD Operations
          • Setting Headers
        • 📊Charting APIs
          • Create a chart template
          • Charting in Thunkable
      • Bluetooth Low Energy Blocks
      • OpenAI Services ChatGPT Integration Blocks
      • "Any Component" Blocks
      • JavaScript Web Bridge
  • ⚙️Settings
    • App Settings
      • Tablet View
    • Assets
    • Cloud Variable Viewer
    • Manage your Projects
      • My Projects Page
      • Thunkable Projects
      • Duplicate Project
      • Share Your App
      • Download Your App
        • Download Your App on iOS
        • Download Your App on Android
      • Add to Home Screen
      • Managing Project Storage
      • App Data Privacy
      • Delete Project
  • 📱Publishing
    • Overview
    • Publish to the Apple App Store
      • User Guide
      • Troubleshooting
      • Review Process
      • Tracking Usage Description
    • Publish to Google Play Store
      • User Guide
      • Troubleshooting
      • Review Process
    • Publish as a Web App
      • User Guide
      • Custom Domains
      • Troubleshooting
    • Testing
      • Testing on iOS via TestFlight
      • Testing on Android
    • Troubleshooting
      • Publishing Checklist
      • Generate Screenshots
  • 🎮Gaming
    • Gaming Overview
      • Canvas Label
      • Sprites
      • Sprite Gallery
    • Gaming Blocks
      • Events
      • Motion
      • Looks
      • Direction
      • Sensing
      • Add & Remove
      • Stage
  • 🗃️Additional Resources
    • Release Notes
      • Release Notes 2024
      • Release Notes 2023
    • Troubleshooting
      • Can't Sign in to Thunkable?
      • FAQs
    • Minimum Requirements
    • Bugs and Product Feedback
    • App Services and Emulators
Powered by GitBook
On this page
  • Overview
  • Register Your App with Apple
  • Register Devices
  • Register a Single Device
  • Register Multiple Devices
  • Locating Your Device’s UDID
  • Create an iOS Distribution Certificate
  • Create an Ad Hoc Provisioning Profile
  • Review App Information
  • Download iOS App
  • Troubleshooting
  • App Cannot be Built

Was this helpful?

Export as PDF
  1. Settings
  2. Manage your Projects
  3. Download Your App

Download Your App on iOS

PreviousDownload Your AppNextDownload Your App on Android

Last updated 1 year ago

Was this helpful?

Overview

Downloading your app to an iOS device requires an Apple Developer account. The process involves actions in your Thunkable project and your Apple Developer account. We recommend having each open in a separate browser tab so you can easily navigate between them.

Please note that while the images and instructions from the Apple Developer account are accurate at the time of this doc’s publishing, they may change slightly over time.

Register Your App with Apple

To avoid download errors, we recommend to your project before downloading.

  1. Within your Thunkable project, click the Publish and Download icon.

  2. Select Download iOS.

    The number of monthly downloads you are allowed varies per . This number resets when your next billing cycle begins

  3. Enter the Apple ID associated with your Apple Developer account. Don't yet have an Apple Developer account? You can learn more and sign up for one here: .

  4. Click Next.

  5. Copy the project’s auto-populated Bundle ID. You’ll need this in the next step.

  6. Follow these instructions to register your app in your Apple Developer account: .

  7. Copy the App ID Prefix (Team ID) in your Apple Developer account.

  8. Return to your Thunkable project and paste the App ID Prefix (Team ID) into the provided field.

  9. Click Next.

Register Devices

You must specify registered devices in your Apple Developer account to create a provisioning profile for app testing and ad hoc distribution. This process is necessary because iOS devices have security mechanisms in place to ensure that only authorized apps are installed and run on them.

Removing a registered device from your account will continue to count against your device limit. At the start of your new membership year, Account Holders and Admins can remove listed devices and restore the available device count.

Register a Single Device

To register a single device to your Apple Developer account:

  1. Under the Certificates, IDs & Profiles heading, select Devices.

  2. Click the blue + icon to add a new device to your account.

  3. Ensure the iOS platform is selected.

  4. Give your device a name.

  5. Click Continue.

Register Multiple Devices

To register multiple devices to your Apple Developer account:

  1. Under the Certificates, IDs & Profiles heading, select Devices.

  2. Click the blue + icon to add a new device to your account.

  3. Under Register Multiple Devices, click Download sample files.

  4. Create your file containing the devices you wish to register. A maximum of 100 devices can be included in your file, and it may take a few minutes to process.

  5. Click Choose File.

  6. From your computer, select the file you created in step five above.

  7. Click Open.

  8. Click Continue.

Locating Your Device’s UDID

Every iPhone, iPod touch and iPad has a unique identifier number associated with it, known as a UDID (Unique Device ID). This is either a 40-character alphanumeric ID on older devices or a 24-character ID (excluding hyphen) on newer devices, consisting of eight digits, a hyphen, and 16 alphanumeric characters.

Create an iOS Distribution Certificate

Create an Ad Hoc Provisioning Profile

Apple requires a provisioning profile to install an app on a device. You need to create and download an Ad Hoc provisioning profile in your Apple Developer account and then return to Thunkable to upload this file.

  1. Under the Certificates, IDs & Profiles heading, select Profiles.

  2. Click the blue + icon to add a new certificate to your account.

  3. Under the Distribution heading, select Ad Hoc.

  4. Click Continue.

  5. Select the App ID for the app you want to publish.

  6. Click Continue.

  7. Select the certificate you wish to include in this provisioning profile.

  8. Click Continue.

  9. Select the device(s) you wish to include in this provisioning profile.

  10. Click Continue

  11. Name your provisioning profile.

  12. Click Generate.

  13. Click Download to save the provisioning profile to your computer.

  14. Return to Thunkable.

  15. Click Upload Ad Hoc Provisioning Profile.

  16. From your computer, select the .mobileprovision file you just downloaded.

  17. Click Next.

Review App Information

  1. Click Submit.

  2. Congratulations! You will receive an email from Thunkable when your iOS app is available to download. This may take up to an hour.

Download iOS App

When you receive the email with the download link:

  1. Open the email on your iPhone or iPad.

  2. Click the Download App Project button.

  3. Select your preferred browser.

  4. Click Download.

  5. In the pop-up prompt, click Install.

  6. Open your iOS device's Settings.

  7. Navigate to Privacy & Security.

  8. Click Developer Mode.

  9. Toggle the Developer Mode switch to true.

  10. Click Restart.

  11. Once your device has restarted, click Turn On to enable Developer Mode.

  12. Enter your device’s passcode.

  13. Click on your app's icon to test the app.

If there are issues with your app build, you will receive an email outlining what you need to fix.

Troubleshooting

App Cannot be Built

If you receive an email saying that your app cannot be built, it may be the result of one of the following:

  • Ensure your app icon image:

    • does not have the same name as another project asset

    • is an image file

    • does not contain transparent pixels. Apple does not allow icons with transparent colors.

  • Ensure your App (Bundle) ID adheres to the following:

    • It is a series of short strings of text separated by periods (e.g. com.thunkable.creator.app).

    • It is all lowercase.

    • It begins with a letter.

  • Ensure your asset names only contain Roman alphabet characters (with no accents) and numbers.

    • Examples of asset names that could cause errors: image(1).jpg, imãge.jpg

    • Examples of asset names that won't cause errors: image1.jpg, image.jpg

  • We are having trouble with our build servers. Please try again in 30 minutes.


Open your.

Provide the device’s UDID. See here for instructions for locating your device's UDID: .

Open your.

Please see here for instructions on locating your device’s UDID: .

Follow these instructions to create a distribution certificate: .

Open your.

Review your app’s information in the modal provided. Detailed instructions are available here: .

Have feedback on this doc? Please take a moment to share your feedback here: . Your valuable insights will help us improve and better serve you in the future.

⚙️
Apple Developer account page
Apple Developer account page
bjango: Finding your iPhone, iPod touch or iPad unique ID (UDID)
Create an iOS Distribution Certificate
Apple Developer account page
Publish iOS: App Info
Thunkable Docs Feedback
Locating Your Device’s UDID
adding an App Icon and Name
Thunkable plan
Create Your Apple ID
Register Your App with Apple