How to Get Started with FlutterHole on Your Android Device

Feb 13, 2023 | Programming

FlutterHole is an innovative open-source application that acts as a third-party interface for managing your Pi-hole® server right from your Android device. It allows you to quickly toggle your Pi-hole settings, view summaries, and inspect query logs with ease. This guide will walk you through the steps of setting it up and using its features effectively.

Key Features of FlutterHole

  • Quick Enable/Disable: Toggle your Pi-hole from your home screen with a single tap.
  • Multiple Configurations: Easily switch between different Pi-holes you have access to.
  • Summary Overview: View top clients and domains that are frequently queried.
  • Query Log: Examine and search through your Pi-hole queries.

Getting Started with FlutterHole

Follow these steps to set FlutterHole up on your local environment:

1. Clone the Repository

Start by cloning the FlutterHole repository to your local machine.

2. Generate a Debug Signing Key

Navigate to the Android app directory and run the following commands to create a debug signing key:

#!bin/bash
cd android/app
keytool -genkey -v -keystore keystore.jks -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000

3. Create a Properties File for the Signing Key

In the same directory, create a properties file with the following command:

#!bin/bash
cd android
touch key.properties

Populate the key.properties file with the following configuration:

storePassword=android
keyPassword=android
keyAlias=androiddebugkey
keystoreFile=keystore.jks

4. Generate the Icon Assets

You can generate icon assets using the command:

#!bin/bash
flutter pub get
flutter pub run flutter_launcher_icons:main

5. Generate Code

To generate frozen classes and necessary injections, use the following commands:

#!bin/bash
flutter pub run build_runner build --delete-conflicting-outputs
# Or, to build continuously:
flutter pub run build_runner watch --delete-conflicting-outputs

6. Running the App

You can now run the app on either an emulator or a physical device with:

flutter run

Testing Your Application

To test your integration using the default test suite, run:

flutter drive --target=test_driver/app.dart

Interacting with Pi-hole API

The FlutterHole application interacts seamlessly with the Pi-hole PHP API. Stay tuned for updates from the Pi-hole team regarding a new API in development. For progress and updates, check out the pull request on GitHub.

Troubleshooting Tips

If you face any issues while setting up FlutterHole, consider the following troubleshooting ideas:

  • Ensure that you have the latest version of Flutter and all dependencies installed.
  • Check the configuration details in your key.properties file for accuracy.
  • Verify network connections if you experience issues interacting with your Pi-hole server.

For more insights, updates, or to collaborate on AI development projects, stay connected with **fxis.ai**.

Conclusion

At **fxis.ai**, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.

Stay Informed with the Newest F(x) Insights and Blogs

Tech News and Blog Highlights, Straight to Your Inbox