diff --git a/docs/troubleshooting/assets/20250430121119193097.png b/docs/troubleshooting/assets/20250430121119193097.png new file mode 100644 index 00000000..d5755690 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121119193097.png differ diff --git a/docs/troubleshooting/assets/20250430121119493481.png b/docs/troubleshooting/assets/20250430121119493481.png new file mode 100644 index 00000000..8072147d Binary files /dev/null and b/docs/troubleshooting/assets/20250430121119493481.png differ diff --git a/docs/troubleshooting/assets/20250430121119754142.png b/docs/troubleshooting/assets/20250430121119754142.png new file mode 100644 index 00000000..b064a715 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121119754142.png differ diff --git a/docs/troubleshooting/assets/20250430121120027064.png b/docs/troubleshooting/assets/20250430121120027064.png new file mode 100644 index 00000000..7132fa1c Binary files /dev/null and b/docs/troubleshooting/assets/20250430121120027064.png differ diff --git a/docs/troubleshooting/assets/20250430121120324713.png b/docs/troubleshooting/assets/20250430121120324713.png new file mode 100644 index 00000000..d68a75a5 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121120324713.png differ diff --git a/docs/troubleshooting/assets/20250430121120614698.png b/docs/troubleshooting/assets/20250430121120614698.png new file mode 100644 index 00000000..d9fdf1de Binary files /dev/null and b/docs/troubleshooting/assets/20250430121120614698.png differ diff --git a/docs/troubleshooting/assets/20250430121120833797.png b/docs/troubleshooting/assets/20250430121120833797.png new file mode 100644 index 00000000..c42df079 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121120833797.png differ diff --git a/docs/troubleshooting/assets/20250430121121100378.png b/docs/troubleshooting/assets/20250430121121100378.png new file mode 100644 index 00000000..39e7b953 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121121100378.png differ diff --git a/docs/troubleshooting/assets/20250430121121294657.png b/docs/troubleshooting/assets/20250430121121294657.png new file mode 100644 index 00000000..a24caffb Binary files /dev/null and b/docs/troubleshooting/assets/20250430121121294657.png differ diff --git a/docs/troubleshooting/assets/20250430121121827511.png b/docs/troubleshooting/assets/20250430121121827511.png new file mode 100644 index 00000000..7132fa1c Binary files /dev/null and b/docs/troubleshooting/assets/20250430121121827511.png differ diff --git a/docs/troubleshooting/assets/20250430121122068343.png b/docs/troubleshooting/assets/20250430121122068343.png new file mode 100644 index 00000000..8dc53c26 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121122068343.png differ diff --git a/docs/troubleshooting/assets/20250430121122307123.png b/docs/troubleshooting/assets/20250430121122307123.png new file mode 100644 index 00000000..429a1df2 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121122307123.png differ diff --git a/docs/troubleshooting/assets/20250430121122597517.png b/docs/troubleshooting/assets/20250430121122597517.png new file mode 100644 index 00000000..76743a5e Binary files /dev/null and b/docs/troubleshooting/assets/20250430121122597517.png differ diff --git a/docs/troubleshooting/assets/20250430121122925141.png b/docs/troubleshooting/assets/20250430121122925141.png new file mode 100644 index 00000000..3ada42a9 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121122925141.png differ diff --git a/docs/troubleshooting/assets/20250430121123230941.png b/docs/troubleshooting/assets/20250430121123230941.png new file mode 100644 index 00000000..b21bb9a4 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121123230941.png differ diff --git a/docs/troubleshooting/assets/20250430121123502329.png b/docs/troubleshooting/assets/20250430121123502329.png new file mode 100644 index 00000000..b7e70ffe Binary files /dev/null and b/docs/troubleshooting/assets/20250430121123502329.png differ diff --git a/docs/troubleshooting/assets/20250430121137152872.png b/docs/troubleshooting/assets/20250430121137152872.png new file mode 100644 index 00000000..883f05b8 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121137152872.png differ diff --git a/docs/troubleshooting/assets/20250430121137421780.png b/docs/troubleshooting/assets/20250430121137421780.png new file mode 100644 index 00000000..0cc3051a Binary files /dev/null and b/docs/troubleshooting/assets/20250430121137421780.png differ diff --git a/docs/troubleshooting/assets/20250430121145711998.png b/docs/troubleshooting/assets/20250430121145711998.png new file mode 100644 index 00000000..7132fa1c Binary files /dev/null and b/docs/troubleshooting/assets/20250430121145711998.png differ diff --git a/docs/troubleshooting/assets/20250430121145949036.png b/docs/troubleshooting/assets/20250430121145949036.png new file mode 100644 index 00000000..8dc53c26 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121145949036.png differ diff --git a/docs/troubleshooting/assets/20250430121146161973.png b/docs/troubleshooting/assets/20250430121146161973.png new file mode 100644 index 00000000..429a1df2 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121146161973.png differ diff --git a/docs/troubleshooting/assets/20250430121146400049.png b/docs/troubleshooting/assets/20250430121146400049.png new file mode 100644 index 00000000..76743a5e Binary files /dev/null and b/docs/troubleshooting/assets/20250430121146400049.png differ diff --git a/docs/troubleshooting/assets/20250430121146604033.png b/docs/troubleshooting/assets/20250430121146604033.png new file mode 100644 index 00000000..3ada42a9 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121146604033.png differ diff --git a/docs/troubleshooting/assets/20250430121146854018.png b/docs/troubleshooting/assets/20250430121146854018.png new file mode 100644 index 00000000..b21bb9a4 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121146854018.png differ diff --git a/docs/troubleshooting/assets/20250430121147068781.png b/docs/troubleshooting/assets/20250430121147068781.png new file mode 100644 index 00000000..b7e70ffe Binary files /dev/null and b/docs/troubleshooting/assets/20250430121147068781.png differ diff --git a/docs/troubleshooting/assets/20250430121147385978.png b/docs/troubleshooting/assets/20250430121147385978.png new file mode 100644 index 00000000..e19acd1a Binary files /dev/null and b/docs/troubleshooting/assets/20250430121147385978.png differ diff --git a/docs/troubleshooting/assets/20250430121147683388.png b/docs/troubleshooting/assets/20250430121147683388.png new file mode 100644 index 00000000..ed4812e9 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121147683388.png differ diff --git a/docs/troubleshooting/assets/20250430121148301014.png b/docs/troubleshooting/assets/20250430121148301014.png new file mode 100644 index 00000000..a1659a6a Binary files /dev/null and b/docs/troubleshooting/assets/20250430121148301014.png differ diff --git a/docs/troubleshooting/assets/20250430121148811672.png b/docs/troubleshooting/assets/20250430121148811672.png new file mode 100644 index 00000000..cd6e44e7 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121148811672.png differ diff --git a/docs/troubleshooting/assets/20250430121346608131.png b/docs/troubleshooting/assets/20250430121346608131.png new file mode 100644 index 00000000..48705827 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121346608131.png differ diff --git a/docs/troubleshooting/assets/20250430121346890273.png b/docs/troubleshooting/assets/20250430121346890273.png new file mode 100644 index 00000000..b38450fc Binary files /dev/null and b/docs/troubleshooting/assets/20250430121346890273.png differ diff --git a/docs/troubleshooting/assets/20250430121347217644.png b/docs/troubleshooting/assets/20250430121347217644.png new file mode 100644 index 00000000..e738ccc3 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121347217644.png differ diff --git a/docs/troubleshooting/assets/20250430121347593094.png b/docs/troubleshooting/assets/20250430121347593094.png new file mode 100644 index 00000000..e7b27b96 Binary files /dev/null and b/docs/troubleshooting/assets/20250430121347593094.png differ diff --git a/docs/troubleshooting/assets/20250430121347925706.png b/docs/troubleshooting/assets/20250430121347925706.png new file mode 100644 index 00000000..a52221bb Binary files /dev/null and b/docs/troubleshooting/assets/20250430121347925706.png differ diff --git a/docs/troubleshooting/assets/20250430121348293622.gif b/docs/troubleshooting/assets/20250430121348293622.gif new file mode 100644 index 00000000..3e6daeed Binary files /dev/null and b/docs/troubleshooting/assets/20250430121348293622.gif differ diff --git a/docs/troubleshooting/deployment/_category_.json b/docs/troubleshooting/deployment/_category_.json new file mode 100644 index 00000000..a068a3de --- /dev/null +++ b/docs/troubleshooting/deployment/_category_.json @@ -0,0 +1,3 @@ +{ + "label": "Deployment" +} \ No newline at end of file diff --git a/docs/troubleshooting/deployment/codemagic_deployment_error_identification.md b/docs/troubleshooting/deployment/codemagic_deployment_error_identification.md new file mode 100644 index 00000000..0eecae46 --- /dev/null +++ b/docs/troubleshooting/deployment/codemagic_deployment_error_identification.md @@ -0,0 +1,39 @@ +--- +keywords: ['deployment', 'error', 'identification'] +slug: /codemagic-deployment-error-identification +title: Codemagic Deployment Error Identification +--- +# Codemagic Deployment Error Identification + +## How to Identify Your Codemagic Error + +Follow the steps below to identify your codemagic error: + +- Press **Cmd/Ctrl + k**, type **"deployment"** and hit enter. It will take you to the deployment page.​ + + ![](../assets/20250430121346608131.png) + +- Navigate to the Deployment section by clicking **Project Settings** > **Deployment** (under App Settings).​ + + ![](../assets/20250430121346890273.png) +​ + +- Click on the **Failed (VIEW LOGS)** text to see the logs. ​ + + ![](../assets/20250430121347217644.png) + + In this step, you'll need to note the Failed Step that been displayed by CodeMagic error log. ​ + + ![](../assets/20250430121347593094.png) +​ + +- Now, press **Cmd/Ctrl + F** to search for the term **"error"** in the logs to find the root cause of the issue. Keep pressing **"Enter"** till you find the error ( this is usually at the bottom of the logs ). + + If you search for "error" and still don't find an error message that makes sense to you then you can also try with the following keyword: + - message + + ![](../assets/20250430121347925706.png) + + - Now select and copy this error message and paste it in the Help Center search in the chat icon in the bottom-right corner to search the error. This will help you find the help article for this issue and then you can find the fix for it. + + ![](../assets/20250430121348293622.gif) \ No newline at end of file diff --git a/docs/troubleshooting/deployment/codemagic_deployment_tips.md b/docs/troubleshooting/deployment/codemagic_deployment_tips.md new file mode 100644 index 00000000..6bb5f7c6 --- /dev/null +++ b/docs/troubleshooting/deployment/codemagic_deployment_tips.md @@ -0,0 +1,15 @@ +--- +keywords: ['deployment', 'tips', 'codemagic'] +slug: /codemagic-deployment-tips +title: CodeMagic Deployment Tips +--- +# CodeMagic Deployment Tips + +Here are some tips to avoid Deployment issues: + +:::tip +- Make sure you've followed all the steps for setting up deployment in your project. +- If you choose a deployment source from a GitHub Repository then please make sure that it's associated with FlutterFlow's GitHub integration. +- If you are deploying to the Play Store from a GitHub repo, make sure to modify your build.gradle file to sign in release mode. +- Setting a version number is optional but may be required for specific cases. If you are updating an existing app that has not been deployed using FlutterFlow yet, you will want to specify a version number. +::: \ No newline at end of file diff --git a/docs/troubleshooting/deployment/deployment_issues_with_stripe_integration.md b/docs/troubleshooting/deployment/deployment_issues_with_stripe_integration.md new file mode 100644 index 00000000..a1f4fd8b --- /dev/null +++ b/docs/troubleshooting/deployment/deployment_issues_with_stripe_integration.md @@ -0,0 +1,54 @@ +--- +keywords: ['deployment', 'issues', 'integration'] +slug: /deployment-issues-with-stripe-integration +title: Deployment Issues with Stripe Integration +--- +# Deployment Issues with Stripe Integration + +Integrating Stripe in your FlutterFlow project can help you accept payments efficiently. However, some common deployment issues may arise. This article outlines key steps and best practices to ensure a smooth Stripe integration and deployment experience. + +1. **Firebase Connection** + + Stripe integration requires a connected Firebase project. Before running through this checklist, it's important to ensure your FlutterFlow project is linked to Firebase, a crucial step for successful payment processing. Detailed guidance can be found at [FlutterFlow's Firebase Setup Guide](https://docs.flutterflow.io/data-and-backend/firebase/firebase-setup). + +2. **Upgrade to Firebase Blaze Plan** + + Stripe functionality requires a Firebase Blaze Plan for operational capabilities. To avoid disruptions, you will need to upgrade from the Firebase Spark plan to the Blaze plan. Learn more about Google's process for upgrading [here](https://firebase.google.com/docs/projects/billing/firebase-pricing-plans). + +3. **Set the Google Cloud Platform (GCP) Location** + + A defined Google Cloud Platform (GCP) location for your Firebase project ensures the correct regional operation of services. The absence of a set location can hinder the deployment process.​ + + ![](../assets/20250430121121827511.png) + +4. **Firebase Project Permissions** + + Ensure you have the necessary permissions enabled for your Firebase project. Two critical permissions involve access management and service configuration. You can reference the [setup guide](https://docs.flutterflow.io/data-and-backend/firebase/firebase-setup)on FlutterFlow Documentation on FlutterFlow Documentation.​ + + ![](../assets/20250430121122068343.png) + +5. **Correct Merchant Code** + + Use the correct 3-letter merchant country code (e.g., "GBR" for the United Kingdom vs. "UK"). Incorrect codes can lead to failed transactions. For accurate codes, refer to [IBAN Country Codes](https://www.iban.com/country-codes).​ + + ![](../assets/20250430121122307123.png) + + ![](../assets/20250430121122597517.png) + +6. **Test and Live Keys** + + For deployment, both Test and Live Stripe keys must be configured in your project settings, regardless of the development stage. This ensures Stripe's API can properly interact with your application.​ + + ![](../assets/20250430121122925141.png) + +7. **Consistent Region Settings** + + Align your Firebase project's region with that of your FlutterFlow settings to prevent deployment failures. Inconsistencies can cause function deployment issues.​ + + ![](../assets/20250430121123230941.png) + + ![](../assets/20250430121123502329.png) + +If you find that this article hasn't fully addressed your concerns or if you have more questions, please don't hesitate to reach out to us at support@flutterflow.io + +​ \ No newline at end of file diff --git a/docs/troubleshooting/deployment/fixing_razorpay_deployment.md b/docs/troubleshooting/deployment/fixing_razorpay_deployment.md new file mode 100644 index 00000000..5a05d8b0 --- /dev/null +++ b/docs/troubleshooting/deployment/fixing_razorpay_deployment.md @@ -0,0 +1,57 @@ +--- +keywords: ['deployment', 'firebase', 'razorpay'] +slug: /fixing-razorpay-deployment +title: Fixing Razorpay Deployment +--- +# Fixing Razorpay Deployment + +Razorpay is a major payment processor in India. Integrating [Razorpay](https://razorpay.com/) can allow users to make payments using their app. This article outlines some common scenarios and troubleshooting instructions for Razorpay deployment issues. + +1. **Firebase Integration and Auth** + + FlutterFlow uses Firebase integration and cloud functions to facilitate Razorpay payments. Ensure you have Firebase configured in your FlutterFlow project and that Firebase Auth is enabled. + + ![](../assets/20250430121119193097.png) + ![](../assets/20250430121119493481.png) + +2. **Firebase Blaze Plan** + + Razorpay uses cloud functions behind the scenes to facilitate payments. Cloud functions are a part of Firebase's "Blaze" plan. You must upgrade from the Firebase Spark plan to the Blaze plan to avoid disruptions. Learn how to upgrade here. On the bottom left side of your Firebase console, you will see which plan you are on + + ![](../assets/20250430121119754142.png) + +3. **Set Google Cloud Location** + + Ensuring your Firebase project is pinned to a specific Google Cloud Platform (GCP) location is key for optimal service functionality across regions. Skipping this step could result in errors.​ + + ![](../assets/20250430121120027064.png) + +4. **Firebase Project Permissions** + + Make sure your Firebase project has the required permissions activated. Access management and service configuration are two essential permissions to focus on. For guidance on setting these up, look at the instructions in the [FlutterFlow Project Setup](https://docs.flutterflow.io/resources/projects/settings/project-setup/). + +5. **Razorpay Keys Check** + + Make sure to copy and paste the correct Key ID and Key Secret from Razorpay for testing and production, respectively. For testing, make sure "Is Production" is turned off. + + ![](../assets/20250430121120324713.png) + + ![](../assets/20250430121120614698.png) + + ![](../assets/20250430121120833797.png) + +6. **Razorpay Business Name** + + Finally, ensure you have entered the proper "Business Name" in the Razorpay additional settings in FlutterFlow. Make sure this business name matches your business name in Razorpay records. + + ![](../assets/20250430121121100378.png) + +:::info[Other Considerations] +Razorpay currently works only on mobile (Android and iOS). This is due to a limitation from Razorpay's Flutter Package. If you are planning to collect payments on a web app - consider using Stripe. + +![](../assets/20250430121121294657.png) + +::: + +If you are still facing issue with deploying Razorpay on Flutterflow, please feel free to reach out to support@flutterflow.io + diff --git a/docs/troubleshooting/deployment/fixing_stripe_deployment_and_payment_errors.md b/docs/troubleshooting/deployment/fixing_stripe_deployment_and_payment_errors.md new file mode 100644 index 00000000..4b9e14cd --- /dev/null +++ b/docs/troubleshooting/deployment/fixing_stripe_deployment_and_payment_errors.md @@ -0,0 +1,106 @@ +--- +keywords: ['deployment', 'payment', 'issues'] +slug: /fixing-stripe-deployment-and-payment-errors +title: Fixing Stripe Deployment & Payment Errors +--- +# Fixing Stripe Deployment & Payment Errors + +Integrating Stripe for payment processing in FlutterFlow can significantly simplify monetization. However, developers may encounter issues during deployment or while managing transactions. This guide outlines common deployment and payment issues—and how to fix them—to help ensure a seamless Stripe integration experience in FlutterFlow apps. + +## Deployment Checklist for Stripe Integration + +1. **Firebase Connection** + + Stripe integration requires a connected Firebase project. Before running through this checklist, it's important to ensure your FlutterFlow project is linked to Firebase, a crucial step for successful payment processing. Detailed guidance can be found at [FlutterFlow's Firebase Setup Guide](https://docs.flutterflow.io/data-and-backend/firebase/firebase-setup). + +2. **Upgrade to Firebase Blaze Plan** + + Stripe functionality requires a Firebase Blaze Plan for operational capabilities. To avoid disruptions, you will need to upgrade from the Firebase Spark plan to the Blaze plan. Learn more about Google's process for upgrading [here](https://firebase.google.com/docs/projects/billing/firebase-pricing-plans). + +3. **Set the Google Cloud Platform (GCP) Location** + + A defined Google Cloud Platform (GCP) location for your Firebase project ensures the correct regional operation of services. The absence of a set location can hinder the deployment process.​ + + ![](../assets/20250430121145711998.png) + +4. **Firebase Project Permissions** + + Ensure you have the necessary permissions enabled for your Firebase project. Two critical permissions involve access management and service configuration. You can reference the [setup guide](https://docs.flutterflow.io/data-and-backend/firebase/firebase-setup) on FlutterFlow Documentation.​ + + ![](../assets/20250430121145949036.png) + +5. **Correct Merchant Code** + + Use the correct 3-letter merchant country code (example., "GBR" for the United Kingdom vs. "UK"). Incorrect codes can lead to failed transactions. For accurate codes, refer to [IBAN Country Codes](https://www.iban.com/country-codes).​ + + ![](../assets/20250430121146161973.png) + + ![](../assets/20250430121146400049.png) + +6. **Test and Live Keys** + + Both Test and Live Stripe keys must be configured in your project settings, regardless of the development stage. This ensures Stripe's API can properly interact with your application.​ + + ![](../assets/20250430121146604033.png) + +7. **Consistent Region Settings** + + Align your Firebase project's region with that of your FlutterFlow settings to prevent deployment failures. Inconsistencies can cause function deployment issues.​ + + ![](../assets/20250430121146854018.png) + + ![](../assets/20250430121147068781.png) + +## Addressing Payment Transaction Issues + +1. **Authentication Requirement** + + Stripe payments **require an authenticated user session**. Before initiating payment processes, ensure your application logic includes user login or account creation. + +2. **Payment Modal Variations** + + It's important to note that web and mobile platforms present different payment modal presentations. These UI differences are out-of-the-box for Stripe and cannot currently be customized within FlutterFlow. + +3. **Price Format** + + Prices should be submitted to Stripe in **cents**, not **dollars**. Utilize a custom function to convert dollar values to cents for accurate transaction processing.​To set a price in cents to Stripe, you can simply use a custom function that takes the price in dollars and returns it as cents.​ + + Here is a custom code you can use to make this calculation in a custom function: + + ```js + int dollarToCent(double amount) { + // Convert the amount to a string + String st = amount.toString(); + + // Remove any dots or commas + st = st.replaceAll('.', ''); + st = st.replaceAll(',', ''); + + // Convert the cleaned string to an integer + return int.parse(st); + } + ``` + + // Input: 14.99 + + // Output: 1499 cents + + +4. **CORS Error Resolution** + + A CORS error during payment initiation often indicates a permissions issue with your Firebase function. Verify and adjust the `allUsers` permission for your Stripe function in the Firebase console to resolve this error.​ + + ![](../assets/20250430121147385978.png) + + ![](../assets/20250430121147683388.png) + +5. **Subscriptions** + + Currently, Apple and Google restrict Stripe subscriptions on mobile platforms. To expand your subscription capabilities, you can use alternative solutions like RevenueCat for mobile apps and direct API calls for web applications.​ + +:::info[**For further information and troubleshooting:**] +- [Stripe Documentation](https://stripe.com/docs) +- [Stripe Payments](https://stripe.com/payments) +- [FlutterFlow University](https://university.flutterflow.io/) +- [Payments - Intro | FlutterFlow University](https://university.flutterflow.io/courses/flutterflow-payments) +::: \ No newline at end of file diff --git a/docs/troubleshooting/deployment/resolve_errors_in_downloaded_code.md b/docs/troubleshooting/deployment/resolve_errors_in_downloaded_code.md new file mode 100644 index 00000000..2b952f73 --- /dev/null +++ b/docs/troubleshooting/deployment/resolve_errors_in_downloaded_code.md @@ -0,0 +1,38 @@ +--- +keywords: ['flutter', 'downloaded', 'code'] +slug: /resolve-errors-in-downloaded-code +title: Resolve Errors in Downloaded Code +--- +# Resolve Errors in Downloaded Code + +When you download your project from FlutterFlow and run it locally in your IDE, you may encounter errors due to Flutter version mismatches. This guide outlines how to resolve these issues by ensuring your local Flutter version matches the version supported by FlutterFlow. + +1. **Check FlutterFlow’s supported Flutter version** + + To find the Flutter version currently supported by FlutterFlow: + - Open the FlutterFlow dashboard. + - Navigate to your project settings or export screen. + - Locate the displayed Flutter version used for your project. + + ![](../assets/20250430121137152872.png) + +2. **Verify the Flutter version on your machine** + + To check the Flutter version installed locally, run the following command in your terminal: + + ```js + flutter --version + ``` + Here's an example of how you can do that: + + ![](../assets/20250430121137421780.png)​ + +3. **Upgrading or Downgrading to the correct Flutter version** + + If the current version on your machine is different than what is currently supported by FlutterFlow, you can downgrade or upgrade to the supported version. You can learn more about upgrading our Flutter [here](https://docs.flutterflow.io/deploying-your-app/testing-your-app/testing-on-mobile-device#id-2.-verify-correct-flutter-version). ​By following these steps, you can fix the errors that you face after downloading the code and run locally. + +If you continue to experience issues, contact the FlutterFlow support team via live chat or email at support@flutterflow.io. + + + + diff --git a/docs/troubleshooting/deployment/run_mode_build_failure.md b/docs/troubleshooting/deployment/run_mode_build_failure.md new file mode 100644 index 00000000..955b8b1e --- /dev/null +++ b/docs/troubleshooting/deployment/run_mode_build_failure.md @@ -0,0 +1,103 @@ +--- +keywords: ['build', 'configuration', 'release'] +slug: /run-mode-build-failure +title: 'Run Mode: Build Failure' +--- +# Run Mode: Build Failure + +Encountering a "Run mode: Build failed" error can be frustrating when you're eager to see your app in action. This error typically signifies a project issue that prevents a successful build. Addressing these errors promptly ensures your app's functionality and performance. + +This guide provides a structured approach to troubleshooting and resolving "Run mode: Build failed" errors, ensuring a smooth development process for your projects. + +1. **Recognizing the Error** + + Here's what the "Run mode: Build failed" error looks like inside of FlutterFlow: + + ![](../assets/20250430121148301014.png) + +2. **Understanding Test Mode vs. Run Mode** + + Here's a little background on run mode vs. test mode in FlutterFlow. Test mode runs as a "test" to help you identify errors before deployment. These features include a debugger and display warnings. Alternatively, run mode attempts to run the app in **release mode** to better mimic what your users can expect in production. In release mode, **warnings are mostly suppressed**, meaning it's important to ensure you are acknowledging and addressing warnings in debug mode before you enter run mode. + + The "Run mode: Build failed" error can occur under various circumstances, during: + + - Run mode + + - APK download + + - Code download + + - GitHub push + + - And more + +## Common Scenarios and Solutions + +1. **Custom Code Failures** + + - **Issue**: Your project's custom code doesn't show errors within the editor, but errors appear when you try to run the app. + + - **Example**: A custom widget lacks web support. + + - **Solution**: Verify on pub.dev or equivalent platforms that the custom code supports the necessary platforms (example, web, iOS, Android). + + - **Best practice**: Consider running the code locally on a sample Flutter project before implementing the custom code inside FlutterFlow to identify possible errors logged. + +2. **Widget Failures** + + - **Issue**: A widget within your app causes the build to fail due to errors. + + - **Example**: Actions assigned to a widget are incomplete or improperly configured. + + - **Solution**: Locate the error-causing widget (usually identified in the error message) + + To correct the issue: + + - Ensure the widget tree is correctly formatted + + - Verify that widgets are named clearly for easy identification + +3. **Build Fails Without Error Messages** + + - **Issue**: The build process fails without displaying an error message, making it challenging to diagnose the problem. + + - **Solution**: Download and run the project code locally with a debugger to identify and resolve the issue. If downloading the code is problematic, check your browser's console for errors that might indicate the cause. + + ![](../assets/20250430121148811672.png) + +4. **Grey Screen in Run Mode** + + - **Issue**: Encountering a grey screen in run mode usually indicates an error suppressed by the release mode. + + - **Solution**: Run the app in test mode to potentially reveal the error for troubleshooting. If test mode does not display errors, use the browser's developer console for clues. + +## Checklist for Troubleshooting + +1. **Identify when and where the error occurs**: + + Determine if the error is specific to run mode, test mode, or other instances like APK download or code download. + +2. **Locate the source of the error**: + + The error message often provides clues about where the problem lies, whether in custom code, a specific widget, or elsewhere. + +3. **Check for platform support**: + + For issues related to custom code, ensure compatibility with your target platforms. + +4. **Examine widget configuration**: + + Verify that all actions and configurations associated with widgets are complete and correct. + +5. **Utilize local debugging**: + + If the error is elusive, running the debugger locally on your downloaded code can help identify the issue. + +6. **Leverage browser tools**: + + The browser's console and developer tools can offer insights, especially when dealing with errors that don't manifest in traditional debug outputs. + + +:::info[Additional Resources] +[Basic Troubleshooting Guide – FlutterFlow Documentation](https://docs.flutterflow.io/troubleshooting/basic-troubleshooting-guide) +:::