diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
index d63f9151..436ca971 100644
--- a/.github/FUNDING.yml
+++ b/.github/FUNDING.yml
@@ -6,7 +6,7 @@ open_collective: # Replace with a single Open Collective username
ko_fi: fs0c13ty # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
-liberapay: # Replace with a single Liberapay username
+liberapay: OpenSociety
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
diff --git a/.github/workflows/flutter_release.yml b/.github/workflows/flutter_release.yml
index 0f5b7246..5a42ade1 100644
--- a/.github/workflows/flutter_release.yml
+++ b/.github/workflows/flutter_release.yml
@@ -10,6 +10,7 @@ env:
LINUX_BUILD_PATH: ${{ vars.LINUX_BUILD_PATH }}
MACOS_BUILD_PATH: ${{ vars.MACOS_BUILD_PATH }}
WINDOWS_BUILD_PATH: ${{ vars.WINDOWS_BUILD_PATH }}
+ MACOS_DMG_PATH: installers/dmg_creator
jobs:
release-android-and-linux:
@@ -92,7 +93,7 @@ jobs:
SUPPLY_PACKAGE_NAME: '${{ secrets.ANDROID_PACKAGE_NAME }}'
SUPPLY_JSON_KEY_DATA: '${{ secrets.GOOGLE_SERVICE_ACCOUNT_KEY }}'
working-directory: android/
- run: bundle exec fastlane android deploy
+ run: bundle exec fastlane android ${{ github.event.release.prerelease && 'beta' || 'deploy' }}
- name: Build Android App and Linux Bundle
# Use signing keys for release instead of debug
@@ -102,16 +103,16 @@ jobs:
- name: Rename ANDROID APKs
run: |
- mv ${{vars.ANDROID_BUILD_PATH}}/${{env.ANDROID_APK_ARM_V7A}} ${{vars.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V7A}}
- mv ${{vars.ANDROID_BUILD_PATH}}/${{env.ANDROID_APK_ARM_V8A}} ${{vars.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V8A}}
- mv ${{vars.ANDROID_BUILD_PATH}}/${{env.ANDROID_APK_x86_64}} ${{vars.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_x86_64}}
+ mv ${{ env.ANDROID_BUILD_PATH}}/${{env.ANDROID_APK_ARM_V7A}} ${{ env.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V7A}}
+ mv ${{ env.ANDROID_BUILD_PATH}}/${{env.ANDROID_APK_ARM_V8A}} ${{ env.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V8A}}
+ mv ${{ env.ANDROID_BUILD_PATH}}/${{env.ANDROID_APK_x86_64}} ${{ env.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_x86_64}}
- name: Linux Archive
uses: thedoctor0/zip-release@master
with:
type: 'zip'
filename: ${{ env.LINUX_ZIP }}
- directory: ${{ vars.LINUX_BUILD_PATH }}
+ directory: ${{ env.LINUX_BUILD_PATH }}
- name: Publish Android Release
uses: softprops/action-gh-release@v1
@@ -120,9 +121,9 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
files: |
- ${{vars.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V7A}}
- ${{vars.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V8A}}
- ${{vars.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_x86_64}}
+ ${{ env.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V7A}}
+ ${{ env.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_ARM_V8A}}
+ ${{ env.ANDROID_BUILD_PATH}}/Vernet-${{github.ref_name}}-${{env.ANDROID_APK_x86_64}}
- name: Publish Linux Release
uses: softprops/action-gh-release@v1
@@ -130,12 +131,13 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
- files: ${{ vars.LINUX_BUILD_PATH }}/${{ env.LINUX_ZIP }}
+ files: ${{ env.LINUX_BUILD_PATH }}/${{ env.LINUX_ZIP }}
release-macos:
runs-on: macos-latest
env:
MACOS_ZIP: Vernet-${{github.ref_name}}-macos.zip
+ MACOS_DMG: Vernet-${{github.ref_name}}-macos.dmg
steps:
- name: Checkout
uses: actions/checkout@v3
@@ -162,16 +164,29 @@ jobs:
with:
type: 'zip'
filename: ${{ env.MACOS_ZIP }}
- directory: ${{ vars.MACOS_BUILD_PATH }}
+ directory: ${{ env.MACOS_BUILD_PATH }}
path: vernet.app
+ - name: Install Node 18
+ uses: actions/setup-node@v4
+ with:
+ node-version: 18
+
+ - name: Install Appdmg and Create dmg
+ working-directory: ${{ env.MACOS_DMG_PATH }}
+ run: |
+ npm install -g appdmg
+ appdmg ./config.json ./${{ env.MACOS_DMG }}
+
- name: Publish macOS Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
- files: ${{ vars.MACOS_BUILD_PATH }}/${{ env.MACOS_ZIP }}
+ files: |
+ ${{ env.MACOS_BUILD_PATH }}/${{ env.MACOS_ZIP }}
+ ${{ env.MACOS_DMG_PATH }}/${{ env.MACOS_DMG }}
release-windows:
runs-on: windows-latest
@@ -203,7 +218,7 @@ jobs:
with:
type: 'zip'
filename: ${{ env.WINDOWS_ZIP }}
- directory: ${{ vars.WINDOWS_BUILD_PATH }}
+ directory: ${{ env.WINDOWS_BUILD_PATH }}
path: vernet.exe
- name: Publish Windows Release
@@ -212,4 +227,4 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
- files: ${{ vars.WINDOWS_BUILD_PATH }}/${{ env.WINDOWS_ZIP }}
\ No newline at end of file
+ files: ${{ env.WINDOWS_BUILD_PATH }}/${{ env.WINDOWS_ZIP }}
\ No newline at end of file
diff --git a/.github/workflows/flutter_test.yml b/.github/workflows/flutter_test.yml
index 239017fe..9aeac923 100644
--- a/.github/workflows/flutter_test.yml
+++ b/.github/workflows/flutter_test.yml
@@ -23,6 +23,8 @@ jobs:
android: ${{ steps.filter.outputs.android }}
linux: ${{ steps.filter.outputs.linux }}
macos: ${{ steps.filter.outputs.macos }}
+ yaml: ${{ steps.filter.outputs.yaml }}
+ windows: ${{ steps.filter.outputs.windows }}
steps:
# For pull requests it's not necessary to checkout the code
- uses: dorny/paths-filter@v3
@@ -39,11 +41,15 @@ jobs:
- 'linux/**'
macos:
- 'macos/**'
+ yaml:
+ - '*.yaml'
+ windows:
+ - 'windows/**'
android-linux-build:
name: 'Android / Linux Build'
needs: changes
- if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.android == 'true' || needs.changes.outputs.linux == 'true' }}
+ if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.android == 'true' || needs.changes.outputs.linux == 'true' || needs.changes.outputs.yaml == 'true' }}
runs-on: ubuntu-latest
steps:
- name: Checkout
@@ -93,14 +99,105 @@ jobs:
- name: Run tests
run: flutter test
- name: Build Android
- if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.android == 'true'}}
+ if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.android == 'true' || needs.changes.outputs.yaml == 'true' }}
run: |
flutter build apk --debug --flavor dev
# Run only if test, lib, and linux folder is changed
- name: Install Linux dependencies
- if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.linux == 'true'}}
+ if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.linux == 'true' || needs.changes.outputs.yaml == 'true' }}
run: sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev
- name: Build Linux
- if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.linux == 'true'}}
- run: flutter build linux
\ No newline at end of file
+ if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.linux == 'true' || needs.changes.outputs.yaml == 'true' }}
+ run: flutter build linux
+
+ macos-build:
+ name: 'Macos Build'
+ needs: changes
+ if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.macos == 'true' || needs.changes.outputs.yaml == 'true' }}
+ runs-on: macos-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+
+ - name: Flutter action
+ uses: subosito/flutter-action@v2.8.0
+ with:
+ channel: stable
+
+ - name: Flutter version
+ run: flutter --version
+
+ - name: Cache pubspec dependencies
+ uses: actions/cache@v3.0.7
+ with:
+ path: |
+ ${{ env.FLUTTER_HOME }}/.pub-cache
+ **/.packages
+ **/.flutter-plugins
+ **/.flutter-plugin-dependencies
+ **/.dart_tool/package_config.json
+ key: build-pubspec-${{ hashFiles('**/pubspec.lock') }}
+ restore-keys: |
+ build-pubspec-
+ - name: Cache build runner
+ uses: actions/cache@v2
+ with:
+ path: |
+ **/.dart_tool
+ **/*.g.dart
+ **/*.mocks.dart
+ **/*.config.dart
+ key: build-runner-${{ hashFiles('**/asset_graph.json', '**/*.dart', '**/pubspec.lock', '**/outputs.json') }}
+ restore-keys: |
+ build-runner-
+
+ - name: Download pub dependencies
+ run: flutter pub get
+
+ - name: Upgrade pub dependencies
+ run: flutter pub upgrade
+
+ - name: Run build_runner
+ run: flutter pub run build_runner build --delete-conflicting-outputs
+
+ - name: Run analyzer
+ run: flutter analyze
+
+ - name: Run tests
+ run: flutter test
+
+ - name: Build macos
+ run: flutter build macos
+
+ windows-build:
+ name: 'Windows Build'
+ needs: changes
+ if: ${{ needs.changes.outputs.lib == 'true' || needs.changes.outputs.test == 'true' || needs.changes.outputs.windows == 'true' || needs.changes.outputs.yaml == 'true' }}
+ runs-on: windows-latest
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+
+ - name: Flutter action
+ uses: subosito/flutter-action@v2.8.0
+ with:
+ channel: stable
+
+ - name: Download pub dependencies
+ run: flutter pub get
+
+ - name: Upgrade pub dependencies
+ run: flutter pub upgrade
+
+ - name: Run build_runner
+ run: flutter pub run build_runner build --delete-conflicting-outputs
+
+ - name: Run analyzer
+ run: flutter analyze
+
+ - name: Run tests
+ run: flutter test
+
+ - name: Build windows
+ run: flutter build windows
\ No newline at end of file
diff --git a/README.md b/README.md
index 5f097567..4d123e64 100644
--- a/README.md
+++ b/README.md
@@ -17,7 +17,7 @@ Vernet - Network Analyzer and Monitoring Tool
|Vernet|Home|Devices|Open Ports|Dark Home|Settings|
|-|-|-|-|-|-|
-|
|
|
|
|
|
|
+|
|
|
|
|
|
|
## Download
@@ -66,7 +66,7 @@ Drop mail at fs0c19ty@protonmail.com
| Librepay |
|----------|
- ||
+ |[](https://liberapay.com/OpenSociety/donate)
3. Support me on Ko-Fi
diff --git a/android/app/src/debug/AndroidManifest.xml b/android/app/src/debug/AndroidManifest.xml
index fff3de40..095b0bcd 100644
--- a/android/app/src/debug/AndroidManifest.xml
+++ b/android/app/src/debug/AndroidManifest.xml
@@ -6,6 +6,7 @@
+
diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml
index 3e4b7c9d..d921e5a1 100644
--- a/android/app/src/main/AndroidManifest.xml
+++ b/android/app/src/main/AndroidManifest.xml
@@ -2,6 +2,7 @@
+
@@ -30,19 +31,9 @@
android:name="io.flutter.embedding.android.NormalTheme"
android:resource="@style/NormalTheme"
/>
-
-
-
diff --git a/android/app/src/main/res/drawable-hdpi/android12splash.png b/android/app/src/main/res/drawable-hdpi/android12splash.png
new file mode 100644
index 00000000..48bc4365
Binary files /dev/null and b/android/app/src/main/res/drawable-hdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-hdpi/splash.png b/android/app/src/main/res/drawable-hdpi/splash.png
new file mode 100644
index 00000000..7c51199f
Binary files /dev/null and b/android/app/src/main/res/drawable-hdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-mdpi/android12splash.png b/android/app/src/main/res/drawable-mdpi/android12splash.png
new file mode 100644
index 00000000..0b3d6142
Binary files /dev/null and b/android/app/src/main/res/drawable-mdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-mdpi/splash.png b/android/app/src/main/res/drawable-mdpi/splash.png
new file mode 100644
index 00000000..f4734ff6
Binary files /dev/null and b/android/app/src/main/res/drawable-mdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-night-hdpi/android12splash.png b/android/app/src/main/res/drawable-night-hdpi/android12splash.png
new file mode 100644
index 00000000..b956a3bc
Binary files /dev/null and b/android/app/src/main/res/drawable-night-hdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-night-hdpi/splash.png b/android/app/src/main/res/drawable-night-hdpi/splash.png
new file mode 100644
index 00000000..b7b3f660
Binary files /dev/null and b/android/app/src/main/res/drawable-night-hdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-night-mdpi/android12splash.png b/android/app/src/main/res/drawable-night-mdpi/android12splash.png
new file mode 100644
index 00000000..f89dff6d
Binary files /dev/null and b/android/app/src/main/res/drawable-night-mdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-night-mdpi/splash.png b/android/app/src/main/res/drawable-night-mdpi/splash.png
new file mode 100644
index 00000000..b3dc6346
Binary files /dev/null and b/android/app/src/main/res/drawable-night-mdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-night-v21/background.png b/android/app/src/main/res/drawable-night-v21/background.png
new file mode 100644
index 00000000..71e9c817
Binary files /dev/null and b/android/app/src/main/res/drawable-night-v21/background.png differ
diff --git a/android/app/src/main/res/drawable-night-v21/launch_background.xml b/android/app/src/main/res/drawable-night-v21/launch_background.xml
new file mode 100644
index 00000000..3cc4948a
--- /dev/null
+++ b/android/app/src/main/res/drawable-night-v21/launch_background.xml
@@ -0,0 +1,9 @@
+
+
+ -
+
+
+ -
+
+
+
diff --git a/android/app/src/main/res/drawable-night-xhdpi/android12splash.png b/android/app/src/main/res/drawable-night-xhdpi/android12splash.png
new file mode 100644
index 00000000..081838ed
Binary files /dev/null and b/android/app/src/main/res/drawable-night-xhdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-night-xhdpi/splash.png b/android/app/src/main/res/drawable-night-xhdpi/splash.png
new file mode 100644
index 00000000..11c0efce
Binary files /dev/null and b/android/app/src/main/res/drawable-night-xhdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png b/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png
new file mode 100644
index 00000000..cbd687fe
Binary files /dev/null and b/android/app/src/main/res/drawable-night-xxhdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-night-xxhdpi/splash.png b/android/app/src/main/res/drawable-night-xxhdpi/splash.png
new file mode 100644
index 00000000..e98f59a6
Binary files /dev/null and b/android/app/src/main/res/drawable-night-xxhdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png b/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png
new file mode 100644
index 00000000..07bcf02a
Binary files /dev/null and b/android/app/src/main/res/drawable-night-xxxhdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-night-xxxhdpi/splash.png b/android/app/src/main/res/drawable-night-xxxhdpi/splash.png
new file mode 100644
index 00000000..ae142e16
Binary files /dev/null and b/android/app/src/main/res/drawable-night-xxxhdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-night/background.png b/android/app/src/main/res/drawable-night/background.png
new file mode 100644
index 00000000..71e9c817
Binary files /dev/null and b/android/app/src/main/res/drawable-night/background.png differ
diff --git a/android/app/src/main/res/drawable-night/launch_background.xml b/android/app/src/main/res/drawable-night/launch_background.xml
new file mode 100644
index 00000000..3cc4948a
--- /dev/null
+++ b/android/app/src/main/res/drawable-night/launch_background.xml
@@ -0,0 +1,9 @@
+
+
+ -
+
+
+ -
+
+
+
diff --git a/android/app/src/main/res/drawable-v21/background.png b/android/app/src/main/res/drawable-v21/background.png
new file mode 100644
index 00000000..3107d37f
Binary files /dev/null and b/android/app/src/main/res/drawable-v21/background.png differ
diff --git a/android/app/src/main/res/drawable-v21/launch_background.xml b/android/app/src/main/res/drawable-v21/launch_background.xml
index f74085f3..3cc4948a 100644
--- a/android/app/src/main/res/drawable-v21/launch_background.xml
+++ b/android/app/src/main/res/drawable-v21/launch_background.xml
@@ -1,12 +1,9 @@
-
-
-
-
-
+ -
+
+
+ -
+
+
diff --git a/android/app/src/main/res/drawable-xhdpi/android12splash.png b/android/app/src/main/res/drawable-xhdpi/android12splash.png
new file mode 100644
index 00000000..28030532
Binary files /dev/null and b/android/app/src/main/res/drawable-xhdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-xhdpi/splash.png b/android/app/src/main/res/drawable-xhdpi/splash.png
new file mode 100644
index 00000000..da0691f3
Binary files /dev/null and b/android/app/src/main/res/drawable-xhdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-xxhdpi/android12splash.png b/android/app/src/main/res/drawable-xxhdpi/android12splash.png
new file mode 100644
index 00000000..b752fc13
Binary files /dev/null and b/android/app/src/main/res/drawable-xxhdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-xxhdpi/splash.png b/android/app/src/main/res/drawable-xxhdpi/splash.png
new file mode 100644
index 00000000..ffbbd67f
Binary files /dev/null and b/android/app/src/main/res/drawable-xxhdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable-xxxhdpi/android12splash.png b/android/app/src/main/res/drawable-xxxhdpi/android12splash.png
new file mode 100644
index 00000000..2d0ff23c
Binary files /dev/null and b/android/app/src/main/res/drawable-xxxhdpi/android12splash.png differ
diff --git a/android/app/src/main/res/drawable-xxxhdpi/splash.png b/android/app/src/main/res/drawable-xxxhdpi/splash.png
new file mode 100644
index 00000000..58cb0e0d
Binary files /dev/null and b/android/app/src/main/res/drawable-xxxhdpi/splash.png differ
diff --git a/android/app/src/main/res/drawable/background.png b/android/app/src/main/res/drawable/background.png
new file mode 100644
index 00000000..3107d37f
Binary files /dev/null and b/android/app/src/main/res/drawable/background.png differ
diff --git a/android/app/src/main/res/drawable/launch_background.xml b/android/app/src/main/res/drawable/launch_background.xml
index 304732f8..3cc4948a 100644
--- a/android/app/src/main/res/drawable/launch_background.xml
+++ b/android/app/src/main/res/drawable/launch_background.xml
@@ -1,12 +1,9 @@
-
-
-
-
-
+ -
+
+
+ -
+
+
diff --git a/android/app/src/main/res/values-night-v31/styles.xml b/android/app/src/main/res/values-night-v31/styles.xml
new file mode 100644
index 00000000..2b3e2fb2
--- /dev/null
+++ b/android/app/src/main/res/values-night-v31/styles.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
diff --git a/android/app/src/main/res/values-night/styles.xml b/android/app/src/main/res/values-night/styles.xml
index 449a9f93..f2178429 100644
--- a/android/app/src/main/res/values-night/styles.xml
+++ b/android/app/src/main/res/values-night/styles.xml
@@ -5,6 +5,10 @@
- @drawable/launch_background
+ - false
+ - true
+ - true
+ - shortEdges
+
+
+
+
diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml
index d74aa35c..3413c3e4 100644
--- a/android/app/src/main/res/values/styles.xml
+++ b/android/app/src/main/res/values/styles.xml
@@ -5,6 +5,10 @@
- @drawable/launch_background
+ - false
+ - true
+ - true
+ - shortEdges
diff --git a/android/fastlane/metadata/android/en-US/changelogs/11.txt b/android/fastlane/metadata/android/en-US/changelogs/11.txt
deleted file mode 100644
index b0d5a722..00000000
--- a/android/fastlane/metadata/android/en-US/changelogs/11.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Significant search speed improvement to host and port scanning.
-Host Name for devices added on platform Linux and iOS.
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/en-US/changelogs/21.txt b/android/fastlane/metadata/android/en-US/changelogs/21.txt
new file mode 100644
index 00000000..4584c8e4
--- /dev/null
+++ b/android/fastlane/metadata/android/en-US/changelogs/21.txt
@@ -0,0 +1,2 @@
+Minor bug fixes and improvments.
+Publishing dmg for macos now.
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/en-US/changelogs/22.txt b/android/fastlane/metadata/android/en-US/changelogs/22.txt
new file mode 100644
index 00000000..e3d5cf53
--- /dev/null
+++ b/android/fastlane/metadata/android/en-US/changelogs/22.txt
@@ -0,0 +1 @@
+Run checks for windows and publish beta on android for prerelease publish
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/en-US/changelogs/23.txt b/android/fastlane/metadata/android/en-US/changelogs/23.txt
new file mode 100644
index 00000000..d49777df
--- /dev/null
+++ b/android/fastlane/metadata/android/en-US/changelogs/23.txt
@@ -0,0 +1,2 @@
+Splash screen fix for all android devices.
+Rescan button added alongside devices count.
\ No newline at end of file
diff --git a/android/fastlane/metadata/android/en-US/full_description.txt b/android/fastlane/metadata/android/en-US/full_description.txt
index d27cf0c7..62482d04 100644
--- a/android/fastlane/metadata/android/en-US/full_description.txt
+++ b/android/fastlane/metadata/android/en-US/full_description.txt
@@ -6,4 +6,5 @@ Features
3. Scans for open ports of target IP
4. Shows ISP details
-Vernet is an open source project hosted at github - https://github.com/git-elliot/vernet
\ No newline at end of file
+Vernet is an open source project hosted at github - https://github.com/git-elliot/vernet
+
diff --git a/android/fastlane/metadata/android/en-US/images/icon.png b/android/fastlane/metadata/android/en-US/images/icon.png
index f6574bba..963b4546 100644
Binary files a/android/fastlane/metadata/android/en-US/images/icon.png and b/android/fastlane/metadata/android/en-US/images/icon.png differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/1.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/1.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/1_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/1_en-US.png
deleted file mode 100644
index 6cda6a70..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/1_en-US.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/2.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/2_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/2_en-US.png
deleted file mode 100644
index 534bc198..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/2_en-US.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/3.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/3_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/3_en-US.png
deleted file mode 100644
index abf8b7ec..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/3_en-US.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/4.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/4_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/4_en-US.png
deleted file mode 100644
index 20a4d229..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/4_en-US.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/5.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/5.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/5_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/5_en-US.png
deleted file mode 100644
index 765bf163..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/5_en-US.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/6.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/6.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/6_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/6_en-US.png
deleted file mode 100644
index a3e1c988..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/6_en-US.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/7.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/7.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/7_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/7_en-US.png
deleted file mode 100644
index 205202f7..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/7_en-US.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/phoneScreenshots/8.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/8.png
similarity index 100%
rename from fastlane/metadata/android/en-US/images/phoneScreenshots/8.png
rename to android/fastlane/metadata/android/en-US/images/phoneScreenshots/8.png
diff --git a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/8_en-US.png b/android/fastlane/metadata/android/en-US/images/phoneScreenshots/8_en-US.png
deleted file mode 100644
index 44d5c3e2..00000000
Binary files a/android/fastlane/metadata/android/en-US/images/phoneScreenshots/8_en-US.png and /dev/null differ
diff --git a/assets/splash11/splash_dark/ic_launcher_round.png b/assets/splash11/splash_dark/ic_launcher_round.png
new file mode 100644
index 00000000..675f052a
Binary files /dev/null and b/assets/splash11/splash_dark/ic_launcher_round.png differ
diff --git a/assets/splash11/splash_light/ic_launcher_round.png b/assets/splash11/splash_light/ic_launcher_round.png
new file mode 100644
index 00000000..365a5610
Binary files /dev/null and b/assets/splash11/splash_light/ic_launcher_round.png differ
diff --git a/assets/splash12/splash_dark/ic_launcher_round.png b/assets/splash12/splash_dark/ic_launcher_round.png
new file mode 100644
index 00000000..6476c994
Binary files /dev/null and b/assets/splash12/splash_dark/ic_launcher_round.png differ
diff --git a/assets/splash12/splash_light/ic_launcher_round.png b/assets/splash12/splash_light/ic_launcher_round.png
new file mode 100644
index 00000000..58e750e9
Binary files /dev/null and b/assets/splash12/splash_light/ic_launcher_round.png differ
diff --git a/fastlane b/fastlane
new file mode 120000
index 00000000..ac801024
--- /dev/null
+++ b/fastlane
@@ -0,0 +1 @@
+android/fastlane
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/1.txt b/fastlane/metadata/android/en-US/changelogs/1.txt
deleted file mode 100644
index 2722d3ac..00000000
--- a/fastlane/metadata/android/en-US/changelogs/1.txt
+++ /dev/null
@@ -1 +0,0 @@
-Only host scanner, port scanner and ping is supported.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/10.txt b/fastlane/metadata/android/en-US/changelogs/10.txt
deleted file mode 100644
index 78168c89..00000000
--- a/fastlane/metadata/android/en-US/changelogs/10.txt
+++ /dev/null
@@ -1 +0,0 @@
-DNS Lookup added and minor improvements
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/13.txt b/fastlane/metadata/android/en-US/changelogs/13.txt
deleted file mode 100644
index 662c6b9f..00000000
--- a/fastlane/metadata/android/en-US/changelogs/13.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Play store release to beta using GHA
-Added mdns search
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/14.txt b/fastlane/metadata/android/en-US/changelogs/14.txt
deleted file mode 100644
index b9f3f6bd..00000000
--- a/fastlane/metadata/android/en-US/changelogs/14.txt
+++ /dev/null
@@ -1 +0,0 @@
-Release build artifacts using GHA
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/15.txt b/fastlane/metadata/android/en-US/changelogs/15.txt
deleted file mode 100644
index 2219007a..00000000
--- a/fastlane/metadata/android/en-US/changelogs/15.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Bug fixes and improvements
-network_tools updated to v3.2.1
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/16.txt b/fastlane/metadata/android/en-US/changelogs/16.txt
deleted file mode 100644
index 1d117bba..00000000
--- a/fastlane/metadata/android/en-US/changelogs/16.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-Upgraded network_tools to v4.0.1
-Mac address support added for Desktop
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/17.txt b/fastlane/metadata/android/en-US/changelogs/17.txt
deleted file mode 100644
index cd09d340..00000000
--- a/fastlane/metadata/android/en-US/changelogs/17.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-Fixed full port scan freeze issue.
-Theme and framework update.
-Minor bug fixes and improvements.
diff --git a/fastlane/metadata/android/en-US/changelogs/18.txt b/fastlane/metadata/android/en-US/changelogs/18.txt
deleted file mode 100644
index db77bb61..00000000
--- a/fastlane/metadata/android/en-US/changelogs/18.txt
+++ /dev/null
@@ -1 +0,0 @@
-Follow system theme added and bug fixes
diff --git a/fastlane/metadata/android/en-US/changelogs/19.txt b/fastlane/metadata/android/en-US/changelogs/19.txt
deleted file mode 100644
index bcc900b1..00000000
--- a/fastlane/metadata/android/en-US/changelogs/19.txt
+++ /dev/null
@@ -1 +0,0 @@
-Many improvements and bug fixes
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/2.txt b/fastlane/metadata/android/en-US/changelogs/2.txt
deleted file mode 100644
index 252f9c8c..00000000
--- a/fastlane/metadata/android/en-US/changelogs/2.txt
+++ /dev/null
@@ -1 +0,0 @@
-fastlane added and other minor fixes
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/20.txt b/fastlane/metadata/android/en-US/changelogs/20.txt
deleted file mode 100644
index 751123b3..00000000
--- a/fastlane/metadata/android/en-US/changelogs/20.txt
+++ /dev/null
@@ -1 +0,0 @@
-This version is release via CD. Now you will receive updates more faster.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/3.txt b/fastlane/metadata/android/en-US/changelogs/3.txt
deleted file mode 100644
index 3931091c..00000000
--- a/fastlane/metadata/android/en-US/changelogs/3.txt
+++ /dev/null
@@ -1 +0,0 @@
-Hard code versioning removed from settings page
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/4.txt b/fastlane/metadata/android/en-US/changelogs/4.txt
deleted file mode 100644
index 7569edb9..00000000
--- a/fastlane/metadata/android/en-US/changelogs/4.txt
+++ /dev/null
@@ -1 +0,0 @@
-Changelogs are now maintained in fastlane folder
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/5.txt b/fastlane/metadata/android/en-US/changelogs/5.txt
deleted file mode 100644
index 20c04f07..00000000
--- a/fastlane/metadata/android/en-US/changelogs/5.txt
+++ /dev/null
@@ -1 +0,0 @@
-Unnecessary ACCESS_COARSE_LOCATION permission removed.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/6.txt b/fastlane/metadata/android/en-US/changelogs/6.txt
deleted file mode 100644
index d891e4c2..00000000
--- a/fastlane/metadata/android/en-US/changelogs/6.txt
+++ /dev/null
@@ -1 +0,0 @@
-ISP details added and minor improvements
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/7.txt b/fastlane/metadata/android/en-US/changelogs/7.txt
deleted file mode 100644
index 5afd857c..00000000
--- a/fastlane/metadata/android/en-US/changelogs/7.txt
+++ /dev/null
@@ -1 +0,0 @@
-Bug Fixes and Improvements
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/8.txt b/fastlane/metadata/android/en-US/changelogs/8.txt
deleted file mode 100644
index ebe52553..00000000
--- a/fastlane/metadata/android/en-US/changelogs/8.txt
+++ /dev/null
@@ -1 +0,0 @@
-GeoLocation API updated and speed test via browser added
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/changelogs/9.txt b/fastlane/metadata/android/en-US/changelogs/9.txt
deleted file mode 100644
index ecad9533..00000000
--- a/fastlane/metadata/android/en-US/changelogs/9.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-1. Check for updates added.
-2. Now ping works even when not connected to internet.
-3. Now you can select ports to scan in different types(top, range, popular).
-4. Open ports window can take domain as a input.
-
-Other bug fixes and major improvements
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt
deleted file mode 100644
index 62482d04..00000000
--- a/fastlane/metadata/android/en-US/full_description.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-Vernet - Network Analyzer and monitoring tool.
-
-Features
-1. Shows wifi details
-2. Scans for devices(or hosts) on network
-3. Scans for open ports of target IP
-4. Shows ISP details
-
-Vernet is an open source project hosted at github - https://github.com/git-elliot/vernet
-
diff --git a/fastlane/metadata/android/en-US/images/featureGraphic.png b/fastlane/metadata/android/en-US/images/featureGraphic.png
deleted file mode 100644
index a2861ed1..00000000
Binary files a/fastlane/metadata/android/en-US/images/featureGraphic.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/images/icon.png b/fastlane/metadata/android/en-US/images/icon.png
deleted file mode 100644
index 963b4546..00000000
Binary files a/fastlane/metadata/android/en-US/images/icon.png and /dev/null differ
diff --git a/fastlane/metadata/android/en-US/short_description.txt b/fastlane/metadata/android/en-US/short_description.txt
deleted file mode 100644
index e9ff00b7..00000000
--- a/fastlane/metadata/android/en-US/short_description.txt
+++ /dev/null
@@ -1 +0,0 @@
-Host and Port scanner. Ping IP or domain.
\ No newline at end of file
diff --git a/fastlane/metadata/android/en-US/title.txt b/fastlane/metadata/android/en-US/title.txt
deleted file mode 100644
index dc24fe2c..00000000
--- a/fastlane/metadata/android/en-US/title.txt
+++ /dev/null
@@ -1 +0,0 @@
-Vernet - Network Analyzer
\ No newline at end of file
diff --git a/flutter_native_splash.yaml b/flutter_native_splash.yaml
new file mode 100644
index 00000000..0f96b357
--- /dev/null
+++ b/flutter_native_splash.yaml
@@ -0,0 +1,144 @@
+flutter_native_splash:
+ # This package generates native code to customize Flutter's default white native splash screen
+ # with background color and splash image.
+ # Customize the parameters below, and run the following command in the terminal:
+ # dart run flutter_native_splash:create
+ # To restore Flutter's default white splash screen, run the following command in the terminal:
+ # dart run flutter_native_splash:remove
+
+ # IMPORTANT NOTE: These parameter do not affect the configuration of Android 12 and later, which
+ # handle splash screens differently that prior versions of Android. Android 12 and later must be
+ # configured specifically in the android_12 section below.
+
+ # color or background_image is the only required parameter. Use color to set the background
+ # of your splash screen to a solid color. Use background_image to set the background of your
+ # splash screen to a png image. This is useful for gradients. The image will be stretch to the
+ # size of the app. Only one parameter can be used, color and background_image cannot both be set.
+ color: "#FFFFFF"
+ #background_image: "assets/background.png"
+
+ # Optional parameters are listed below. To enable a parameter, uncomment the line by removing
+ # the leading # character.
+
+ # The image parameter allows you to specify an image used in the splash screen. It must be a
+ # png file and should be sized for 4x pixel density.
+ image: assets/splash11/splash_light/ic_launcher_round.png
+
+ # The branding property allows you to specify an image used as branding in the splash screen.
+ # It must be a png file. It is supported for Android, iOS and the Web. For Android 12,
+ # see the Android 12 section below.
+ #branding: assets/dart.png
+
+ # To position the branding image at the bottom of the screen you can use bottom, bottomRight,
+ # and bottomLeft. The default values is bottom if not specified or specified something else.
+ #branding_mode: bottom
+
+ # The color_dark, background_image_dark, image_dark, branding_dark are parameters that set the background
+ # and image when the device is in dark mode. If they are not specified, the app will use the
+ # parameters from above. If the image_dark parameter is specified, color_dark or
+ # background_image_dark must be specified. color_dark and background_image_dark cannot both be
+ # set.
+ color_dark: "#000000"
+ #background_image_dark: "assets/dark-background.png"
+ image_dark: assets/splash11/splash_dark/ic_launcher_round.png
+ #branding_dark: assets/dart_dark.png
+
+ # From Android 12 onwards, the splash screen is handled differently than in previous versions.
+ # Please visit https://developer.android.com/guide/topics/ui/splash-screen
+ # Following are specific parameters for Android 12+.
+ android_12:
+ # The image parameter sets the splash screen icon image. If this parameter is not specified,
+ # the app's launcher icon will be used instead.
+ # Please note that the splash screen will be clipped to a circle on the center of the screen.
+ # App icon with an icon background: This should be 960×960 pixels, and fit within a circle
+ # 640 pixels in diameter.
+ # App icon without an icon background: This should be 1152×1152 pixels, and fit within a circle
+ # 768 pixels in diameter.
+ image: assets/splash12/splash_light/ic_launcher_round.png
+
+ # Splash screen background color.
+ color: "#FFFFFF"
+
+ # App icon background color.
+ # icon_background_color: "#111111"
+
+ # The branding property allows you to specify an image used as branding in the splash screen.
+ #branding: assets/dart.png
+
+ # The image_dark, color_dark, icon_background_color_dark, and branding_dark set values that
+ # apply when the device is in dark mode. If they are not specified, the app will use the
+ # parameters from above.
+ image_dark: assets/splash12/splash_dark/ic_launcher_round.png
+ color_dark: "#000000"
+ # icon_background_color_dark: "#eeeeee"
+
+ # The android, ios and web parameters can be used to disable generating a splash screen on a given
+ # platform.
+ #android: false
+ #ios: false
+ #web: false
+
+ # Platform specific images can be specified with the following parameters, which will override
+ # the respective parameter. You may specify all, selected, or none of these parameters:
+ #color_android: "#42a5f5"
+ #color_dark_android: "#042a49"
+ #color_ios: "#42a5f5"
+ #color_dark_ios: "#042a49"
+ #color_web: "#42a5f5"
+ #color_dark_web: "#042a49"
+ #image_android: assets/splash-android.png
+ #image_dark_android: assets/splash-invert-android.png
+ #image_ios: assets/splash-ios.png
+ #image_dark_ios: assets/splash-invert-ios.png
+ #image_web: assets/splash-web.gif
+ #image_dark_web: assets/splash-invert-web.gif
+ #background_image_android: "assets/background-android.png"
+ #background_image_dark_android: "assets/dark-background-android.png"
+ #background_image_ios: "assets/background-ios.png"
+ #background_image_dark_ios: "assets/dark-background-ios.png"
+ #background_image_web: "assets/background-web.png"
+ #background_image_dark_web: "assets/dark-background-web.png"
+ #branding_android: assets/brand-android.png
+ #branding_dark_android: assets/dart_dark-android.png
+ #branding_ios: assets/brand-ios.png
+ #branding_dark_ios: assets/dart_dark-ios.png
+ #branding_web: assets/brand-web.gif
+ #branding_dark_web: assets/dart_dark-web.gif
+
+ # The position of the splash image can be set with android_gravity, ios_content_mode, and
+ # web_image_mode parameters. All default to center.
+ #
+ # android_gravity can be one of the following Android Gravity (see
+ # https://developer.android.com/reference/android/view/Gravity): bottom, center,
+ # center_horizontal, center_vertical, clip_horizontal, clip_vertical, end, fill, fill_horizontal,
+ # fill_vertical, left, right, start, or top.
+ #android_gravity: center
+ #
+ # ios_content_mode can be one of the following iOS UIView.ContentMode (see
+ # https://developer.apple.com/documentation/uikit/uiview/contentmode): scaleToFill,
+ # scaleAspectFit, scaleAspectFill, center, top, bottom, left, right, topLeft, topRight,
+ # bottomLeft, or bottomRight.
+ #ios_content_mode: center
+ #
+ # web_image_mode can be one of the following modes: center, contain, stretch, and cover.
+ #web_image_mode: center
+
+ # The screen orientation can be set in Android with the android_screen_orientation parameter.
+ # Valid parameters can be found here:
+ # https://developer.android.com/guide/topics/manifest/activity-element#screen
+ #android_screen_orientation: sensorLandscape
+
+ # To hide the notification bar, use the fullscreen parameter. Has no effect in web since web
+ # has no notification bar. Defaults to false.
+ # NOTE: Unlike Android, iOS will not automatically show the notification bar when the app loads.
+ # To show the notification bar, add the following code to your Flutter app:
+ # WidgetsFlutterBinding.ensureInitialized();
+ # SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: [SystemUiOverlay.bottom, SystemUiOverlay.top], );
+ fullscreen: true
+
+ # If you have changed the name(s) of your info.plist file(s), you can specify the filename(s)
+ # with the info_plist_files parameter. Remove only the # characters in the three lines below,
+ # do not remove any spaces:
+ #info_plist_files:
+ # - 'ios/Runner/Info-Debug.plist'
+ # - 'ios/Runner/Info-Release.plist'
\ No newline at end of file
diff --git a/installers/dmg_creator/AppIcon.icns b/installers/dmg_creator/AppIcon.icns
new file mode 100644
index 00000000..fd24169c
Binary files /dev/null and b/installers/dmg_creator/AppIcon.icns differ
diff --git a/installers/dmg_creator/config.json b/installers/dmg_creator/config.json
new file mode 100644
index 00000000..aed67f4c
--- /dev/null
+++ b/installers/dmg_creator/config.json
@@ -0,0 +1,8 @@
+{
+ "title": "Vernet",
+ "icon": "AppIcon.icns",
+ "contents": [
+ { "x": 448, "y": 344, "type": "link", "path": "/Applications" },
+ { "x": 192, "y": 344, "type": "file", "path": "../../build/macos/Build/Products/Release/vernet.app" }
+ ]
+}
\ No newline at end of file
diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist
index 9625e105..7c569640 100644
--- a/ios/Flutter/AppFrameworkInfo.plist
+++ b/ios/Flutter/AppFrameworkInfo.plist
@@ -21,6 +21,6 @@
CFBundleVersion
1.0
MinimumOSVersion
- 11.0
+ 12.0
diff --git a/ios/Podfile b/ios/Podfile
index 88359b22..279576f3 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -1,5 +1,5 @@
# Uncomment this line to define a global platform for your project
-# platform :ios, '11.0'
+# platform :ios, '12.0'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index b5b82252..366ef86c 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -1,14 +1,23 @@
PODS:
+ - external_app_launcher (0.0.1):
+ - Flutter
- Flutter (1.0.0)
- flutter_icmp_ping (0.0.1):
- Flutter
- flutter_isolate (0.0.1):
- Flutter
+ - flutter_native_splash (0.0.1):
+ - Flutter
- network_info_plus (0.0.1):
- Flutter
+ - nsd_ios (0.0.1):
+ - Flutter
- package_info_plus (0.4.5):
- Flutter
- - permission_handler_apple (9.1.1):
+ - path_provider_foundation (0.0.1):
+ - Flutter
+ - FlutterMacOS
+ - permission_handler_apple (9.3.0):
- Flutter
- shared_preferences_foundation (0.0.1):
- Flutter
@@ -17,26 +26,38 @@ PODS:
- Flutter
DEPENDENCIES:
+ - external_app_launcher (from `.symlinks/plugins/external_app_launcher/ios`)
- Flutter (from `Flutter`)
- flutter_icmp_ping (from `.symlinks/plugins/flutter_icmp_ping/ios`)
- flutter_isolate (from `.symlinks/plugins/flutter_isolate/ios`)
+ - flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`)
- network_info_plus (from `.symlinks/plugins/network_info_plus/ios`)
+ - nsd_ios (from `.symlinks/plugins/nsd_ios/ios`)
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
+ - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`)
- permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`)
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
EXTERNAL SOURCES:
+ external_app_launcher:
+ :path: ".symlinks/plugins/external_app_launcher/ios"
Flutter:
:path: Flutter
flutter_icmp_ping:
:path: ".symlinks/plugins/flutter_icmp_ping/ios"
flutter_isolate:
:path: ".symlinks/plugins/flutter_isolate/ios"
+ flutter_native_splash:
+ :path: ".symlinks/plugins/flutter_native_splash/ios"
network_info_plus:
:path: ".symlinks/plugins/network_info_plus/ios"
+ nsd_ios:
+ :path: ".symlinks/plugins/nsd_ios/ios"
package_info_plus:
:path: ".symlinks/plugins/package_info_plus/ios"
+ path_provider_foundation:
+ :path: ".symlinks/plugins/path_provider_foundation/darwin"
permission_handler_apple:
:path: ".symlinks/plugins/permission_handler_apple/ios"
shared_preferences_foundation:
@@ -45,15 +66,19 @@ EXTERNAL SOURCES:
:path: ".symlinks/plugins/url_launcher_ios/ios"
SPEC CHECKSUMS:
- Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
+ external_app_launcher: ad55ac844aa21f2d2197d7cec58ff0d0dc40bbc0
+ Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
flutter_icmp_ping: 2b159955eee0c487c766ad83fec224ae35e7c935
flutter_isolate: 0edf5081826d071adf21759d1eb10ff5c24503b5
- network_info_plus: b78876159360f5580608c2cea620d6ceffabd0ad
- package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e
- permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6
- shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
- url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4
+ flutter_native_splash: edf599c81f74d093a4daf8e17bd7a018854bc778
+ network_info_plus: 6d0c3eb8367b8164fa3fb0c19875e3f59d49697f
+ nsd_ios: 8c37babdc6538e3350dbed3a52674d2edde98173
+ package_info_plus: 115f4ad11e0698c8c1c5d8a689390df880f47e85
+ path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c
+ permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2
+ shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695
+ url_launcher_ios: 6116280ddcfe98ab8820085d8d76ae7449447586
-PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3
+PODFILE CHECKSUM: c4c93c5f6502fe2754f48404d3594bf779584011
-COCOAPODS: 1.12.0
+COCOAPODS: 1.15.2
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
index 9cf1d843..e70ed7f4 100644
--- a/ios/Runner.xcodeproj/project.pbxproj
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -145,6 +145,7 @@
9705A1C41CF9048500538489 /* Embed Frameworks */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
1A9FEE1D7C757A2BE9D19399 /* [CP] Embed Pods Frameworks */,
+ 443B8869A437140D52F80F1F /* [CP] Copy Pods Resources */,
);
buildRules = (
);
@@ -161,7 +162,7 @@
97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject;
attributes = {
- LastUpgradeCheck = 1430;
+ LastUpgradeCheck = 1510;
ORGANIZATIONNAME = "";
TargetAttributes = {
97C146ED1CF9000F007C117D = {
@@ -236,6 +237,23 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin";
};
+ 443B8869A437140D52F80F1F /* [CP] Copy Pods Resources */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputFileListPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
+ );
+ name = "[CP] Copy Pods Resources";
+ outputFileListPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
+ showEnvVarsInLog = 0;
+ };
9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
@@ -251,6 +269,23 @@
shellPath = /bin/sh;
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
};
+ 9964CF9BE27615006489D488 /* [CP] Copy Pods Resources */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputFileListPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
+ );
+ name = "[CP] Copy Pods Resources";
+ outputFileListPaths = (
+ "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
+ showEnvVarsInLog = 0;
+ };
A23E1C57A48CD5731ACA870B /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
index a6b826db..5e31d3d3 100644
--- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
+++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
@@ -1,6 +1,6 @@
-
-
+
+
-
-
+
+
+
+
+
+
+
+
@@ -32,6 +38,7 @@
-
+
+
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index 3ce68e2b..1765a7dc 100644
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -1,58 +1,66 @@
-
- CADisableMinimumFrameDurationOnPhone
-
- CFBundleDevelopmentRegion
- $(DEVELOPMENT_LANGUAGE)
- CFBundleExecutable
- $(EXECUTABLE_NAME)
- CFBundleIdentifier
- $(PRODUCT_BUNDLE_IDENTIFIER)
- CFBundleInfoDictionaryVersion
- 6.0
- CFBundleName
- vernet
- CFBundlePackageType
- APPL
- CFBundleShortVersionString
- $(FLUTTER_BUILD_NAME)
- CFBundleSignature
- ????
- CFBundleVersion
- $(FLUTTER_BUILD_NUMBER)
- LSApplicationQueriesSchemes
-
- https
- http
-
- LSRequiresIPhoneOS
-
- NSLocationWhenInUseUsageDescription
- This app requires accessing your location information when the app is in foreground to get wi-fi information.
- UILaunchStoryboardName
- LaunchScreen
- UIMainStoryboardFile
- Main
- UISupportedInterfaceOrientations
-
- UIInterfaceOrientationPortrait
- UIInterfaceOrientationLandscapeLeft
- UIInterfaceOrientationLandscapeRight
-
- UISupportedInterfaceOrientations~ipad
-
- UIInterfaceOrientationPortrait
- UIInterfaceOrientationPortraitUpsideDown
- UIInterfaceOrientationLandscapeLeft
- UIInterfaceOrientationLandscapeRight
-
- UIViewControllerBasedStatusBarAppearance
-
- com.apple.developer.networking.wifi-info
-
- UIApplicationSupportsIndirectInputEvents
-
-
+
+ CADisableMinimumFrameDurationOnPhone
+
+ CFBundleDevelopmentRegion
+ $(DEVELOPMENT_LANGUAGE)
+ CFBundleExecutable
+ $(EXECUTABLE_NAME)
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ vernet
+ CFBundlePackageType
+ APPL
+ CFBundleShortVersionString
+ $(FLUTTER_BUILD_NAME)
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ $(FLUTTER_BUILD_NUMBER)
+ LSApplicationQueriesSchemes
+
+ https
+ http
+
+ LSRequiresIPhoneOS
+
+ NSLocationWhenInUseUsageDescription
+ This app requires accessing your location information when the app is in foreground to get wi-fi information.
+ UILaunchStoryboardName
+ LaunchScreen
+ UIMainStoryboardFile
+ Main
+ UISupportedInterfaceOrientations
+
+ UIInterfaceOrientationPortrait
+ UIInterfaceOrientationLandscapeLeft
+ UIInterfaceOrientationLandscapeRight
+
+ UISupportedInterfaceOrientations~ipad
+
+ UIInterfaceOrientationPortrait
+ UIInterfaceOrientationPortraitUpsideDown
+ UIInterfaceOrientationLandscapeLeft
+ UIInterfaceOrientationLandscapeRight
+
+ UIViewControllerBasedStatusBarAppearance
+
+ com.apple.developer.networking.wifi-info
+
+ UIApplicationSupportsIndirectInputEvents
+
+ NSLocalNetworkUsageDescription
+ Required to discover local network devices
+ NSBonjourServices
+
+ _http._tcp
+
+ UIStatusBarHidden
+
+
diff --git a/lib/helper/dark_theme_preference.dart b/lib/helper/dark_theme_preference.dart
index fd894fe4..99f4dedc 100644
--- a/lib/helper/dark_theme_preference.dart
+++ b/lib/helper/dark_theme_preference.dart
@@ -13,7 +13,7 @@ class DarkThemePreference {
final SharedPreferences prefs = await SharedPreferences.getInstance();
return ThemePreference.values.firstWhere(
(element) => element.name == prefs.getString(themeStatus),
- orElse: () => ThemePreference.light,
+ orElse: () => ThemePreference.system,
);
}
}
diff --git a/lib/main.dart b/lib/main.dart
index 90ee73aa..b3828536 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -1,4 +1,5 @@
import 'package:flutter/material.dart';
+import 'package:flutter_native_splash/flutter_native_splash.dart';
import 'package:network_tools_flutter/network_tools_flutter.dart';
import 'package:path_provider/path_provider.dart';
import 'package:provider/provider.dart';
@@ -14,14 +15,18 @@ import 'package:vernet/pages/settings_page.dart';
AppSettings appSettings = AppSettings.instance;
Future main() async {
configureDependencies(Env.prod);
- WidgetsFlutterBinding.ensureInitialized();
+
+ final binding = WidgetsFlutterBinding.ensureInitialized();
+ FlutterNativeSplash.preserve(widgetsBinding: binding);
+
final appDocDirectory = await getApplicationDocumentsDirectory();
await configureNetworkToolsFlutter(appDocDirectory.path);
- final bool allowed = await ConsentLoader.isConsentPageShown();
- // load app settings
+ final bool allowed = await ConsentLoader.isConsentPageShown();
await appSettings.load();
+
runApp(MyApp(allowed));
+ FlutterNativeSplash.remove();
}
class MyApp extends StatefulWidget {
diff --git a/lib/pages/host_scan_page/host_scan_bloc/host_scan_bloc.dart b/lib/pages/host_scan_page/host_scan_bloc/host_scan_bloc.dart
index 638f8e9d..fa061228 100644
--- a/lib/pages/host_scan_page/host_scan_bloc/host_scan_bloc.dart
+++ b/lib/pages/host_scan_page/host_scan_bloc/host_scan_bloc.dart
@@ -29,15 +29,17 @@ class HostScanBloc extends Bloc {
String? subnet;
/// List of all ActiveHost devices that got found in the current scan
- List deviceInTheNetworkList = [];
+ final List deviceInTheNetworkList = [];
/// mDNS for each ip
- Map mDnsDevices = {};
+ final Map mDnsDevices = {};
Future _initialized(
Initialized event,
Emitter emit,
) async {
+ deviceInTheNetworkList.clear();
+ mDnsDevices.clear();
emit(const HostScanState.loadInProgress());
ip = await NetworkInfo().getWifiIP();
gatewayIp = appSettings.customSubnet.isNotEmpty
diff --git a/lib/pages/host_scan_page/widgets/host_scan_widget.dart b/lib/pages/host_scan_page/widgets/host_scan_widget.dart
index d0cc8d3a..2308a097 100644
--- a/lib/pages/host_scan_page/widgets/host_scan_widget.dart
+++ b/lib/pages/host_scan_page/widgets/host_scan_widget.dart
@@ -29,10 +29,6 @@ class HostScanWidget extends StatelessWidget {
? 'Searching for devices in ${appSettings.gatewayIP} network'
: 'Searching for devices in your local network',
textAlign: TextAlign.center,
- style: const TextStyle(
- fontSize: 18,
- color: Colors.blue,
- ),
),
],
),
@@ -40,13 +36,13 @@ class HostScanWidget extends StatelessWidget {
);
},
foundNewDevice: (FoundNewDevice value) {
- return _devicesWidget(value.activeHostList);
+ return _devicesWidget(context, value.activeHostList, true);
},
loadFailure: (value) {
return const Text('Failure');
},
loadSuccess: (value) {
- return _devicesWidget(value.activeHostList);
+ return _devicesWidget(context, value.activeHostList, false);
},
error: (Error value) {
return const Text('Error');
@@ -56,13 +52,36 @@ class HostScanWidget extends StatelessWidget {
);
}
- Widget _devicesWidget(List activeHostList) {
+ Widget _devicesWidget(
+ BuildContext context,
+ List activeHostList,
+ bool loading,
+ ) {
return Flex(
direction: Axis.vertical,
children: [
- Padding(
- padding: const EdgeInsets.all(4.0),
- child: Text("Found ${activeHostList.length} devices"),
+ ListTile(
+ title: Text(
+ "Found ${activeHostList.length} devices",
+ textAlign: TextAlign.center,
+ ),
+ trailing: loading
+ ? const Padding(
+ padding: EdgeInsets.all(8.0),
+ child: SizedBox(
+ height: 25.0,
+ width: 25.0,
+ child: Center(child: CircularProgressIndicator.adaptive()),
+ ),
+ )
+ : IconButton(
+ onPressed: () {
+ context
+ .read()
+ .add(const HostScanEvent.initialized());
+ },
+ icon: const Icon(Icons.replay),
+ ),
),
Expanded(
child: ListView.builder(
diff --git a/lib/pages/location_consent_page.dart b/lib/pages/location_consent_page.dart
index f38c53c1..d600e7e9 100644
--- a/lib/pages/location_consent_page.dart
+++ b/lib/pages/location_consent_page.dart
@@ -22,6 +22,7 @@ class _LocationConsentPageState extends State {
padding: MediaQuery.of(context).padding,
child: Column(
children: [
+ const SizedBox(height: 40),
const Text('Made with ❤️ in India'),
const SizedBox(height: 15),
Text(
diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift
index 3ef206f5..433026cd 100644
--- a/macos/Flutter/GeneratedPluginRegistrant.swift
+++ b/macos/Flutter/GeneratedPluginRegistrant.swift
@@ -6,6 +6,7 @@ import FlutterMacOS
import Foundation
import network_info_plus
+import nsd_macos
import package_info_plus
import path_provider_foundation
import shared_preferences_foundation
@@ -13,6 +14,7 @@ import url_launcher_macos
func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
NetworkInfoPlusPlugin.register(with: registry.registrar(forPlugin: "NetworkInfoPlusPlugin"))
+ NsdMacosPlugin.register(with: registry.registrar(forPlugin: "NsdMacosPlugin"))
FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin"))
PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin"))
SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
diff --git a/macos/Podfile.lock b/macos/Podfile.lock
index dd49ecb9..de7eb13e 100644
--- a/macos/Podfile.lock
+++ b/macos/Podfile.lock
@@ -2,6 +2,8 @@ PODS:
- FlutterMacOS (1.0.0)
- network_info_plus (0.0.1):
- FlutterMacOS
+ - nsd_macos (0.0.1):
+ - FlutterMacOS
- package_info_plus (0.0.1):
- FlutterMacOS
- path_provider_foundation (0.0.1):
@@ -16,6 +18,7 @@ PODS:
DEPENDENCIES:
- FlutterMacOS (from `Flutter/ephemeral`)
- network_info_plus (from `Flutter/ephemeral/.symlinks/plugins/network_info_plus/macos`)
+ - nsd_macos (from `Flutter/ephemeral/.symlinks/plugins/nsd_macos/macos`)
- package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`)
- path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`)
- shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`)
@@ -26,6 +29,8 @@ EXTERNAL SOURCES:
:path: Flutter/ephemeral
network_info_plus:
:path: Flutter/ephemeral/.symlinks/plugins/network_info_plus/macos
+ nsd_macos:
+ :path: Flutter/ephemeral/.symlinks/plugins/nsd_macos/macos
package_info_plus:
:path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos
path_provider_foundation:
@@ -38,6 +43,7 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
network_info_plus: f4fbc7877ab7b3294500d9441dfa53cd54972d05
+ nsd_macos: 1a38a38a33adbb396b4c6f303bc076073514cadc
package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce
path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c
shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695
diff --git a/pubspec.yaml b/pubspec.yaml
index d1f5f0f3..01c21381 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -3,7 +3,7 @@ description: A Network Analyzer
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
-version: 1.0.5+20
+version: 1.0.6+23
environment:
sdk: ">=2.17.0 <3.0.0"
@@ -22,8 +22,10 @@ dependencies:
sdk: flutter
# Bloc for state management, replace StatefulWidget
flutter_bloc: ^8.1.1
+ # Native splash screen plugin
+ flutter_native_splash: ^2.4.0
# Annotations for freezed
- freezed_annotation: ^2.2.0
+ freezed_annotation: ^2.4.1
# Service locator
get_it: ^7.2.0
# A composable, multi-platform, Future-based API for HTTP requests.
@@ -33,6 +35,7 @@ dependencies:
# An easy way to create a new isolate, keep it running and communicate with it.
isolate_contactor: ^2.0.0+1
# Discover network info and configure themselves accordingly
+ json_annotation: ^4.8.1
network_info_plus: ^4.0.2
# Helps you discover open ports, devices on subnet and more.
network_tools_flutter: ^2.0.0
@@ -52,15 +55,16 @@ dependencies:
dev_dependencies:
# A build system for Dart code generation and modular compilation.
- build_runner:
+ build_runner: ^2.4.9
flutter_test:
sdk: flutter
# Code generator for unions/pattern-matching/copy.
- freezed: ^2.2.0
+ freezed: ^2.5.0
# Convenient code generator for get_it.
injectable_generator: ^2.1.4
# Collection of lint rules for Dart and Flutter projects.
+ json_serializable: ^6.7.1
lint: ^2.0.1
flutter:
diff --git a/web/index.html b/web/index.html
index 71daa840..1551c8cf 100644
--- a/web/index.html
+++ b/web/index.html
@@ -1,6 +1,4 @@
-
-
-
+
@@ -94,5 +230,6 @@
loadMainDartJs();
}
-
-
+
+
+
\ No newline at end of file
diff --git a/web/splash/img/dark-1x.png b/web/splash/img/dark-1x.png
new file mode 100644
index 00000000..b3dc6346
Binary files /dev/null and b/web/splash/img/dark-1x.png differ
diff --git a/web/splash/img/dark-2x.png b/web/splash/img/dark-2x.png
new file mode 100644
index 00000000..11c0efce
Binary files /dev/null and b/web/splash/img/dark-2x.png differ
diff --git a/web/splash/img/dark-3x.png b/web/splash/img/dark-3x.png
new file mode 100644
index 00000000..e98f59a6
Binary files /dev/null and b/web/splash/img/dark-3x.png differ
diff --git a/web/splash/img/dark-4x.png b/web/splash/img/dark-4x.png
new file mode 100644
index 00000000..ae142e16
Binary files /dev/null and b/web/splash/img/dark-4x.png differ
diff --git a/web/splash/img/light-1x.png b/web/splash/img/light-1x.png
new file mode 100644
index 00000000..f4734ff6
Binary files /dev/null and b/web/splash/img/light-1x.png differ
diff --git a/web/splash/img/light-2x.png b/web/splash/img/light-2x.png
new file mode 100644
index 00000000..da0691f3
Binary files /dev/null and b/web/splash/img/light-2x.png differ
diff --git a/web/splash/img/light-3x.png b/web/splash/img/light-3x.png
new file mode 100644
index 00000000..ffbbd67f
Binary files /dev/null and b/web/splash/img/light-3x.png differ
diff --git a/web/splash/img/light-4x.png b/web/splash/img/light-4x.png
new file mode 100644
index 00000000..58cb0e0d
Binary files /dev/null and b/web/splash/img/light-4x.png differ
diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc
index a0d0bbeb..b59afe29 100644
--- a/windows/flutter/generated_plugin_registrant.cc
+++ b/windows/flutter/generated_plugin_registrant.cc
@@ -6,10 +6,13 @@
#include "generated_plugin_registrant.h"
+#include
#include
#include
void RegisterPlugins(flutter::PluginRegistry* registry) {
+ NsdWindowsPluginCApiRegisterWithRegistrar(
+ registry->GetRegistrarForPlugin("NsdWindowsPluginCApi"));
PermissionHandlerWindowsPluginRegisterWithRegistrar(
registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin"));
UrlLauncherWindowsRegisterWithRegistrar(
diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake
index c20a586d..ce95a89f 100644
--- a/windows/flutter/generated_plugins.cmake
+++ b/windows/flutter/generated_plugins.cmake
@@ -3,6 +3,7 @@
#
list(APPEND FLUTTER_PLUGIN_LIST
+ nsd_windows
permission_handler_windows
url_launcher_windows
)