diff --git a/README.md b/README.md index b58180110683bd2d9daf3246ee5cff1d750d67a7..df4c819787b77383c0020b8b81a09babb23f0164 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,11 @@ # Vereign mobile application. -## Application flavors +## Building process + +##### iOS +- Production `./build-ios.sh` +- Development `./build-ios.sh development` + ### Build application in debug mode - With development flavor `flutter run --flavor development -t lib/main-dev.dart` - With production flavor `flutter run --flavor production -t lib/main.dart` diff --git a/build-ios.sh b/build-ios.sh new file mode 100755 index 0000000000000000000000000000000000000000..49be273cc47a47ee3c42edf08d2635210f1c1339 --- /dev/null +++ b/build-ios.sh @@ -0,0 +1,41 @@ +#!/usr/bin/env bash + +flavor='production' +scheme='production' +configuration='Release-production' +entryPoint='main.dart' +bundleName="Vereign" + +if [[ $1 == 'development' ]] +then + flavor='development' + scheme='development' + configuration='Release-development' + entryPoint='main-dev.dart' + bundleName="Vereign-dev" +fi + +# Build ios +flutter build ios -v --flavor ${flavor} -t lib/${entryPoint} + +# Export xarchive +xcodebuild \ + -workspace ios/Runner.xcworkspace \ + -scheme ${scheme} \ + -sdk iphoneos \ + -configuration ${configuration} \ + archive -archivePath \ + build/ios/${bundleName}.xcarchive + +# Package ipa +xcodebuild \ + -exportArchive \ + -archivePath build/ios/${bundleName}.xcarchive \ + -exportOptionsPlist ios/Runner/Info.plist \ + -exportPath build/ios/${bundleName} + +# Move packages wherever we need +# cp build/ios/Vereign/production.ipa /path && cp build/ios/Vereign-dev/development.ipa /path + +# Cleanup +# flutter clean diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 19291101caa84057045aaf294209c0ffb6389f01..50d9faef58a1a8b093c4d6052a4ab1554adf61fb 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -18,7 +18,7 @@ PODS: - Flutter DEPENDENCIES: - - Flutter (from `.symlinks/flutter/ios`) + - Flutter (from `.symlinks/flutter/ios-release`) - flutter_app_auth_wrapper (from `.symlinks/plugins/flutter_app_auth_wrapper/ios`) - flutter_web_browser (from `.symlinks/plugins/flutter_web_browser/ios`) - shared_preferences (from `.symlinks/plugins/shared_preferences/ios`) @@ -31,7 +31,7 @@ SPEC REPOS: EXTERNAL SOURCES: Flutter: - :path: ".symlinks/flutter/ios" + :path: ".symlinks/flutter/ios-release" flutter_app_auth_wrapper: :path: ".symlinks/plugins/flutter_app_auth_wrapper/ios" flutter_web_browser: diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 4f5087c5c593c409f673e6910779f4745dc615ad..6058f4a73bed34c778a4b561c160f6124908782b 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -14,7 +14,6 @@ 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; }; 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 9740EEB21CF90195004384FC /* Debug.xcconfig */; }; 978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */; }; 97C146F31CF9000F007C117D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 97C146F21CF9000F007C117D /* main.m */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; @@ -193,7 +192,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1030; ORGANIZATIONNAME = "The Chromium Authors"; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -228,7 +227,6 @@ files = ( 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */, 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, );