Compare commits
No commits in common. "master" and "2.12.2_(113)" have entirely different histories.
master
...
2.12.2_(11
51
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
|
@ -1,51 +0,0 @@
|
||||||
name: Report a bug
|
|
||||||
description: |
|
|
||||||
You detected something wrong on the application.
|
|
||||||
labels: ["bug"]
|
|
||||||
body:
|
|
||||||
- type: textarea
|
|
||||||
id: steps
|
|
||||||
attributes:
|
|
||||||
label: Steps to reproduce
|
|
||||||
description: Steps to reproduce the problem you are running into.
|
|
||||||
placeholder: |
|
|
||||||
1. ...
|
|
||||||
2. ...
|
|
||||||
3. ...
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: textarea
|
|
||||||
id: expected-results
|
|
||||||
attributes:
|
|
||||||
label: Expected results
|
|
||||||
description: What is expected to happen.
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: textarea
|
|
||||||
id: actual-results
|
|
||||||
attributes:
|
|
||||||
label: Actual results
|
|
||||||
description: What is actually happening.
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: textarea
|
|
||||||
id: screenshots
|
|
||||||
attributes:
|
|
||||||
label: Screenshots or Video
|
|
||||||
description: |
|
|
||||||
Upload any screenshots or video of the bug.
|
|
||||||
value: |
|
|
||||||
Screenshots or video demonstration
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: textarea
|
|
||||||
id: app-os-details
|
|
||||||
attributes:
|
|
||||||
label: App and OS details
|
|
||||||
description: |
|
|
||||||
Some details about the app version and the OS where you are running the application.
|
|
||||||
value: |
|
|
||||||
- App version: (eg: v2.16.0)
|
|
||||||
- Device OS version: (eg: Android 14)
|
|
||||||
validations:
|
|
||||||
required: true
|
|
32
.github/ISSUE_TEMPLATE/feature_request_agh.yml
vendored
|
@ -1,32 +0,0 @@
|
||||||
name: Request a new feature that has been added to AdGuard Home
|
|
||||||
description: |
|
|
||||||
The AdGuard Home team added recently a new feature that you want on the app.
|
|
||||||
labels: ["agh feature request"]
|
|
||||||
body:
|
|
||||||
- type: textarea
|
|
||||||
id: description
|
|
||||||
attributes:
|
|
||||||
label: Description
|
|
||||||
description: Describe the feature that you want on the app.
|
|
||||||
placeholder: |
|
|
||||||
Write the details here...
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: textarea
|
|
||||||
id: screenshots
|
|
||||||
attributes:
|
|
||||||
label: Screenshots
|
|
||||||
description: Attach some screenshots of where that new feature is located on the web administration panel.
|
|
||||||
placeholder: |
|
|
||||||
Screenshots here.
|
|
||||||
validations:
|
|
||||||
required: true
|
|
||||||
- type: textarea
|
|
||||||
id: version-introduced
|
|
||||||
attributes:
|
|
||||||
label: Version where feature was introduced
|
|
||||||
description: Version of the AdGuard Home server where this feature was introduced.
|
|
||||||
placeholder: |
|
|
||||||
- Version: (eg: v0.107.44)
|
|
||||||
validations:
|
|
||||||
required: true
|
|
20
.github/ISSUE_TEMPLATE/feature_request_app.yml
vendored
|
@ -1,20 +0,0 @@
|
||||||
name: Request a new feature or an improvement for the app itself
|
|
||||||
description: |
|
|
||||||
You want a new feature for the application, or an improvement for an existing one.
|
|
||||||
labels: ["app feature request"]
|
|
||||||
body:
|
|
||||||
- type: markdown
|
|
||||||
id: important-info
|
|
||||||
attributes:
|
|
||||||
value: |
|
|
||||||
ℹ️ IMPORTANT INFO ℹ️
|
|
||||||
Please note that if the functionality is related to data representation, it may not be implemented, as AdGuard Home Manager depends on the capabilities of the AdGuard Home API.
|
|
||||||
- type: textarea
|
|
||||||
id: description
|
|
||||||
attributes:
|
|
||||||
label: Description
|
|
||||||
description: Describe the feature that you want on the app.
|
|
||||||
placeholder: |
|
|
||||||
Write the details here...
|
|
||||||
validations:
|
|
||||||
required: true
|
|
19
.github/ISSUE_TEMPLATE/question.yml
vendored
|
@ -1,19 +0,0 @@
|
||||||
name: You have a question about the app
|
|
||||||
description: |
|
|
||||||
You want ask something that's not related with a feature request or a bug.
|
|
||||||
labels: ["question"]
|
|
||||||
body:
|
|
||||||
- type: markdown
|
|
||||||
id: important-info
|
|
||||||
attributes:
|
|
||||||
value: |
|
|
||||||
Having problems while adding a connection to a server? Check out [this guide](https://github.com/JGeek00/adguard-home-manager/wiki/Create-a-connection).
|
|
||||||
- type: textarea
|
|
||||||
id: question
|
|
||||||
attributes:
|
|
||||||
label: Question
|
|
||||||
description: Write your question here giving the maximum detail possible.
|
|
||||||
placeholder: |
|
|
||||||
Write your question here...
|
|
||||||
validations:
|
|
||||||
required: true
|
|
123
.github/workflows/release-beta.yaml
vendored
Normal file
|
@ -0,0 +1,123 @@
|
||||||
|
name: Compile and release beta build
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
branches:
|
||||||
|
- beta
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-android:
|
||||||
|
name: Build Android .apk and .aab
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
ANDROID_AAB_RELEASE_PATH: build/app/outputs/bundle/release
|
||||||
|
ANDROID_APK_RELEASE_PATH: build/app/outputs/apk/release
|
||||||
|
outputs:
|
||||||
|
VERSION_NAME: ${{ steps.save_version.outputs.version_name }}
|
||||||
|
VERSION_NUMBER: ${{ steps.save_version.outputs.version_number }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
ref: beta
|
||||||
|
- name: Decode android/app/keystore.jks
|
||||||
|
run: echo "${{ secrets.KEYSTORE_JKS }}" | base64 --decode > android/app/keystore.jks
|
||||||
|
- name: Decode android/key.properties
|
||||||
|
run: echo "${{ secrets.KEY_PROPERTIES }}" | base64 --decode > android/key.properties
|
||||||
|
- name: Decode .env
|
||||||
|
run: echo "${{ secrets.ENV }}" | base64 --decode > .env
|
||||||
|
- name: Read pubspec.yaml
|
||||||
|
uses: adore-me/read-yaml@v1.0.0
|
||||||
|
id: read_pubspec
|
||||||
|
with:
|
||||||
|
file: './pubspec.yaml'
|
||||||
|
key-path: '["version"]'
|
||||||
|
- name: Save version on env variable
|
||||||
|
id: save_version
|
||||||
|
run: |
|
||||||
|
version=${{ steps.read_pubspec.outputs.data }}
|
||||||
|
IFS='+'
|
||||||
|
read -r -a split <<< "$version"
|
||||||
|
echo "VERSION_NAME=$(echo ${split[0]})" >> $GITHUB_ENV
|
||||||
|
echo "version_name=${split[0]}" >> $GITHUB_OUTPUT
|
||||||
|
echo "version_number=${split[1]}" >> $GITHUB_OUTPUT
|
||||||
|
- name: Update KeyStore password in gradle properties
|
||||||
|
run: sed -i 's/#{KEYSTORE_PASS}#/${{ secrets.KEYSTORE_PASS }}/g' android/key.properties
|
||||||
|
- name: Update KeyStore key password in gradle properties
|
||||||
|
run: sed -i 's/#{KEYSTORE_KEY_PASS}#/${{ secrets.KEYSTORE_KEY_PASS }}/g' android/key.properties
|
||||||
|
- uses: actions/setup-java@v3
|
||||||
|
with:
|
||||||
|
distribution: 'zulu'
|
||||||
|
java-version: '18.x'
|
||||||
|
- uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: "stable"
|
||||||
|
- run: flutter clean
|
||||||
|
- run: flutter pub get
|
||||||
|
- run: flutter build apk --release
|
||||||
|
- run: flutter build appbundle --release
|
||||||
|
- name: Rename apk
|
||||||
|
run: mv $ANDROID_APK_RELEASE_PATH/app-release.apk $ANDROID_APK_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk
|
||||||
|
- name: Rename aab
|
||||||
|
run: mv $ANDROID_AAB_RELEASE_PATH/app-release.aab $ANDROID_AAB_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
- name: Copy apk to project root
|
||||||
|
run: cp $ANDROID_APK_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk
|
||||||
|
- name: Copy aab to project root
|
||||||
|
run: cp $ANDROID_AAB_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: android
|
||||||
|
path: |
|
||||||
|
AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk
|
||||||
|
release-builds-github:
|
||||||
|
name: Release beta build to GitHub
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: [build-android]
|
||||||
|
env:
|
||||||
|
VERSION_NAME: ${{ needs.build-android.outputs.VERSION_NAME }}
|
||||||
|
VERSION_NUMBER: ${{ needs.build-android.outputs.VERSION_NUMBER }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
ref: beta
|
||||||
|
- name: Create builds directory
|
||||||
|
run: mkdir releases
|
||||||
|
- name: Download Android artifacts
|
||||||
|
uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: android
|
||||||
|
path: releases/
|
||||||
|
- name: Release to GitHub
|
||||||
|
uses: ncipollo/release-action@v1
|
||||||
|
with:
|
||||||
|
artifacts: "releases/*"
|
||||||
|
token: ${{ secrets.GH_TOKEN }}
|
||||||
|
tag: '${{ env.VERSION_NAME }}_(${{ env.VERSION_NUMBER }})'
|
||||||
|
name: v${{ env.VERSION_NAME }}
|
||||||
|
draft: true
|
||||||
|
prerelease: true
|
||||||
|
commit: ${{ github.sha }}
|
||||||
|
release-build-google-play:
|
||||||
|
name: Release Android beta build to the Google Play Store
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: [build-android]
|
||||||
|
env:
|
||||||
|
VERSION_NAME: ${{ needs.build-android.outputs.VERSION_NAME }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
with:
|
||||||
|
ref: beta
|
||||||
|
- name: Download Android artifacts
|
||||||
|
uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: android
|
||||||
|
- name: Release app to Google Play
|
||||||
|
uses: r0adkll/upload-google-play@v1
|
||||||
|
with:
|
||||||
|
serviceAccountJsonPlainText: ${{ secrets.PLAYSTORE_ACCOUNT_KEY }}
|
||||||
|
packageName: com.jgeek00.adguard_home_manager
|
||||||
|
releaseFiles: AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
track: beta
|
||||||
|
status: draft
|
||||||
|
releaseName: ${{ env.VERSION_NAME }}
|
302
.github/workflows/release-stable.yaml
vendored
Normal file
|
@ -0,0 +1,302 @@
|
||||||
|
name: Compile and release production build
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-android:
|
||||||
|
name: Build Android .apk and .aab
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
ANDROID_AAB_RELEASE_PATH: build/app/outputs/bundle/release
|
||||||
|
ANDROID_APK_RELEASE_PATH: build/app/outputs/apk/release
|
||||||
|
outputs:
|
||||||
|
VERSION_NAME: ${{ steps.save_version.outputs.version_name }}
|
||||||
|
VERSION_NUMBER: ${{ steps.save_version.outputs.version_number }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Decode android/app/keystore.jks
|
||||||
|
run: echo "${{ secrets.KEYSTORE_JKS }}" | base64 --decode > android/app/keystore.jks
|
||||||
|
- name: Decode android/key.properties
|
||||||
|
run: echo "${{ secrets.KEY_PROPERTIES }}" | base64 --decode > android/key.properties
|
||||||
|
- name: Decode .env
|
||||||
|
run: echo "${{ secrets.ENV }}" | base64 --decode > .env
|
||||||
|
- name: Read pubspec.yaml
|
||||||
|
uses: adore-me/read-yaml@v1.0.0
|
||||||
|
id: read_pubspec
|
||||||
|
with:
|
||||||
|
file: './pubspec.yaml'
|
||||||
|
key-path: '["version"]'
|
||||||
|
- name: Save version on env variable
|
||||||
|
id: save_version
|
||||||
|
run: |
|
||||||
|
version=${{ steps.read_pubspec.outputs.data }}
|
||||||
|
IFS='+'
|
||||||
|
read -r -a split <<< "$version"
|
||||||
|
echo "VERSION_NAME=$(echo ${split[0]})" >> $GITHUB_ENV
|
||||||
|
echo "version_name=${split[0]}" >> $GITHUB_OUTPUT
|
||||||
|
echo "version_number=${split[1]}" >> $GITHUB_OUTPUT
|
||||||
|
- name: Update KeyStore password in gradle properties
|
||||||
|
run: sed -i 's/#{KEYSTORE_PASS}#/${{ secrets.KEYSTORE_PASS }}/g' android/key.properties
|
||||||
|
- name: Update KeyStore key password in gradle properties
|
||||||
|
run: sed -i 's/#{KEYSTORE_KEY_PASS}#/${{ secrets.KEYSTORE_KEY_PASS }}/g' android/key.properties
|
||||||
|
- uses: actions/setup-java@v3
|
||||||
|
with:
|
||||||
|
distribution: 'zulu'
|
||||||
|
java-version: '18.x'
|
||||||
|
- uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: "stable"
|
||||||
|
- run: flutter clean
|
||||||
|
- run: flutter pub get
|
||||||
|
- run: flutter build apk --release
|
||||||
|
- run: flutter build appbundle --release
|
||||||
|
- name: Rename apk
|
||||||
|
run: mv $ANDROID_APK_RELEASE_PATH/app-release.apk $ANDROID_APK_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk
|
||||||
|
- name: Rename aab
|
||||||
|
run: mv $ANDROID_AAB_RELEASE_PATH/app-release.aab $ANDROID_AAB_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
- name: Copy apk to project root
|
||||||
|
run: cp $ANDROID_APK_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk
|
||||||
|
- name: Copy aab to project root
|
||||||
|
run: cp $ANDROID_AAB_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: android
|
||||||
|
path: |
|
||||||
|
AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.apk
|
||||||
|
build-macos:
|
||||||
|
name: Build macOS .dmg
|
||||||
|
runs-on: macos-latest
|
||||||
|
env:
|
||||||
|
MACOS_APP_RELEASE_PATH: build/macos/Build/Products/Release
|
||||||
|
outputs:
|
||||||
|
VERSION_NAME: ${{ steps.save_version.outputs.version_name }}
|
||||||
|
VERSION_NUMBER: ${{ steps.save_version.outputs.version_number }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Decode .env
|
||||||
|
run: echo "${{ secrets.ENV }}" | base64 --decode > .env
|
||||||
|
- name: Read pubspec.yaml
|
||||||
|
uses: adore-me/read-yaml@v1.0.0
|
||||||
|
id: read_pubspec
|
||||||
|
with:
|
||||||
|
file: './pubspec.yaml'
|
||||||
|
key-path: '["version"]'
|
||||||
|
- name: Save version on env variable
|
||||||
|
id: save_version
|
||||||
|
run: |
|
||||||
|
version=${{ steps.read_pubspec.outputs.data }}
|
||||||
|
IFS='+'
|
||||||
|
read -r -a split <<< "$version"
|
||||||
|
echo "VERSION_NAME=$(echo ${split[0]})" >> $GITHUB_ENV
|
||||||
|
echo "version_name=${split[0]}" >> $GITHUB_OUTPUT
|
||||||
|
echo "version_number=${split[1]}" >> $GITHUB_OUTPUT
|
||||||
|
- uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: "stable"
|
||||||
|
- run: flutter clean
|
||||||
|
- run: flutter pub get
|
||||||
|
- run: flutter build macos --release
|
||||||
|
- name: Install the Apple certificate and sign the application
|
||||||
|
env:
|
||||||
|
APPLE_CERTIFICATE: ${{ secrets.APPLE_CERTIFICATE }}
|
||||||
|
APPLE_CERTIFICATE_PWD: ${{ secrets.APPLE_CERTIFICATE_PWD }}
|
||||||
|
APPLE_KEYCHAIN_PWD: ${{ secrets.APPLE_KEYCHAIN_PWD }}
|
||||||
|
APPLE_IDENTITY_ID: ${{ secrets.APPLE_IDENTITY_ID }}
|
||||||
|
run: |
|
||||||
|
echo "$APPLE_CERTIFICATE" | base64 --decode > certificate.p12
|
||||||
|
security create-keychain -p $APPLE_KEYCHAIN_PWD build.keychain
|
||||||
|
security default-keychain -s build.keychain
|
||||||
|
security unlock-keychain -p $APPLE_KEYCHAIN_PWD build.keychain
|
||||||
|
security import certificate.p12 -k build.keychain -P $APPLE_CERTIFICATE_PWD -T /usr/bin/codesign
|
||||||
|
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $APPLE_KEYCHAIN_PWD build.keychain
|
||||||
|
/usr/bin/codesign --force -s "$APPLE_IDENTITY_ID" $MACOS_APP_RELEASE_PATH/AdGuard\ Home\ Manager.app -v
|
||||||
|
- name: Create folder to build dmg
|
||||||
|
run: mkdir $MACOS_APP_RELEASE_PATH/AdGuard\ Home\ Manager
|
||||||
|
- name: Copy app into folder
|
||||||
|
run: cp -r $MACOS_APP_RELEASE_PATH/AdGuard\ Home\ Manager.app $MACOS_APP_RELEASE_PATH/AdGuard\ Home\ Manager/AdGuard\ Home\ Manager.app
|
||||||
|
- name: Generate symbolic link to Applications dir
|
||||||
|
run: ln -s /Applications $MACOS_APP_RELEASE_PATH/AdGuard\ Home\ Manager
|
||||||
|
- name: Generate dmg
|
||||||
|
run: hdiutil create -srcfolder $MACOS_APP_RELEASE_PATH/AdGuard\ Home\ Manager $MACOS_APP_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_macOS_Universal.dmg
|
||||||
|
- name: Copy dmg to project root
|
||||||
|
run: cp $MACOS_APP_RELEASE_PATH/AdGuardHomeManager_${{ env.VERSION_NAME }}_macOS_Universal.dmg AdGuardHomeManager_${{ env.VERSION_NAME }}_macOS_Universal.dmg
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: macos
|
||||||
|
path: AdGuardHomeManager_${{ env.VERSION_NAME }}_macOS_Universal.dmg
|
||||||
|
build-linux:
|
||||||
|
name: Build Linux .tar.gz and .deb
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
outputs:
|
||||||
|
VERSION_NAME: ${{ steps.save_version.outputs.version_name }}
|
||||||
|
VERSION_NUMBER: ${{ steps.save_version.outputs.version_number }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Decode .env
|
||||||
|
run: echo "${{ secrets.ENV }}" | base64 --decode > .env
|
||||||
|
- name: Read pubspec.yaml
|
||||||
|
uses: adore-me/read-yaml@v1.0.0
|
||||||
|
id: read_pubspec
|
||||||
|
with:
|
||||||
|
file: './pubspec.yaml'
|
||||||
|
key-path: '["version"]'
|
||||||
|
- name: Save version on env variable
|
||||||
|
id: save_version
|
||||||
|
run: |
|
||||||
|
version=${{ steps.read_pubspec.outputs.data }}
|
||||||
|
IFS='+'
|
||||||
|
read -r -a split <<< "$version"
|
||||||
|
echo "VERSION_NAME=$(echo ${split[0]})" >> $GITHUB_ENV
|
||||||
|
echo "version_name=${split[0]}" >> $GITHUB_OUTPUT
|
||||||
|
echo "version_number=${split[1]}" >> $GITHUB_OUTPUT
|
||||||
|
- name: Update version in debian.yaml
|
||||||
|
run: sed -i 's/<REPLACE_VERSION_NUMBER_ACTIONS>/${{ env.VERSION_NAME }}/g' debian/debian.yaml
|
||||||
|
- name: Update dependencies list
|
||||||
|
run: sudo apt-get update
|
||||||
|
- name: Install dependencies
|
||||||
|
run: sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev
|
||||||
|
- uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: "stable"
|
||||||
|
- run: flutter clean
|
||||||
|
- run: flutter pub get
|
||||||
|
- run: flutter build linux --release
|
||||||
|
- name: Install flutter_to_debian
|
||||||
|
run: dart pub global activate flutter_to_debian
|
||||||
|
- name: Generate .deb package
|
||||||
|
run: flutter_to_debian
|
||||||
|
- name: Move .deb package to project root
|
||||||
|
run: mv debian/packages/AdGuardHomeManager_${{ env.VERSION_NAME }}_amd64.deb AdGuardHomeManager_${{ env.VERSION_NAME }}_Linux_amd64.deb
|
||||||
|
- name: Generate .tar.gz package
|
||||||
|
uses: a7ul/tar-action@v1.1.3
|
||||||
|
id: compress
|
||||||
|
with:
|
||||||
|
command: c
|
||||||
|
cwd: build/linux/x64/release/bundle
|
||||||
|
files: |
|
||||||
|
./data
|
||||||
|
./lib
|
||||||
|
./AdGuardHomeManager
|
||||||
|
outPath: AdGuardHomeManager_${{ env.VERSION_NAME }}_Linux.tar.gz
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: linux
|
||||||
|
path: |
|
||||||
|
AdGuardHomeManager_${{ env.VERSION_NAME }}_Linux_amd64.deb
|
||||||
|
AdGuardHomeManager_${{ env.VERSION_NAME }}_Linux.tar.gz
|
||||||
|
build-windows:
|
||||||
|
name: Build Windows installer
|
||||||
|
runs-on: windows-latest
|
||||||
|
outputs:
|
||||||
|
VERSION_NAME: ${{ steps.save_version.outputs.version_name }}
|
||||||
|
VERSION_NUMBER: ${{ steps.save_version.outputs.version_number }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Decode .env
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
[IO.File]::WriteAllBytes('.env', [Convert]::FromBase64String('${{ secrets.ENV }}'))
|
||||||
|
- name: Read pubspec.yaml
|
||||||
|
uses: adore-me/read-yaml@v1.0.0
|
||||||
|
id: read_pubspec
|
||||||
|
with:
|
||||||
|
file: './pubspec.yaml'
|
||||||
|
key-path: '["version"]'
|
||||||
|
- name: Save version on env variable
|
||||||
|
shell: bash
|
||||||
|
id: save_version
|
||||||
|
run: |
|
||||||
|
version=${{ steps.read_pubspec.outputs.data }}
|
||||||
|
IFS='+'
|
||||||
|
read -r -a split <<< "$version"
|
||||||
|
echo "VERSION_NAME=$(echo ${split[0]})" >> $GITHUB_ENV
|
||||||
|
echo "version_name=${split[0]}" >> $GITHUB_OUTPUT
|
||||||
|
echo "version_number=${split[1]}" >> $GITHUB_OUTPUT
|
||||||
|
- name: Update version in innosetup config file
|
||||||
|
shell: pwsh
|
||||||
|
run: |
|
||||||
|
(Get-Content windows/innosetup_installer_builder.iss) -replace '<REPLACE_VERSION_ACTIONS>', '${{ env.VERSION_NAME }}' | Out-File -encoding ASCII windows/innosetup_installer_builder.iss
|
||||||
|
- uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: "stable"
|
||||||
|
- run: flutter clean
|
||||||
|
- run: flutter pub get
|
||||||
|
- run: flutter build windows --release
|
||||||
|
- name: Build installer witn innosetup
|
||||||
|
run: iscc /Q windows/innosetup_installer_builder.iss
|
||||||
|
- name: Move installer file to root directory
|
||||||
|
run: move build/windows/aghm_installer.exe AdGuardHomeManager_${{ env.VERSION_NAME }}_Windows_x64.exe
|
||||||
|
- name: Upload artifact
|
||||||
|
uses: actions/upload-artifact@v3
|
||||||
|
with:
|
||||||
|
name: windows
|
||||||
|
path: AdGuardHomeManager_${{ env.VERSION_NAME }}_Windows_x64.exe
|
||||||
|
release-builds-github:
|
||||||
|
name: Release builds to GitHub
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: [build-android, build-macos, build-linux, build-windows]
|
||||||
|
env:
|
||||||
|
VERSION_NAME: ${{ needs.build-android.outputs.VERSION_NAME }}
|
||||||
|
VERSION_NUMBER: ${{ needs.build-android.outputs.VERSION_NUMBER }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Create builds directory
|
||||||
|
run: mkdir releases
|
||||||
|
- name: Download Android artifacts
|
||||||
|
uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: android
|
||||||
|
path: releases/
|
||||||
|
- name: Download macOS artifacts
|
||||||
|
uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: macos
|
||||||
|
path: releases/
|
||||||
|
- name: Download Linux artifacts
|
||||||
|
uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: linux
|
||||||
|
path: releases/
|
||||||
|
- name: Download Windows artifacts
|
||||||
|
uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: windows
|
||||||
|
path: releases/
|
||||||
|
- name: Release to GitHub
|
||||||
|
uses: ncipollo/release-action@v1
|
||||||
|
with:
|
||||||
|
artifacts: "releases/*"
|
||||||
|
token: ${{ secrets.GH_TOKEN }}
|
||||||
|
tag: '${{ env.VERSION_NAME }}_(${{ env.VERSION_NUMBER }})'
|
||||||
|
name: v${{ env.VERSION_NAME }}
|
||||||
|
draft: true
|
||||||
|
prerelease: false
|
||||||
|
commit: ${{ github.sha }}
|
||||||
|
release-build-google-play:
|
||||||
|
name: Release Android build to the Google Play Store
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: [build-android, build-macos, build-linux, build-windows]
|
||||||
|
env:
|
||||||
|
VERSION_NAME: ${{ needs.build-android.outputs.VERSION_NAME }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Download Android artifacts
|
||||||
|
uses: actions/download-artifact@v3
|
||||||
|
with:
|
||||||
|
name: android
|
||||||
|
- name: Release app to Google Play
|
||||||
|
uses: r0adkll/upload-google-play@v1
|
||||||
|
with:
|
||||||
|
serviceAccountJsonPlainText: ${{ secrets.PLAYSTORE_ACCOUNT_KEY }}
|
||||||
|
packageName: com.jgeek00.adguard_home_manager
|
||||||
|
releaseFiles: AdGuardHomeManager_${{ env.VERSION_NAME }}_Android.aab
|
||||||
|
track: production
|
||||||
|
status: draft
|
||||||
|
releaseName: ${{ env.VERSION_NAME }}
|
4
.gitignore
vendored
|
@ -5,11 +5,9 @@
|
||||||
*.swp
|
*.swp
|
||||||
.DS_Store
|
.DS_Store
|
||||||
.atom/
|
.atom/
|
||||||
.build/
|
|
||||||
.buildlog/
|
.buildlog/
|
||||||
.history
|
.history
|
||||||
.svn/
|
.svn/
|
||||||
.swiftpm/
|
|
||||||
migrate_working_dir/
|
migrate_working_dir/
|
||||||
|
|
||||||
# Env
|
# Env
|
||||||
|
@ -51,5 +49,3 @@ app.*.map.json
|
||||||
/debian/packages
|
/debian/packages
|
||||||
|
|
||||||
untranslated.json
|
untranslated.json
|
||||||
|
|
||||||
android/app/.cxx
|
|
||||||
|
|
20
.vscode/settings.json
vendored
|
@ -1,20 +0,0 @@
|
||||||
{
|
|
||||||
"editor.formatOnSave": false,
|
|
||||||
"editor.formatOnPaste": false,
|
|
||||||
"editor.formatOnType": false,
|
|
||||||
"editor.defaultFormatter": "Dart-Code.flutter",
|
|
||||||
"dart.lineLength": 120,
|
|
||||||
"[dart]": {
|
|
||||||
"editor.rulers": [
|
|
||||||
120
|
|
||||||
],
|
|
||||||
"editor.defaultFormatter": "Dart-Code.dart-code",
|
|
||||||
"editor.formatOnSave": false,
|
|
||||||
"editor.formatOnPaste": false,
|
|
||||||
"editor.formatOnType": false
|
|
||||||
},
|
|
||||||
"cSpell.ignorePaths": [
|
|
||||||
"/pubspec.yaml",
|
|
||||||
"/.github/workflows"
|
|
||||||
],
|
|
||||||
}
|
|
61
README.md
|
@ -40,41 +40,22 @@ Check the privacy policy [here](https://github.com/JGeek00/adguard-home-manager/
|
||||||
This is an unofficial application. The AdGuard Home team and the development of the AdGuard Home software is not related in any way with this application.
|
This is an unofficial application. The AdGuard Home team and the development of the AdGuard Home software is not related in any way with this application.
|
||||||
|
|
||||||
## Recommended configuration and lists
|
## Recommended configuration and lists
|
||||||
On [this repository](https://github.com/juanico10/Pihole_list) you can find a recommended configuration for AdGuard Home and some lists. Thanks to [juanico10](https://github.com/juanico10).
|
On [this repository](https://github.com/JuanRodenas/Pihole_list) you can find a recommended configuration for AdGuard Home and some lists. Thanks to [JuanRodenas](https://github.com/JuanRodenas).
|
||||||
|
|
||||||
## Donations
|
|
||||||
If you like the project and you want to contribute with the development, you can [become a sponsor on GitHub](https://github.com/sponsors/JGeek00), or you can donate using PayPal.
|
|
||||||
|
|
||||||
<div align="center">
|
|
||||||
<a href="https://www.paypal.com/donate/?hosted_button_id=T63UK6AVL3MG8">
|
|
||||||
<img src="https://raw.githubusercontent.com/stefan-niedermann/paypal-donate-button/master/paypal-donate-button.png" alt="Donate with PayPal" height="100" />
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
## Generate production build
|
## Generate production build
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
|
||||||
<b>Prerequisites</b>
|
|
||||||
<ol>
|
|
||||||
<li>Open <code>pubspec.yaml</code> and change the version name and the version number.</li>
|
|
||||||
<li>Run <code>flutter clean</code>.</li>
|
|
||||||
<li>Run <code>flutter pub get</code>.</li>
|
|
||||||
</ol>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<b>Android</b>
|
|
||||||
<ol>
|
|
||||||
<li>Make sure you have your <code>key.properties</code> file at <code>android/</code>, with all the required values of your signing key correctly set up.</li>
|
|
||||||
<li>Make sure you have your keystore file at <code>android/app</code>.</li>
|
|
||||||
<li>Run <code>flutter build apk --release</code> to compile the APK.</li>
|
|
||||||
<li>The .apk package is located at <code>build/app/outputs/flutter-apk/app-release.apk</code>.</li>
|
|
||||||
</ol>
|
|
||||||
</li>
|
|
||||||
<li>
|
<li>
|
||||||
<b>macOS</b>
|
<b>macOS</b>
|
||||||
<ol>
|
<ol>
|
||||||
<li>Run <code>flutter build macos --release</code> to compile the production build.</li>
|
<li>flutter clean</li>
|
||||||
<li>The .app package is located at <code>build/macos/Build/Products/Release/AdGuard Home Manager.app</code>.</li>
|
<li>flutter pub get</li>
|
||||||
|
<li>flutter build macos --release</li>
|
||||||
|
<li>Open macos/Runner.xcworkspace on Xcode</li>
|
||||||
|
<li>Make sure all the pods have the minimum deployment version at 10.14</li>
|
||||||
|
<li>Select Runner > Targets Runner</li>
|
||||||
|
<li>Make sure the Version and Build numbers are correct</li>
|
||||||
|
<li>Click on Product menu and on Archive</li>
|
||||||
|
<li>Select the first on the list and click on Distribute app, select Copy App and click on Next</li>
|
||||||
</ol>
|
</ol>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
|
@ -86,22 +67,24 @@ If you like the project and you want to contribute with the development, you can
|
||||||
</ol>
|
</ol>
|
||||||
<b>Build</b>
|
<b>Build</b>
|
||||||
<ol>
|
<ol>
|
||||||
<li>Open <code>debian.yaml</code> file inside debian/ and update the version number</li>
|
<li>Open debian.yaml file inside debian/ and update the version number</li>
|
||||||
<li>run <code>rps build linux</code></li>
|
<li>run <code>rps build linux</code></li>
|
||||||
<li>The .tar.gz is at <code>build/linux/x64/release/bundle</code></li>
|
<li>The .tar.gz is at build/linux/x64/release/bundle</li>
|
||||||
<li>The .deb package is at <code>build/linux/x64/release/debian/</code></li>
|
<li>The .deb package is at debian/packages</li>
|
||||||
</ol>
|
</ol>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>Windows</b>
|
<b>Windows</b>
|
||||||
<ol>
|
<ol>
|
||||||
<li>Run <code>flutter build windows --release</code>.</li>
|
<li>flutter clean</li>
|
||||||
|
<li>flutter pub get</li>
|
||||||
|
<li>flutter build windows</li>
|
||||||
<li>Open Inno Setup Compiler application and load the script</li>
|
<li>Open Inno Setup Compiler application and load the script</li>
|
||||||
<li>The script is located at <code>windows/innosetup_installer_builder.iss</code></li>
|
<li>The script is located at windows/innosetup_installer_builder.iss</li>
|
||||||
<li>Update the version number and save the changes</li>
|
<li>Update the version number and save the changes</li>
|
||||||
<li>Click on the Compile button</li>
|
<li>Click on the Compile button</li>
|
||||||
<li>The installer will be generated at <code>build/windows/aghm_installer.exe</code>.</li>
|
<li>The installer will be generated at build/windows/aghm_installer.exe</li>
|
||||||
</ol>
|
</ol>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -113,6 +96,7 @@ If you like the project and you want to contribute with the development, you can
|
||||||
- [expandable](https://pub.dev/packages/expandable)
|
- [expandable](https://pub.dev/packages/expandable)
|
||||||
- [package info plus](https://pub.dev/packages/package_info_plus)
|
- [package info plus](https://pub.dev/packages/package_info_plus)
|
||||||
- [flutter phoenix](https://pub.dev/packages/flutter_phoenix)
|
- [flutter phoenix](https://pub.dev/packages/flutter_phoenix)
|
||||||
|
- [flutter displaymode](https://pub.dev/packages/flutter_displaymode)
|
||||||
- [flutter launcher icons](https://pub.dev/packages/flutter_launcher_icons)
|
- [flutter launcher icons](https://pub.dev/packages/flutter_launcher_icons)
|
||||||
- [flutter native splash](https://pub.dev/packages/flutter_native_splash)
|
- [flutter native splash](https://pub.dev/packages/flutter_native_splash)
|
||||||
- [intl](https://pub.dev/packages/intl)
|
- [intl](https://pub.dev/packages/intl)
|
||||||
|
@ -120,8 +104,10 @@ If you like the project and you want to contribute with the development, you can
|
||||||
- [dynamic color](https://pub.dev/packages/dynamic_color)
|
- [dynamic color](https://pub.dev/packages/dynamic_color)
|
||||||
- [device info](https://pub.dev/packages/device_info)
|
- [device info](https://pub.dev/packages/device_info)
|
||||||
- [fl chart](https://pub.dev/packages/fl_chart)
|
- [fl chart](https://pub.dev/packages/fl_chart)
|
||||||
|
- [flutter web browser](https://pub.dev/packages/flutter_web_browser)
|
||||||
- [flutter svg](https://pub.dev/packages/flutter_svg)
|
- [flutter svg](https://pub.dev/packages/flutter_svg)
|
||||||
- [percent indicator](https://pub.dev/packages/percent_indicator)
|
- [percent indicator](https://pub.dev/packages/percent_indicator)
|
||||||
|
- [store checker](https://pub.dev/packages/store_checker)
|
||||||
- [flutter markdown](https://pub.dev/packages/flutter_markdown)
|
- [flutter markdown](https://pub.dev/packages/flutter_markdown)
|
||||||
- [markdown](https://pub.dev/packages/markdown)
|
- [markdown](https://pub.dev/packages/markdown)
|
||||||
- [html](https://pub.dev/packages/html)
|
- [html](https://pub.dev/packages/html)
|
||||||
|
@ -136,11 +122,6 @@ If you like the project and you want to contribute with the development, you can
|
||||||
- [flutter reorderable list](https://pub.dev/packages/flutter_reorderable_list)
|
- [flutter reorderable list](https://pub.dev/packages/flutter_reorderable_list)
|
||||||
- [pie chart](https://pub.dev/packages/pie_chart)
|
- [pie chart](https://pub.dev/packages/pie_chart)
|
||||||
- [segmented button slide](https://pub.dev/packages/segmented_button_slide)
|
- [segmented button slide](https://pub.dev/packages/segmented_button_slide)
|
||||||
- [timezone](https://pub.dev/packages/timezone)
|
|
||||||
- [url launcher](https://pub.dev/packages/url_launcher)
|
|
||||||
- [flutter custom tabs](https://pub.dev/packages/flutter_custom_tabs)
|
|
||||||
- [shared preferences](https://pub.dev/packages/shared_preferences)
|
|
||||||
- [window manager](https://pub.dev/packages/window_manager)
|
|
||||||
|
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,3 @@
|
||||||
plugins {
|
|
||||||
id "com.android.application"
|
|
||||||
id "kotlin-android"
|
|
||||||
id "dev.flutter.flutter-gradle-plugin"
|
|
||||||
}
|
|
||||||
|
|
||||||
def localProperties = new Properties()
|
def localProperties = new Properties()
|
||||||
def localPropertiesFile = rootProject.file('local.properties')
|
def localPropertiesFile = rootProject.file('local.properties')
|
||||||
if (localPropertiesFile.exists()) {
|
if (localPropertiesFile.exists()) {
|
||||||
|
@ -12,6 +6,11 @@ if (localPropertiesFile.exists()) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
def flutterRoot = localProperties.getProperty('flutter.sdk')
|
||||||
|
if (flutterRoot == null) {
|
||||||
|
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
|
||||||
|
}
|
||||||
|
|
||||||
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
|
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
|
||||||
if (flutterVersionCode == null) {
|
if (flutterVersionCode == null) {
|
||||||
flutterVersionCode = '1'
|
flutterVersionCode = '1'
|
||||||
|
@ -22,6 +21,10 @@ if (flutterVersionName == null) {
|
||||||
flutterVersionName = '1.0'
|
flutterVersionName = '1.0'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
apply plugin: 'com.android.application'
|
||||||
|
apply plugin: 'kotlin-android'
|
||||||
|
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
|
||||||
|
|
||||||
def keystoreProperties = new Properties()
|
def keystoreProperties = new Properties()
|
||||||
def keystorePropertiesFile = rootProject.file('key.properties')
|
def keystorePropertiesFile = rootProject.file('key.properties')
|
||||||
if (keystorePropertiesFile.exists()) {
|
if (keystorePropertiesFile.exists()) {
|
||||||
|
@ -29,9 +32,8 @@ if (keystorePropertiesFile.exists()) {
|
||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace "com.jgeek00.adguard_home_manager"
|
compileSdkVersion 33
|
||||||
compileSdkVersion 35
|
ndkVersion flutter.ndkVersion
|
||||||
ndkVersion "26.1.10909125"
|
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_1_8
|
||||||
|
@ -47,9 +49,12 @@ android {
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
|
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||||
applicationId "com.jgeek00.adguard_home_manager"
|
applicationId "com.jgeek00.adguard_home_manager"
|
||||||
|
// You can update the following values to match your application needs.
|
||||||
|
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.
|
||||||
minSdkVersion 26
|
minSdkVersion 26
|
||||||
targetSdkVersion 35
|
targetSdkVersion 33
|
||||||
versionCode flutterVersionCode.toInteger()
|
versionCode flutterVersionCode.toInteger()
|
||||||
versionName flutterVersionName
|
versionName flutterVersionName
|
||||||
}
|
}
|
||||||
|
@ -75,5 +80,5 @@ flutter {
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.20"
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
|
||||||
}
|
}
|
||||||
|
|
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 9.5 KiB After Width: | Height: | Size: 6.1 KiB |
Before Width: | Height: | Size: 4.4 KiB After Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 16 KiB |
BIN
android/app/src/main/res/drawable-night-xxxhdpi/splash.png
Executable file → Normal file
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 16 KiB |
BIN
android/app/src/main/res/drawable-xxxhdpi/splash.png
Executable file → Normal file
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 20 KiB |
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<background android:drawable="@color/ic_launcher_background"/>
|
<background android:drawable="@color/ic_launcher_background"/>
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
<foreground android:drawable="@drawable/ic_launcher_foreground"/>
|
||||||
|
|
||||||
<monochrome android:drawable="@mipmap/ic_launcher_monochrome" />
|
<monochrome android:drawable="@mipmap/ic_launcher_monochrome" />
|
||||||
</adaptive-icon>
|
</adaptive-icon>
|
|
@ -1,5 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<background android:drawable="@color/ic_launcher_background"/>
|
|
||||||
<foreground android:drawable="@mipmap/ic_launcher_foreground"/>
|
|
||||||
</adaptive-icon>
|
|
BIN
android/app/src/main/res/mipmap-hdpi/ic_launcher.png
Normal file
After Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 874 B |
Before Width: | Height: | Size: 2.4 KiB |
BIN
android/app/src/main/res/mipmap-mdpi/ic_launcher.png
Normal file
After Width: | Height: | Size: 2.4 KiB |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 650 B |
Before Width: | Height: | Size: 1.5 KiB |
BIN
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 3.2 KiB |
BIN
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
Normal file
After Width: | Height: | Size: 8.1 KiB |
Before Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 5.2 KiB |
BIN
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
Normal file
After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 7.3 KiB |
Before Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 7.3 KiB |
4
android/app/src/main/res/values/colors.xml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<color name="ic_launcher_background">#ffffff</color>
|
||||||
|
</resources>
|
|
@ -1,4 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<color name="ic_launcher_background">#FFFFFF</color>
|
|
||||||
</resources>
|
|
|
@ -1,3 +1,16 @@
|
||||||
|
buildscript {
|
||||||
|
ext.kotlin_version = '1.8.20'
|
||||||
|
repositories {
|
||||||
|
google()
|
||||||
|
mavenCentral()
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
classpath 'com.android.tools.build:gradle:7.2.2'
|
||||||
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
allprojects {
|
allprojects {
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
google()
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
|
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
storePassword= # keystore password #
|
|
||||||
keyPassword= # keystore key password #
|
|
||||||
keyAlias= # key alias #
|
|
||||||
storeFile= # ./keystore-file-name.jks #
|
|
|
@ -1,26 +1,11 @@
|
||||||
pluginManagement {
|
include ':app'
|
||||||
def flutterSdkPath = {
|
|
||||||
def properties = new Properties()
|
|
||||||
file("local.properties").withInputStream { properties.load(it) }
|
|
||||||
def flutterSdkPath = properties.getProperty("flutter.sdk")
|
|
||||||
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
|
|
||||||
return flutterSdkPath
|
|
||||||
}
|
|
||||||
settings.ext.flutterSdkPath = flutterSdkPath()
|
|
||||||
|
|
||||||
includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")
|
def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
|
||||||
|
def properties = new Properties()
|
||||||
|
|
||||||
repositories {
|
assert localPropertiesFile.exists()
|
||||||
google()
|
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
|
||||||
mavenCentral()
|
|
||||||
gradlePluginPortal()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
plugins {
|
def flutterSdkPath = properties.getProperty("flutter.sdk")
|
||||||
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
|
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
|
||||||
id "com.android.application" version '8.6.0' apply false
|
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
|
||||||
id "org.jetbrains.kotlin.android" version "1.8.20" apply false
|
|
||||||
}
|
|
||||||
|
|
||||||
include ":app"
|
|
||||||
|
|
2
debian/debian.yaml
vendored
|
@ -5,7 +5,7 @@ flutter_app:
|
||||||
|
|
||||||
control:
|
control:
|
||||||
Package: AdGuardHomeManager
|
Package: AdGuardHomeManager
|
||||||
Version: 2.20.1
|
Version: <REPLACE_VERSION_NUMBER_ACTIONS>
|
||||||
Architecture: amd64
|
Architecture: amd64
|
||||||
Essential: no
|
Essential: no
|
||||||
Priority: optional
|
Priority: optional
|
||||||
|
|
0
ios/.gitignore
vendored
Executable file → Normal file
2
ios/Flutter/AppFrameworkInfo.plist
Executable file → Normal file
|
@ -21,6 +21,6 @@
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>1.0</string>
|
<string>1.0</string>
|
||||||
<key>MinimumOSVersion</key>
|
<key>MinimumOSVersion</key>
|
||||||
<string>12.0</string>
|
<string>11.0</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
0
ios/Flutter/Debug.xcconfig
Executable file → Normal file
0
ios/Flutter/Release.xcconfig
Executable file → Normal file
2
ios/Podfile
Executable file → Normal file
|
@ -1,5 +1,5 @@
|
||||||
# Uncomment this line to define a global platform for your project
|
# Uncomment this line to define a global platform for your project
|
||||||
# platform :ios, '12.0'
|
# platform :ios, '11.0'
|
||||||
|
|
||||||
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
|
||||||
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
|
||||||
|
|
|
@ -2,53 +2,60 @@ PODS:
|
||||||
- device_info_plus (0.0.1):
|
- device_info_plus (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- Flutter (1.0.0)
|
- Flutter (1.0.0)
|
||||||
- flutter_custom_tabs_ios (2.0.0):
|
|
||||||
- Flutter
|
|
||||||
- flutter_native_splash (0.0.1):
|
- flutter_native_splash (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
|
- flutter_web_browser (0.17.1):
|
||||||
|
- Flutter
|
||||||
|
- FMDB (2.7.5):
|
||||||
|
- FMDB/standard (= 2.7.5)
|
||||||
|
- FMDB/standard (2.7.5)
|
||||||
- package_info_plus (0.4.5):
|
- package_info_plus (0.4.5):
|
||||||
- Flutter
|
- Flutter
|
||||||
- Sentry/HybridSDK (8.18.0):
|
- Sentry/HybridSDK (8.9.1):
|
||||||
- SentryPrivate (= 8.18.0)
|
- SentryPrivate (= 8.9.1)
|
||||||
- sentry_flutter (0.0.1):
|
- sentry_flutter (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- Sentry/HybridSDK (= 8.18.0)
|
- Sentry/HybridSDK (= 8.9.1)
|
||||||
- SentryPrivate (8.18.0)
|
- SentryPrivate (8.9.1)
|
||||||
- sqflite (0.0.3):
|
- sqflite (0.0.3):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FMDB (>= 2.7.5)
|
||||||
- sqlite3 (3.45.0):
|
- sqlite3 (3.43.1):
|
||||||
- sqlite3/common (= 3.45.0)
|
- sqlite3/common (= 3.43.1)
|
||||||
- sqlite3/common (3.45.0)
|
- sqlite3/common (3.43.1)
|
||||||
- sqlite3/fts5 (3.45.0):
|
- sqlite3/fts5 (3.43.1):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3/perf-threadsafe (3.45.0):
|
- sqlite3/perf-threadsafe (3.43.1):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3/rtree (3.45.0):
|
- sqlite3/rtree (3.43.1):
|
||||||
- sqlite3/common
|
- sqlite3/common
|
||||||
- sqlite3_flutter_libs (0.0.1):
|
- sqlite3_flutter_libs (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- sqlite3 (~> 3.45.0)
|
- sqlite3 (~> 3.43.0)
|
||||||
- sqlite3/fts5
|
- sqlite3/fts5
|
||||||
- sqlite3/perf-threadsafe
|
- sqlite3/perf-threadsafe
|
||||||
- sqlite3/rtree
|
- sqlite3/rtree
|
||||||
- store_checker (0.0.1):
|
- store_checker (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
|
- url_launcher_ios (0.0.1):
|
||||||
|
- Flutter
|
||||||
|
|
||||||
DEPENDENCIES:
|
DEPENDENCIES:
|
||||||
- device_info_plus (from `.symlinks/plugins/device_info_plus/ios`)
|
- device_info_plus (from `.symlinks/plugins/device_info_plus/ios`)
|
||||||
- Flutter (from `Flutter`)
|
- Flutter (from `Flutter`)
|
||||||
- flutter_custom_tabs_ios (from `.symlinks/plugins/flutter_custom_tabs_ios/ios`)
|
|
||||||
- flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`)
|
- flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`)
|
||||||
|
- flutter_web_browser (from `.symlinks/plugins/flutter_web_browser/ios`)
|
||||||
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
|
- package_info_plus (from `.symlinks/plugins/package_info_plus/ios`)
|
||||||
- sentry_flutter (from `.symlinks/plugins/sentry_flutter/ios`)
|
- sentry_flutter (from `.symlinks/plugins/sentry_flutter/ios`)
|
||||||
- sqflite (from `.symlinks/plugins/sqflite/darwin`)
|
- sqflite (from `.symlinks/plugins/sqflite/ios`)
|
||||||
- sqlite3_flutter_libs (from `.symlinks/plugins/sqlite3_flutter_libs/ios`)
|
- sqlite3_flutter_libs (from `.symlinks/plugins/sqlite3_flutter_libs/ios`)
|
||||||
- store_checker (from `.symlinks/plugins/store_checker/ios`)
|
- store_checker (from `.symlinks/plugins/store_checker/ios`)
|
||||||
|
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
|
||||||
|
|
||||||
SPEC REPOS:
|
SPEC REPOS:
|
||||||
trunk:
|
trunk:
|
||||||
|
- FMDB
|
||||||
- Sentry
|
- Sentry
|
||||||
- SentryPrivate
|
- SentryPrivate
|
||||||
- sqlite3
|
- sqlite3
|
||||||
|
@ -58,35 +65,39 @@ EXTERNAL SOURCES:
|
||||||
:path: ".symlinks/plugins/device_info_plus/ios"
|
:path: ".symlinks/plugins/device_info_plus/ios"
|
||||||
Flutter:
|
Flutter:
|
||||||
:path: Flutter
|
:path: Flutter
|
||||||
flutter_custom_tabs_ios:
|
|
||||||
:path: ".symlinks/plugins/flutter_custom_tabs_ios/ios"
|
|
||||||
flutter_native_splash:
|
flutter_native_splash:
|
||||||
:path: ".symlinks/plugins/flutter_native_splash/ios"
|
:path: ".symlinks/plugins/flutter_native_splash/ios"
|
||||||
|
flutter_web_browser:
|
||||||
|
:path: ".symlinks/plugins/flutter_web_browser/ios"
|
||||||
package_info_plus:
|
package_info_plus:
|
||||||
:path: ".symlinks/plugins/package_info_plus/ios"
|
:path: ".symlinks/plugins/package_info_plus/ios"
|
||||||
sentry_flutter:
|
sentry_flutter:
|
||||||
:path: ".symlinks/plugins/sentry_flutter/ios"
|
:path: ".symlinks/plugins/sentry_flutter/ios"
|
||||||
sqflite:
|
sqflite:
|
||||||
:path: ".symlinks/plugins/sqflite/darwin"
|
:path: ".symlinks/plugins/sqflite/ios"
|
||||||
sqlite3_flutter_libs:
|
sqlite3_flutter_libs:
|
||||||
:path: ".symlinks/plugins/sqlite3_flutter_libs/ios"
|
:path: ".symlinks/plugins/sqlite3_flutter_libs/ios"
|
||||||
store_checker:
|
store_checker:
|
||||||
:path: ".symlinks/plugins/store_checker/ios"
|
:path: ".symlinks/plugins/store_checker/ios"
|
||||||
|
url_launcher_ios:
|
||||||
|
:path: ".symlinks/plugins/url_launcher_ios/ios"
|
||||||
|
|
||||||
SPEC CHECKSUMS:
|
SPEC CHECKSUMS:
|
||||||
device_info_plus: c6fb39579d0f423935b0c9ce7ee2f44b71b9fce6
|
device_info_plus: 7545d84d8d1b896cb16a4ff98c19f07ec4b298ea
|
||||||
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
|
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
|
||||||
flutter_custom_tabs_ios: 62439c843b2691aae516fd50119a01eb9755fff7
|
|
||||||
flutter_native_splash: 52501b97d1c0a5f898d687f1646226c1f93c56ef
|
flutter_native_splash: 52501b97d1c0a5f898d687f1646226c1f93c56ef
|
||||||
package_info_plus: 115f4ad11e0698c8c1c5d8a689390df880f47e85
|
flutter_web_browser: 7bccaafbb0c5b8862afe7bcd158f15557109f61f
|
||||||
Sentry: 8984a4ffb2b9bd2894d74fb36e6f5833865bc18e
|
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
|
||||||
sentry_flutter: c87a0556eeb6cbf7f9f924d30e878bdedf22d364
|
package_info_plus: fd030dabf36271f146f1f3beacd48f564b0f17f7
|
||||||
SentryPrivate: 2f0c9ba4c3fc993f70eab6ca95673509561e0085
|
Sentry: e3203780941722a1fcfee99e351de14244c7f806
|
||||||
sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec
|
sentry_flutter: 8f0ffd53088e6a4d50c095852c5cad9e4405025c
|
||||||
sqlite3: f307b6291c4db7b5086c38d6237446b98a738581
|
SentryPrivate: 5e3683390f66611fc7c6215e27645873adb55d13
|
||||||
sqlite3_flutter_libs: aeb4d37509853dfa79d9b59386a2dac5dd079428
|
sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
|
||||||
|
sqlite3: e0a0623a33a20a47cb5921552aebc6e9e437dc91
|
||||||
|
sqlite3_flutter_libs: 878ccbdcfd7b7cb41a774ec238223d876880c5ec
|
||||||
store_checker: 359c5051d9ec30ff0a8fa39eb5ec9df021bb745d
|
store_checker: 359c5051d9ec30ff0a8fa39eb5ec9df021bb745d
|
||||||
|
url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4
|
||||||
|
|
||||||
PODFILE CHECKSUM: c4c93c5f6502fe2754f48404d3594bf779584011
|
PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3
|
||||||
|
|
||||||
COCOAPODS: 1.14.3
|
COCOAPODS: 1.12.1
|
||||||
|
|
41
ios/Runner.xcodeproj/project.pbxproj
Executable file → Normal file
|
@ -68,6 +68,7 @@
|
||||||
65533F0C0783FDE34AE79B0A /* Pods-Runner.release.xcconfig */,
|
65533F0C0783FDE34AE79B0A /* Pods-Runner.release.xcconfig */,
|
||||||
69C2CC4A6DE17506FC5C0F13 /* Pods-Runner.profile.xcconfig */,
|
69C2CC4A6DE17506FC5C0F13 /* Pods-Runner.profile.xcconfig */,
|
||||||
);
|
);
|
||||||
|
name = Pods;
|
||||||
path = Pods;
|
path = Pods;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
@ -155,7 +156,6 @@
|
||||||
97C146E61CF9000F007C117D /* Project object */ = {
|
97C146E61CF9000F007C117D /* Project object */ = {
|
||||||
isa = PBXProject;
|
isa = PBXProject;
|
||||||
attributes = {
|
attributes = {
|
||||||
BuildIndependentTargetsInParallel = YES;
|
|
||||||
LastUpgradeCheck = 1430;
|
LastUpgradeCheck = 1430;
|
||||||
ORGANIZATIONNAME = "";
|
ORGANIZATIONNAME = "";
|
||||||
TargetAttributes = {
|
TargetAttributes = {
|
||||||
|
@ -325,7 +325,6 @@
|
||||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
|
||||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||||
|
@ -336,7 +335,6 @@
|
||||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
ENABLE_NS_ASSERTIONS = NO;
|
ENABLE_NS_ASSERTIONS = NO;
|
||||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = YES;
|
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_NO_COMMON_BLOCKS = YES;
|
GCC_NO_COMMON_BLOCKS = YES;
|
||||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
@ -345,7 +343,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
SUPPORTED_PLATFORMS = iphoneos;
|
SUPPORTED_PLATFORMS = iphoneos;
|
||||||
|
@ -363,22 +361,15 @@
|
||||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||||
DEVELOPMENT_TEAM = 38Z3B9TJTR;
|
DEVELOPMENT_TEAM = 38Z3B9TJTR;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
|
||||||
INFOPLIST_FILE = Runner/Info.plist;
|
INFOPLIST_FILE = Runner/Info.plist;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = "AdGuard Home";
|
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities";
|
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.jgeek00.adguardHomeManager;
|
PRODUCT_BUNDLE_IDENTIFIER = com.jgeek00.adguard_home_manager;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
|
||||||
SUPPORTS_MACCATALYST = NO;
|
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2";
|
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
};
|
};
|
||||||
name = Profile;
|
name = Profile;
|
||||||
|
@ -406,7 +397,6 @@
|
||||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
|
||||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||||
|
@ -417,7 +407,6 @@
|
||||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
ENABLE_TESTABILITY = YES;
|
ENABLE_TESTABILITY = YES;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = YES;
|
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_DYNAMIC_NO_PIC = NO;
|
GCC_DYNAMIC_NO_PIC = NO;
|
||||||
GCC_NO_COMMON_BLOCKS = YES;
|
GCC_NO_COMMON_BLOCKS = YES;
|
||||||
|
@ -432,7 +421,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = YES;
|
MTL_ENABLE_DEBUG_INFO = YES;
|
||||||
ONLY_ACTIVE_ARCH = YES;
|
ONLY_ACTIVE_ARCH = YES;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
|
@ -463,7 +452,6 @@
|
||||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||||
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
|
|
||||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||||
|
@ -474,7 +462,6 @@
|
||||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||||
ENABLE_NS_ASSERTIONS = NO;
|
ENABLE_NS_ASSERTIONS = NO;
|
||||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = YES;
|
|
||||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||||
GCC_NO_COMMON_BLOCKS = YES;
|
GCC_NO_COMMON_BLOCKS = YES;
|
||||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||||
|
@ -483,7 +470,7 @@
|
||||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||||
MTL_ENABLE_DEBUG_INFO = NO;
|
MTL_ENABLE_DEBUG_INFO = NO;
|
||||||
SDKROOT = iphoneos;
|
SDKROOT = iphoneos;
|
||||||
SUPPORTED_PLATFORMS = iphoneos;
|
SUPPORTED_PLATFORMS = iphoneos;
|
||||||
|
@ -503,23 +490,16 @@
|
||||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||||
DEVELOPMENT_TEAM = 38Z3B9TJTR;
|
DEVELOPMENT_TEAM = 38Z3B9TJTR;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
|
||||||
INFOPLIST_FILE = Runner/Info.plist;
|
INFOPLIST_FILE = Runner/Info.plist;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = "AdGuard Home";
|
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities";
|
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.jgeek00.adguardHomeManager;
|
PRODUCT_BUNDLE_IDENTIFIER = com.jgeek00.adguard_home_manager;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
|
||||||
SUPPORTS_MACCATALYST = NO;
|
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2";
|
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
};
|
};
|
||||||
name = Debug;
|
name = Debug;
|
||||||
|
@ -533,22 +513,15 @@
|
||||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||||
DEVELOPMENT_TEAM = 38Z3B9TJTR;
|
DEVELOPMENT_TEAM = 38Z3B9TJTR;
|
||||||
ENABLE_BITCODE = NO;
|
ENABLE_BITCODE = NO;
|
||||||
ENABLE_USER_SCRIPT_SANDBOXING = NO;
|
|
||||||
INFOPLIST_FILE = Runner/Info.plist;
|
INFOPLIST_FILE = Runner/Info.plist;
|
||||||
INFOPLIST_KEY_CFBundleDisplayName = "AdGuard Home";
|
|
||||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities";
|
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.jgeek00.adguardHomeManager;
|
PRODUCT_BUNDLE_IDENTIFIER = com.jgeek00.adguard_home_manager;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
|
||||||
SUPPORTS_MACCATALYST = NO;
|
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TARGETED_DEVICE_FAMILY = "1,2";
|
|
||||||
VERSIONING_SYSTEM = "apple-generic";
|
VERSIONING_SYSTEM = "apple-generic";
|
||||||
};
|
};
|
||||||
name = Release;
|
name = Release;
|
||||||
|
|
0
ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
generated
Executable file → Normal file
0
ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
Executable file → Normal file
0
ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
Executable file → Normal file
0
ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme
Executable file → Normal file
0
ios/Runner.xcworkspace/contents.xcworkspacedata
generated
Executable file → Normal file
0
ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
Executable file → Normal file
0
ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
Executable file → Normal file
0
ios/Runner/AppDelegate.swift
Executable file → Normal file
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json
Executable file → Normal file
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 526 B After Width: | Height: | Size: 526 B |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 1,005 B After Width: | Height: | Size: 1,005 B |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
Executable file → Normal file
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 773 B After Width: | Height: | Size: 773 B |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
Executable file → Normal file
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 1,005 B After Width: | Height: | Size: 1,005 B |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 2 KiB After Width: | Height: | Size: 2 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
Executable file → Normal file
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-50x50@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 1.5 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 3.1 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
Executable file → Normal file
Before Width: | Height: | Size: 4.5 KiB After Width: | Height: | Size: 4.5 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 1.8 KiB After Width: | Height: | Size: 1.8 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-72x72@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
Executable file → Normal file
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
0
ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
Executable file → Normal file
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 4.2 KiB |
0
ios/Runner/Assets.xcassets/LaunchBackground.imageset/Contents.json
vendored
Executable file → Normal file
0
ios/Runner/Assets.xcassets/LaunchBackground.imageset/background.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 68 B After Width: | Height: | Size: 68 B |
0
ios/Runner/Assets.xcassets/LaunchBackground.imageset/darkbackground.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 70 B After Width: | Height: | Size: 70 B |
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json
vendored
Executable file → Normal file
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 7.3 KiB After Width: | Height: | Size: 7.3 KiB |
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 2.7 KiB After Width: | Height: | Size: 2.7 KiB |
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@2x.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 7.3 KiB After Width: | Height: | Size: 7.3 KiB |
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImageDark@3x.png
vendored
Executable file → Normal file
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 16 KiB |
0
ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md
vendored
Executable file → Normal file
0
ios/Runner/Base.lproj/LaunchScreen.storyboard
Executable file → Normal file
0
ios/Runner/Base.lproj/Main.storyboard
Executable file → Normal file
98
ios/Runner/Info.plist
Executable file → Normal file
|
@ -1,53 +1,53 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
<dict>
|
<dict>
|
||||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<true/>
|
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
<string>AdGuard Home Manager</string>
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>AdGuard Home</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleIdentifier</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
<string>6.0</string>
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleName</key>
|
||||||
<string>6.0</string>
|
<string>adguard_home_manager</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>adguardHomeManager</string>
|
<string>APPL</string>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>APPL</string>
|
<string>$(FLUTTER_BUILD_NAME)</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>$(FLUTTER_BUILD_NAME)</string>
|
<string>????</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>????</string>
|
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>LSRequiresIPhoneOS</key>
|
||||||
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
<true/>
|
||||||
<key>LSRequiresIPhoneOS</key>
|
<key>UILaunchStoryboardName</key>
|
||||||
<true/>
|
<string>LaunchScreen</string>
|
||||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
<key>UIMainStoryboardFile</key>
|
||||||
<true/>
|
<string>Main</string>
|
||||||
<key>UILaunchStoryboardName</key>
|
<key>UISupportedInterfaceOrientations</key>
|
||||||
<string>LaunchScreen</string>
|
<array>
|
||||||
<key>UIMainStoryboardFile</key>
|
<string>UIInterfaceOrientationPortrait</string>
|
||||||
<string>Main</string>
|
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||||
<key>UIStatusBarHidden</key>
|
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||||
<false/>
|
</array>
|
||||||
<key>UISupportedInterfaceOrientations</key>
|
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||||
<array>
|
<array>
|
||||||
<string>UIInterfaceOrientationPortrait</string>
|
<string>UIInterfaceOrientationPortrait</string>
|
||||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||||
</array>
|
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
</array>
|
||||||
<array>
|
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||||
<string>UIInterfaceOrientationPortrait</string>
|
<false/>
|
||||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
<true/>
|
||||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||||
</array>
|
<true/>
|
||||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
<key>UIStatusBarHidden</key>
|
||||||
<false/>
|
<false/>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|