Skip to content

Commit 6a31957

Browse files
authored
Merge branch 'main' into feature/text-scaling-action
2 parents 4ab6284 + 01241eb commit 6a31957

File tree

6 files changed

+326
-23
lines changed

6 files changed

+326
-23
lines changed

docs/ff-concepts/adding-customization/configuration-files.md

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,10 +41,11 @@ FlutterFlow provides two main ways to modify native XML files: [**Add Individual
4141

4242
For Android, modifications are typically made in the `AndroidManifest.xml` file, where you can add the following tags:
4343

44-
- **Activity Tags**: This injects code inside the `<activity> ... </activity>` block. You’d use this to declare an additional activity in an Android application. An activity represents a single screen with a user interface (UI). This tag can control the behavior, orientation, and themes, and determines how the activity interacts with other apps or system events.
45-
- **Application Tags**: This injects code inside the `<application> ... </application>` block. You’d use this to configure `<meta-data>` entries, application-wide settings, declare app components like services, broadcast receivers, and content providers, and specify intent filters.
44+
- **Activity Tags:** Inserts XML code inside the `MainActivity` block. This is typically used to add child XML elements within the MainActivity, such as `<intent-filter>` or `<meta-data>` to control aspects such as deep linking, theme application, or launch mode.
45+
- **Application Tags**: Used to inject properties or attributes directly on the `<application>` tag itself. For example, you can use this to set values such as `android:icon`, `android:label`, `android:allowBackup`.
46+
- **App Component Tags**: Inserts complete XML components inside the `<application>...</application>` block. Use this to add additional activities, services, broadcast receivers, or content providers that your app depends on.
4647

47-
To add a snippet to your `AndroidManifest.xml`, navigate to **Custom Code** from the left navigation menu, select **Configuration Files**, then choose `AndroidManifest.xml`. Click the **plus** (+) button next to either the *Activity* or *Application* tag—depending on where you'd like to insert the snippet. Provide a name (this will be included as a comment in the file) and paste your snippet code.
48+
To add a snippet to your `AndroidManifest.xml`, navigate to **Custom Code** from the left navigation menu, select **Configuration Files**, then choose `AndroidManifest.xml`. Click the **plus (+)** button next to the tag where you want to insert the snippet. Provide a name (this will be included as a comment in the file) and paste your snippet code.
4849

4950
<div style={{
5051
position: 'relative',
@@ -166,7 +167,7 @@ Here’s exactly how you do it:
166167
height: 0,
167168
width: '100%'}}>
168169
<iframe
169-
src="https://demo.arcade.software/srZqoYaaoVR1mCE3t8AL?embed&show_copy_link=true"
170+
src="https://demo.arcade.software/wHFUlfRHxQlbzmjR0Bfs?embed&show_copy_link=true"
170171
title=""
171172
style={{
172173
position: 'absolute',
@@ -756,9 +757,15 @@ There's a known limitation where editing the `main.dart` file with Supabase enab
756757

757758
<details>
758759
<summary>
759-
How can I create a Library that needs to edit Info.plist / Entitlements.plist / AndroidManifest.xml
760+
Can I modify the Configuration Files in a Library project?
760761
</summary>
761762
<p>
762-
Right now, changes to the configuration files made in a Library project are not ported over to the projects that import them. This means if you create a Library that needs specific permissions added to these files, the consumers of your Library will need to edit the files in the project that imports the Library. We are hoping to have automatic import of changes to the configuration files available in the next few releases.
763+
Yes, you can. When a Library Project is imported, any configuration file snippets, such as those for `AndroidManifest.xml`, `Info.plist`, or `Entitlements.plist` are automatically merged into the importing project's configuration files.
764+
765+
Additionally, your Library Project can pass values (like API keys) into those snippets using [**Library Values**](../../resources/projects/libraries.md#library-values), making it easy to customize.
766+
767+
![config-values-in-library](imgs/config-values-in-library.avif)
768+
769+
This makes Libraries incredibly powerful and enables easy integration of tools like **PostHog** (analytics), **Sentry** (crash reporting), **CleverTap**, **flutter_local_notifications**, **flutter_nfc_kit**, and many more directly from the Marketplace.
763770
</p>
764771
</details>
Binary file not shown.

0 commit comments

Comments
 (0)