3
0
Fork 0
a fork of mobile_nebula adding additional features and bringing Trifid to mobile devices
Go to file
John Maguire 37758d4a01
Request VPN permissions on site start (#92)
Previously VPN permissions were requested when the UI was loaded. If the
user denied the permissions it would have to be force stopped and
reopened to get another permission request grant.

Additionally, when requesting VPN permissions Android will kill any
other running VPN service. This avoids that behavior unless a site is
explicitly started.

Also disables the app from showing up in the "Always On" settings.
2022-11-18 14:34:45 -05:00
.github/workflows Also use 3.3.5 for flutter format action (#78) 2022-10-27 12:12:12 -05:00
android Request VPN permissions on site start (#92) 2022-11-18 14:34:45 -05:00
fonts Initial commit 2020-07-27 15:43:58 -05:00
images Support DN host enrollment (#86) 2022-11-17 16:43:16 -05:00
ios Fix share on Android by moving to flutter share lib (#87) 2022-11-17 15:46:06 -06:00
lib Request VPN permissions on site start (#92) 2022-11-18 14:34:45 -05:00
nebula Request VPN permissions on site start (#92) 2022-11-18 14:34:45 -05:00
.git-blame-ignore-revs git blame ignore that the format merge (#39) 2021-05-03 17:00:29 -05:00
.gitignore Rebind against nebula 1.6 for relays, modernize build (#63) 2022-08-04 19:39:46 -05:00
.metadata Initial commit 2020-07-27 15:43:58 -05:00
CHANGELOG.md Fix date 2021-06-09 20:31:00 -05:00
README.md Support DN host enrollment (#86) 2022-11-17 16:43:16 -05:00
env.sh.example Initial commit 2020-07-27 15:43:58 -05:00
gen-artifacts.sh Upgrade to flutter 3 (#70) 2022-09-21 15:27:35 -05:00
pubspec.lock Fix share on Android by moving to flutter share lib (#87) 2022-11-17 15:46:06 -06:00
pubspec.yaml Fix share on Android by moving to flutter share lib (#87) 2022-11-17 15:46:06 -06:00

README.md

Setting up dev environment

Install all of the following things:

Ensure your path is set up correctly to execute flutter

Run flutter doctor and fix everything it complains before proceeding

NOTE on iOS, always open Runner.xcworkspace and NOT the Runner.xccodeproj

Before first compile

  • Copy env.sh.example and set it up for your machine
  • Ensure you have run gomobile init
  • In Android Studio, make sure you have the current ndk installed by going to Tools -> SDK Manager, go to the SDK Tools tab, check the Show package details box, expand the NDK section and select 21.1.6352462 version.
  • Ensure you have downloaded an ndk via android studio, this is likely not the default one and you need to check the Show package details box to select the correct version. The correct version comes from the error when you try and compile
  • Make sure you have gem installed with sudo gem install
  • If on MacOS arm, sudo gem install ffi -- --enable-libffi-alloc

If you are having issues with iOS pods, try blowing it all away! cd ios && rm -rf Pods/ Podfile.lock && pod install --repo-update

Formatting

flutter format can be used to format the code in lib and test but it's default is 80 char line limit, it's 2020

Use:

flutter format lib/ test/ -l 120

Release

Update version in pubspec.yaml to reflect this release, then

Android

flutter build appbundle

This will create an android app bundle at build/app/outputs/bundle/release/

Upload the android bundle to the google play store https://play.google.com/apps/publish

iOS

In xcode, Release -> Archive then follow the directions to upload to the app store. If you have issues, https://flutter.dev/docs/deployment/ios#create-a-build-archive