# Troubleshooting

Here are some of the most common issues that our users are running into:

## Live Test

**Issue:** You see a blank / white screen when you live test (even if there are items in your app)

* If you have a Navigator as the first item in your tree, make sure your screen is dropped within it
* You have unconnected blocks
* You have an event triggered by a Screen.Start which may be causing the screen to crash
* Your app and desktop may not be logged into the same account

**Issue:** Image is not showing up on your phone

* The height or width of the image may be set to 'Fit contents'

## Download Android

**Issue:** Trouble downloading AAB and APK files from Google Chrome

* The Google Chrome browser blocks downloads for your safety. If you open the email with a download link for your APK or AAB file in Google Chrome, you may not be able to download your file. \
  You can try one of these options:
  1. Open the email in another browser, like Firefox or Safari, and download the file.
  2. Change your Google Chrome settings to allow you to download files. \
     [You can find instructions to do this here. ](https://www.businessinsider.com/how-to-stop-chrome-from-blocking-downloads)\
     Please note that changing your browser security settings can make you more vulnerable as you use the web, and Google Chrome does not recommend disabling this setting.

**Issue:** Your app is inaccessible and an error screen is displayed saying your app is unavailable

* It was a Testing Download and has expired after 72 hours.
* It was a Distribution Download and you switched to the Free plan.
* It was a Distribution Download and your App (Bundle) ID doesn't match your Active Bundle ID. You may need to enable it in your Account Settings before the app can be used.<br>

## Publish iOS

**Issue:** You don't see your app uploaded to App Store Connect

* **Icons**. Ensure your icon is 192 x 192 px and has no transparencies.&#x20;
* **Membership**. You require an active [Apple Developer Program Membership](https://developer.apple.com/programs/) to publish to the App Store.&#x20;
* **Certificates**. If you have an existing Apple Developer Program account with 2 iOS certificates, you'll have to revoke one. Apple only allows developers to have 2 iOS certificates at a time, and Thunkable creates one when it publishes to your account
* **Provisioning profile**. After you revoke your certificate, it is possible that one or more of your provisioning profiles will become inactive. To publish successfully, you need to delete any inactive provisioning profiles.
* **Login**. Ensure your Apple ID and password are entered correctly. Thunkable cannot access your credentials, so save them somewhere safe.
* **Apple ID and privacy terms**. You must accept Apple's new Apple ID and privacy terms.

### Android

**Issue:** You cannot update an existing app on the Google Play Store

* If you want to update an existing app on the Google Play Store, your app will need to have:&#x20;
  * the same package name
  * a higher or incremented version number
  * the same keystore
* The first two are easily editable in your App Settings, but the keystore cannot be imported/exported.&#x20;
* Copied apps within an account ([Duplicate Your Project](/settings/manage-your-projects/make-copy.md)) will keep the same keystore as the original app. Apps copied from a [Share](/settings/manage-your-projects/share-1.md#share-a-fully-editable-copy-of-your-app-project) link will not have the same Keystore.&#x20;

## Publish iOS and Android

**Issue:** Your app on iOS and Android is inaccessible and your end user sees an error screen saying your app is unavailable.

* You switched to the Free plan.
* Your App (Bundle) ID doesn't match your Active Bundle ID and you may need to enable it in your Account Settings before the app can be used.

## Data Sources

### How can I reset my Google Sheets connection in Thunkable?

#### A. Reset from Thunkable

1. Login to your Thunkable account.
2. On your Projects Page, click **Data Sources** in the left sidebar.
3. Click the **trash can icon** to delete the Google Sheets data source.

   <div align="left"><figure><img src="/files/l5ntQVKVpNnAuWIZAk38" alt=""><figcaption></figcaption></figure></div>

#### B. Reset from Google

If you are having difficulties connecting to your Google Sheets from Thunkable, you may need to reset your Google Sheets connection.

1. Navigate to <https://myaccount.google.com/security>
2. Scroll to the **Your connections to third-party apps & services** section.
3. Click the **Thunkable** connection.&#x20;
4. Click **See details** in the **Thunkable has some access to your Google Account section**.<br>

   <figure><img src="/files/5XFlA1zx5sVp2RWMVCXt" alt=""><figcaption></figcaption></figure>
5. Click **Remove Access**.<br>

   <figure><img src="/files/0vUNUrMz0rmT1f4mCWGE" alt=""><figcaption></figcaption></figure>
6. Return to Thunkable and re-connect to your Google Sheets account.

## Design

If you can't see your components and your screens don't load, perform a hard reload.

**Google Chrome (Mac)**

1. Hold down the Cmd ⌘ and Shift keys and press R.&#x20;
2. Alternatively, you can open the Chrome Dev Tools by pressing Cmd ⌘ + Opt + I. Once the Chrome Dev Tools are open, right-click on the browser Reload button and choose Empty Cache and Hard Reload.

**Google Chrome (Windows/Linux)**

1. Open the Chrome Dev Tools by pressing F12. Once the Chrome Dev Tools are open, right-click on the browser Reload button and choose Empty Cache and Hard Reload.&#x20;
2. Alternatively, hold down the Ctrl key and click the Reload button.&#x20;
3. Alternatively, hold down the Ctrl key and press F5.

**Firefox (Windows/Linux)**

1. Hold down the Ctrl and F5 keys at the same time.&#x20;
2. Alternatively, you can clear the cache and perform a hard reload by going to History > Clear Recent History and selecting Cache and Everything from the drop-down menus. Then, click Clear Now.

**Firefox (Mac)**

1. Hold down the Cmd ⌘ and Shift keys and press R.&#x20;
2. Alternatively, you can clear the cache and perform a hard reload by going to History > Clear Recent History and selecting Cache and Everything from the drop-down menus. Then, click Clear Now.

**Microsoft Edge (Windows/Linux)**

1. Hold down the Ctrl and F5 keys at the same time.&#x20;
2. Alternatively, you can clear the cache and perform a hard reload by going to Settings > Privacy, search, and services > Clear browsing data and selecting Cached images and files and Everything else. Then, click Clear now.

**Microsoft Edge (Mac)**

1. Hold down the Cmd ⌘ and Shift keys and press R.&#x20;
2. Alternatively, you can clear the cache and perform a hard reload by going to Settings > Privacy > Clear browsing data and selecting Cached images and files and Everything else. Then, click Clear now.

**Safari (Mac)**

1. Go to Safari > Empty Caches.&#x20;
2. Alternatively, hold down the Option and Cmd ⌘ keys and press E.&#x20;
3. To refresh the page, click the Refresh button on the address bar or press Cmd + R.

**Internet Explorer (Windows)**

1. Hold down the Ctrl key and click the Refresh button.&#x20;
2. Alternatively, hold down the Ctrl key and press F5.&#x20;
3. To clear the cache, go to Tools > Internet Options > General > Browsing history and click Delete. Then, select the Temporary Internet files and website files checkbox and click Delete.

## Blocks

If your blocks don't work here are some common reasons:

**List Blocks**

Using a variable that is a list:

<div align="left"><figure><img src="/files/8Flugosz5uJNezc3Er99" alt="" width="557"><figcaption></figcaption></figure></div>

Instead, try this:

<div align="left"><figure><img src="/files/Gm6Fanwc02WN8Syln6kS" alt="" width="459"><figcaption></figcaption></figure></div>

#### Variable Blocks <a href="#comparison-blocks" id="comparison-blocks"></a>

Setting a label's text from a variable:

<div align="left"><figure><img src="/files/LbQWfBFDGoBq7UQhuWbd" alt="" width="563"><figcaption></figcaption></figure></div>

Instead, try this:

<div align="left"><figure><img src="/files/BGgfqDUC0bnyF5czlOkW" alt="" width="450"><figcaption></figcaption></figure></div>

**IAP Blocks**

Setting in app purchase package name:

<div align="left"><figure><img src="/files/ZslpzSmUHXakgXqfH5NA" alt="" width="548"><figcaption></figcaption></figure></div>

Instead, try this:

<div align="left"><figure><img src="/files/Ng0XECj0dRNYkTKSwqUh" alt="" width="563"><figcaption></figcaption></figure></div>

**Data Source Blocks**

Filtering based on multiple conditions:

<div align="left"><figure><img src="/files/8wDNy8Fvw1kOzz44M7jc" alt="" width="421"><figcaption></figcaption></figure></div>

Instead, try this:&#x20;

<div align="left"><figure><img src="/files/SAOYqU1YXb2dBtyx3n0n" alt="" width="435"><figcaption></figcaption></figure></div>

{% hint style="success" %}
**Have feedback on this doc?** Please take a moment to share your feedback here: [Thunkable Docs Feedback](https://docs.google.com/forms/d/e/1FAIpQLSfCwn5L2xyla-LSLZX0DSWFcFeJ43qp-r1tELCacuVS2zduLA/viewform?usp=sf_link). Your valuable insights will help us improve and better serve you in the future.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.thunkable.com/additional-resources/troubleshooting.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
