From 4454f11d9e4d90096f579d595c0dbeede897b79d Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Tue, 24 Sep 2024 23:13:25 +0800 Subject: [PATCH 01/39] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9Exhj=E3=80=81sky?= =?UTF-8?q?=E5=8F=A3=E5=91=B3=E5=AF=B9=E5=BA=94=E7=9A=84dev=E3=80=81pre?= =?UTF-8?q?=E7=8E=AF=E5=A2=83=E6=89=93=E5=8C=85=E9=85=8D=E7=BD=AE=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Flutter/localDebug.xcconfig | 6 + ios/Flutter/skyDevRelease.xcconfig | 6 + ios/Flutter/skyPreviewRelease.xcconfig | 6 + ios/Flutter/xhjDevRelease.xcconfig | 6 + ios/Flutter/xhjPreviewRelease.xcconfig | 6 + ios/Podfile.lock | 2 +- ios/Runner.xcodeproj/project.pbxproj | 486 +++++++++++++++++++++++++ ios/Runner/Info.plist | 8 +- 8 files changed, 521 insertions(+), 5 deletions(-) create mode 100644 ios/Flutter/localDebug.xcconfig create mode 100644 ios/Flutter/skyDevRelease.xcconfig create mode 100644 ios/Flutter/skyPreviewRelease.xcconfig create mode 100644 ios/Flutter/xhjDevRelease.xcconfig create mode 100644 ios/Flutter/xhjPreviewRelease.xcconfig mode change 100755 => 100644 ios/Runner.xcodeproj/project.pbxproj diff --git a/ios/Flutter/localDebug.xcconfig b/ios/Flutter/localDebug.xcconfig new file mode 100644 index 00000000..c29c755c --- /dev/null +++ b/ios/Flutter/localDebug.xcconfig @@ -0,0 +1,6 @@ +#include "Generated.xcconfig" + +FLUTTER_TARGET=lib/main_local.dart +ASSET_PREFIX=local +BUNDLE_NAME=星锁-local +BUNDLE_DISPLAY_NAME=星锁-local diff --git a/ios/Flutter/skyDevRelease.xcconfig b/ios/Flutter/skyDevRelease.xcconfig new file mode 100644 index 00000000..b5f16eea --- /dev/null +++ b/ios/Flutter/skyDevRelease.xcconfig @@ -0,0 +1,6 @@ +#include "Generated.xcconfig" + +FLUTTER_TARGET=lib/main_sky_dev.dart +ASSET_PREFIX=sky +BUNDLE_NAME=锁通通-D +BUNDLE_DISPLAY_NAME=锁通通-D diff --git a/ios/Flutter/skyPreviewRelease.xcconfig b/ios/Flutter/skyPreviewRelease.xcconfig new file mode 100644 index 00000000..95a72d10 --- /dev/null +++ b/ios/Flutter/skyPreviewRelease.xcconfig @@ -0,0 +1,6 @@ +#include "Generated.xcconfig" + +FLUTTER_TARGET=lib/main_sky_pre.dart +ASSET_PREFIX=sky +BUNDLE_NAME=锁通通-P +BUNDLE_DISPLAY_NAME=锁通通-P diff --git a/ios/Flutter/xhjDevRelease.xcconfig b/ios/Flutter/xhjDevRelease.xcconfig new file mode 100644 index 00000000..7e563ac7 --- /dev/null +++ b/ios/Flutter/xhjDevRelease.xcconfig @@ -0,0 +1,6 @@ +#include "Generated.xcconfig" + +FLUTTER_TARGET=lib/main_xhj_dev.dart +ASSET_PREFIX=xhj +BUNDLE_NAME=星星锁-D +BUNDLE_DISPLAY_NAME=星星锁-D diff --git a/ios/Flutter/xhjPreviewRelease.xcconfig b/ios/Flutter/xhjPreviewRelease.xcconfig new file mode 100644 index 00000000..7aff4b5b --- /dev/null +++ b/ios/Flutter/xhjPreviewRelease.xcconfig @@ -0,0 +1,6 @@ +#include "Generated.xcconfig" + +FLUTTER_TARGET=lib/main_xhj_pre.dart +ASSET_PREFIX=xhj +BUNDLE_NAME=星星锁-P +BUNDLE_DISPLAY_NAME=星星锁-P diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 5439a020..61d3d085 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -367,4 +367,4 @@ SPEC CHECKSUMS: PODFILE CHECKSUM: 317f9473a5705c6fe4d79d95e81676f248048fdc -COCOAPODS: 1.15.2 +COCOAPODS: 1.14.3 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj old mode 100755 new mode 100644 index a7b5e0e6..8e750a82 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -133,6 +133,11 @@ CD1142BE3A076363977FB03C /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = ED1F1A04428235FB1B6FD471 /* Pods_Runner.framework */; }; D415555B0C61C5422202D037 /* devProfile.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 9AA145F8B894E5E4F14249DB /* devProfile.xcconfig */; }; D7EF77645AB1C3CEEA536468 /* skyDebug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 7579B06AEF5FEA95042D8474 /* skyDebug.xcconfig */; }; + E0A496C52CA3092500E376BB /* localDebug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = E0A496C42CA3092500E376BB /* localDebug.xcconfig */; }; + E0A496C92CA30C2C00E376BB /* xhjDevRelease.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = E0A496C82CA30C2C00E376BB /* xhjDevRelease.xcconfig */; }; + E0A496CB2CA30C7400E376BB /* xhjPreviewRelease.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = E0A496CA2CA30C7400E376BB /* xhjPreviewRelease.xcconfig */; }; + E0A496CD2CA30CA900E376BB /* skyDevRelease.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = E0A496CC2CA30CA900E376BB /* skyDevRelease.xcconfig */; }; + E0A496CF2CA30CEF00E376BB /* skyPreviewRelease.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = E0A496CE2CA30CEF00E376BB /* skyPreviewRelease.xcconfig */; }; E2FF5D00DFF6E2BF9DA36649 /* devLaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D627D69970E6DA2D33F770E3 /* devLaunchScreen.storyboard */; }; EE0A7A61CF36BC83ACA6EE3E /* xhjProfile.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = DC2FBF181C8D9880E24845E6 /* xhjProfile.xcconfig */; }; F0A7A6EF7D83CA92324D9C20 /* preDebug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 383F65C3166F78B1A1470A4E /* preDebug.xcconfig */; }; @@ -158,6 +163,7 @@ 04BFC4482BCFE05100688FCA /* RunnerRelease-xhj.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "RunnerRelease-xhj.entitlements"; sourceTree = ""; }; 0BEB3ADCCEC961E2916B9004 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 0D02C18E16914A687A4A1AC2 /* devDebug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = devDebug.xcconfig; path = Flutter/devDebug.xcconfig; sourceTree = ""; }; + 126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.dev-release-sky.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.dev-release-sky.xcconfig"; sourceTree = ""; }; 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; 16A83D21DFB231D8453DC681 /* Pods-Runner.release-sky.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release-sky.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release-sky.xcconfig"; sourceTree = ""; }; @@ -175,7 +181,9 @@ 6285D102821F3D2FB7B09E43 /* Pods-Runner.profile-dev.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile-dev.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile-dev.xcconfig"; sourceTree = ""; }; 68C41ACED6A779BAAA0A51A7 /* Pods-Runner.release-pre.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release-pre.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release-pre.xcconfig"; sourceTree = ""; }; 6A6F5C86239927252C06A16A /* xhjLaunchScreen.storyboard */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.storyboard; name = xhjLaunchScreen.storyboard; path = Runner/xhjLaunchScreen.storyboard; sourceTree = ""; }; + 72E2A6A227EA101C0167D322 /* Pods-Runner.debug-local.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug-local.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug-local.xcconfig"; sourceTree = ""; }; 7579B06AEF5FEA95042D8474 /* skyDebug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = skyDebug.xcconfig; path = Flutter/skyDebug.xcconfig; sourceTree = ""; }; + 789004F1B475B44713E199BC /* Pods-Runner.pre-release-xhj.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.pre-release-xhj.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.pre-release-xhj.xcconfig"; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 7EA577AFEEE10224BA96C569 /* preLaunchScreen.storyboard */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.storyboard; name = preLaunchScreen.storyboard; path = Runner/preLaunchScreen.storyboard; sourceTree = ""; }; 8297E40E2AE75AC500E886FA /* XSFlutterManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XSFlutterManager.m; sourceTree = ""; }; @@ -309,10 +317,17 @@ D501929EA2295683612A3AD8 /* preRelease.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = preRelease.xcconfig; path = Flutter/preRelease.xcconfig; sourceTree = ""; }; D62237D2D011BDC27FB2BC28 /* Pods-Runner.profile-xhj.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile-xhj.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile-xhj.xcconfig"; sourceTree = ""; }; D627D69970E6DA2D33F770E3 /* devLaunchScreen.storyboard */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.storyboard; name = devLaunchScreen.storyboard; path = Runner/devLaunchScreen.storyboard; sourceTree = ""; }; + D697F91E8405773AB9A5881E /* Pods-Runner.pre-release-sky.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.pre-release-sky.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.pre-release-sky.xcconfig"; sourceTree = ""; }; DAD8EE71BE7C05B99667C256 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; DC2FBF181C8D9880E24845E6 /* xhjProfile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = xhjProfile.xcconfig; path = Flutter/xhjProfile.xcconfig; sourceTree = ""; }; DC36296928F573892A6C154E /* skyProfile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = skyProfile.xcconfig; path = Flutter/skyProfile.xcconfig; sourceTree = ""; }; + E0A496C42CA3092500E376BB /* localDebug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = localDebug.xcconfig; path = Flutter/localDebug.xcconfig; sourceTree = ""; }; + E0A496C82CA30C2C00E376BB /* xhjDevRelease.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = xhjDevRelease.xcconfig; path = Flutter/xhjDevRelease.xcconfig; sourceTree = ""; }; + E0A496CA2CA30C7400E376BB /* xhjPreviewRelease.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = xhjPreviewRelease.xcconfig; path = Flutter/xhjPreviewRelease.xcconfig; sourceTree = ""; }; + E0A496CC2CA30CA900E376BB /* skyDevRelease.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = skyDevRelease.xcconfig; path = Flutter/skyDevRelease.xcconfig; sourceTree = ""; }; + E0A496CE2CA30CEF00E376BB /* skyPreviewRelease.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = skyPreviewRelease.xcconfig; path = Flutter/skyPreviewRelease.xcconfig; sourceTree = ""; }; ED1F1A04428235FB1B6FD471 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + ED3A443EA1439FD0FB4BCF80 /* Pods-Runner.dev-release-xhj.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.dev-release-xhj.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.dev-release-xhj.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -377,6 +392,11 @@ 22D858E988707FF26E068457 /* Pods-Runner.debug-xhj.xcconfig */, D62237D2D011BDC27FB2BC28 /* Pods-Runner.profile-xhj.xcconfig */, CDC2B8ED804B514A774F187D /* Pods-Runner.release-xhj.xcconfig */, + 72E2A6A227EA101C0167D322 /* Pods-Runner.debug-local.xcconfig */, + D697F91E8405773AB9A5881E /* Pods-Runner.pre-release-sky.xcconfig */, + 126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */, + 789004F1B475B44713E199BC /* Pods-Runner.pre-release-xhj.xcconfig */, + ED3A443EA1439FD0FB4BCF80 /* Pods-Runner.dev-release-xhj.xcconfig */, ); path = Pods; sourceTree = ""; @@ -473,6 +493,11 @@ 853610C00A55CC450C2FF839 /* xhjDebug.xcconfig */, DC2FBF181C8D9880E24845E6 /* xhjProfile.xcconfig */, CA9024705F732C9C000EA53E /* xhjRelease.xcconfig */, + E0A496C42CA3092500E376BB /* localDebug.xcconfig */, + E0A496C82CA30C2C00E376BB /* xhjDevRelease.xcconfig */, + E0A496CA2CA30C7400E376BB /* xhjPreviewRelease.xcconfig */, + E0A496CC2CA30CA900E376BB /* skyDevRelease.xcconfig */, + E0A496CE2CA30CEF00E376BB /* skyPreviewRelease.xcconfig */, ); name = Flutter; sourceTree = ""; @@ -655,6 +680,7 @@ 82C026542AE8AC6D0011FE6A /* AliyunEmasServices-Info.plist in Resources */, 82C026AD2AEB6C050011FE6A /* blank.png in Resources */, 82C0269F2AEB6C050011FE6A /* show_head_toast_bg.9.PNG in Resources */, + E0A496C92CA30C2C00E376BB /* xhjDevRelease.xcconfig in Resources */, 82C026BA2AEB6C050011FE6A /* logo3.png in Resources */, 82C026B22AEB6C050011FE6A /* swicth_minus_on.png in Resources */, 82C026C22AEB6C050011FE6A /* shop_loading.png in Resources */, @@ -665,6 +691,7 @@ 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, 82C026D62AEB6C050011FE6A /* vcontacts_on.png in Resources */, 82C026BF2AEB6C050011FE6A /* swicth_add_on.png in Resources */, + E0A496CD2CA30CA900E376BB /* skyDevRelease.xcconfig in Resources */, 82C026A52AEB6C050011FE6A /* unlock_on2.png in Resources */, 82C026A12AEB6C050011FE6A /* icon_close.png in Resources */, 82C026AB2AEB6C050011FE6A /* vcall.png in Resources */, @@ -680,6 +707,7 @@ 82C026C32AEB6C050011FE6A /* call_menu_on.png in Resources */, 82C026B02AEB6C050011FE6A /* call_call_on.png in Resources */, 3364C3F42B0C902100AA5ABC /* lcokStarMain.png in Resources */, + E0A496CB2CA30C7400E376BB /* xhjPreviewRelease.xcconfig in Resources */, 82C026C82AEB6C050011FE6A /* hf.png in Resources */, 82C026BE2AEB6C050011FE6A /* vcontacts2.png in Resources */, 82C026AC2AEB6C050011FE6A /* spk.png in Resources */, @@ -713,6 +741,7 @@ 82C026C92AEB6C050011FE6A /* wave3.png in Resources */, 82C026D02AEB6C050011FE6A /* search_bar_edit_pressed.9.png in Resources */, 82C026A82AEB6C050011FE6A /* key.png in Resources */, + E0A496C52CA3092500E376BB /* localDebug.xcconfig in Resources */, 82C026CB2AEB6C050011FE6A /* ic_vd_mic_off.png in Resources */, 82C026CD2AEB6C050011FE6A /* emotionstore_progresscancelbtn.png in Resources */, 82C026D32AEB6C050011FE6A /* thumb_on.png in Resources */, @@ -724,6 +753,7 @@ D415555B0C61C5422202D037 /* devProfile.xcconfig in Resources */, 8A77CDE0EDBCACCE22C29A9E /* devRelease.xcconfig in Resources */, F0A7A6EF7D83CA92324D9C20 /* preDebug.xcconfig in Resources */, + E0A496CF2CA30CEF00E376BB /* skyPreviewRelease.xcconfig in Resources */, 9C453CBFAB0703DFA762337C /* preProfile.xcconfig in Resources */, 44827AC367F1EAB110A97660 /* preRelease.xcconfig in Resources */, D7EF77645AB1C3CEEA536468 /* skyDebug.xcconfig in Resources */, @@ -2412,6 +2442,452 @@ }; name = "Release-dev"; }; + E0A496C62CA309AD00E376BB /* Debug-local */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E0A496C42CA3092500E376BB /* localDebug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + EXCLUDED_ARCHS = ""; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.dev; + SDKROOT = iphoneos; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = "Debug-local"; + }; + E0A496C72CA309AD00E376BB /* Debug-local */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 72E2A6A227EA101C0167D322 /* Pods-Runner.debug-local.xcconfig */; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-dev.entitlements"; + CODE_SIGN_IDENTITY = "Apple Development"; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local; + PRODUCT_NAME = Runner; + PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + TARGETED_DEVICE_FAMILY = 1; + }; + name = "Debug-local"; + }; + E0A496D02CA30D2800E376BB /* pre-release-sky */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E0A496CE2CA30CEF00E376BB /* skyPreviewRelease.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + EXCLUDED_ARCHS = ""; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = "pre-release-sky"; + }; + E0A496D12CA30D2800E376BB /* pre-release-sky */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D697F91E8405773AB9A5881E /* Pods-Runner.pre-release-sky.xcconfig */; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements"; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.pre; + PRODUCT_NAME = Runner; + PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + TARGETED_DEVICE_FAMILY = 1; + }; + name = "pre-release-sky"; + }; + E0A496D22CA30D5A00E376BB /* dev-release-sky */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E0A496CC2CA30CA900E376BB /* skyDevRelease.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + EXCLUDED_ARCHS = ""; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = "dev-release-sky"; + }; + E0A496D32CA30D5A00E376BB /* dev-release-sky */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements"; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.dev; + PRODUCT_NAME = Runner; + PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + TARGETED_DEVICE_FAMILY = 1; + }; + name = "dev-release-sky"; + }; + E0A496D42CA30D7400E376BB /* pre-release-xhj */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E0A496CA2CA30C7400E376BB /* xhjPreviewRelease.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + EXCLUDED_ARCHS = ""; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = "pre-release-xhj"; + }; + E0A496D52CA30D7400E376BB /* pre-release-xhj */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 789004F1B475B44713E199BC /* Pods-Runner.pre-release-xhj.xcconfig */; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements"; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.pre; + PRODUCT_NAME = Runner; + PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + TARGETED_DEVICE_FAMILY = 1; + }; + name = "pre-release-xhj"; + }; + E0A496D62CA30D8400E376BB /* dev-release-xhj */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E0A496C82CA30C2C00E376BB /* xhjDevRelease.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + EXCLUDED_ARCHS = ""; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + INFOPLIST_FILE = Runner/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + LIBRARY_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)/Flutter", + ); + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = "dev-release-xhj"; + }; + E0A496D72CA30D8400E376BB /* dev-release-xhj */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = ED3A443EA1439FD0FB4BCF80 /* Pods-Runner.dev-release-xhj.xcconfig */; + buildSettings = { + CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements"; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.dev; + PRODUCT_NAME = Runner; + PROVISIONING_PROFILE_SPECIFIER = ""; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; + SUPPORTS_MACCATALYST = NO; + SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; + TARGETED_DEVICE_FAMILY = 1; + }; + name = "dev-release-xhj"; + }; F8797FBDD3C840B38D7E6A01 /* Debug-xhj */ = { isa = XCBuildConfiguration; baseConfigurationReference = 853610C00A55CC450C2FF839 /* xhjDebug.xcconfig */; @@ -2497,6 +2973,7 @@ 97C147041CF9000F007C117D /* Release */, 249021D3217E4FDB00AE95B9 /* Profile */, 73A00B8681EDE1EB63EC993D /* Debug-dev */, + E0A496C62CA309AD00E376BB /* Debug-local */, 8B40B3FD83C5A41406C64627 /* Profile-dev */, E012F2CE4EAD5EA6383524FD /* Release-dev */, CD0F4AFC8F434AA9EA2D2A95 /* Debug-pre */, @@ -2505,9 +2982,13 @@ 92508731B124D206E57D27AC /* Debug-sky */, C51E26EEC6F3F8D8814544CD /* Profile-sky */, 5028C464A6FD115380ECE6A0 /* Release-sky */, + E0A496D02CA30D2800E376BB /* pre-release-sky */, + E0A496D22CA30D5A00E376BB /* dev-release-sky */, F8797FBDD3C840B38D7E6A01 /* Debug-xhj */, 0AECF9F7E0C6DEA08F10801D /* Profile-xhj */, 9073AF548DAA546CE84A8D2F /* Release-xhj */, + E0A496D42CA30D7400E376BB /* pre-release-xhj */, + E0A496D62CA30D8400E376BB /* dev-release-xhj */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -2519,6 +3000,7 @@ 97C147071CF9000F007C117D /* Release */, 249021D4217E4FDB00AE95B9 /* Profile */, 04ED962A2B688AB00046472A /* Debug-dev */, + E0A496C72CA309AD00E376BB /* Debug-local */, 04ED962B2B688AB00046472A /* Profile-dev */, 04ED962C2B688AB00046472A /* Release-dev */, 04ED962D2B688AB00046472A /* Debug-pre */, @@ -2527,9 +3009,13 @@ 04ED96302B688AB00046472A /* Debug-sky */, 04ED96312B688AB00046472A /* Profile-sky */, 04ED96322B688AB00046472A /* Release-sky */, + E0A496D12CA30D2800E376BB /* pre-release-sky */, + E0A496D32CA30D5A00E376BB /* dev-release-sky */, 04ED96332B688AB00046472A /* Debug-xhj */, 04ED96342B688AB00046472A /* Profile-xhj */, 04ED96352B688AB00046472A /* Release-xhj */, + E0A496D52CA30D7400E376BB /* pre-release-xhj */, + E0A496D72CA30D8400E376BB /* dev-release-xhj */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index 4f61f0ae..164fed0d 100755 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -84,6 +84,8 @@ 应用请求相机,以便于拍摄照片,用于头像上传及人脸认证 NSContactsUsageDescription Reason we need access to the contact list + NSFileProtectionKey + NSFileProtectionCompleteUntilFirstUserAuthentication NSLocationAlwaysAndWhenInUseUsageDescription 应用在前台和后台的时候可以搜到更新的位置信息 NSLocationAlwaysUsageDescription @@ -105,6 +107,8 @@ remote-notification + UIFileSharingEnabled + UILaunchStoryboardName LaunchScreen UIMainStoryboardFile @@ -121,10 +125,6 @@ UIViewControllerBasedStatusBarAppearance - NSFileProtectionKey - NSFileProtectionCompleteUntilFirstUserAuthentication - UIFileSharingEnabled - io.flutter.embedded_views_preview From 27eefdc40f322ba2b97a33458fc82ee3dca3c7a8 Mon Sep 17 00:00:00 2001 From: ci_bot Date: Tue, 24 Sep 2024 23:38:47 +0800 Subject: [PATCH 02/39] =?UTF-8?q?feat:=20iOS=E5=8F=96=E6=B6=88=E8=AF=81?= =?UTF-8?q?=E4=B9=A6=E8=87=AA=E5=8A=A8=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Runner.xcodeproj/project.pbxproj | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 8e750a82..d149f92f 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -2611,12 +2611,15 @@ baseConfigurationReference = D697F91E8405773AB9A5881E /* Pods-Runner.pre-release-sky.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.pre; PRODUCT_NAME = Runner; PROVISIONING_PROFILE_SPECIFIER = ""; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.skychip.lock.pre.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -2699,12 +2702,15 @@ baseConfigurationReference = 126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.dev; PRODUCT_NAME = Runner; PROVISIONING_PROFILE_SPECIFIER = ""; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.skychip.lock.dev.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -2787,12 +2793,15 @@ baseConfigurationReference = 789004F1B475B44713E199BC /* Pods-Runner.pre-release-xhj.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.pre; PRODUCT_NAME = Runner; PROVISIONING_PROFILE_SPECIFIER = ""; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.xhjcn.lock.pre.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -2875,12 +2884,15 @@ baseConfigurationReference = ED3A443EA1439FD0FB4BCF80 /* Pods-Runner.dev-release-xhj.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.dev; PRODUCT_NAME = Runner; PROVISIONING_PROFILE_SPECIFIER = ""; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.xhjcn.lock.dev.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; From e00259972512c775ac89ca7ca97986bd8a87e464 Mon Sep 17 00:00:00 2001 From: ci_bot Date: Thu, 26 Sep 2024 09:52:23 +0800 Subject: [PATCH 03/39] =?UTF-8?q?feat:=20=E5=88=9D=E5=A7=8B=E5=8C=96fastla?= =?UTF-8?q?ne=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/Gemfile | 6 ++++++ android/app/build.gradle | 24 +++++++++++++++++++++++ android/fastlane/Appfile | 2 ++ android/fastlane/Fastfile | 38 +++++++++++++++++++++++++++++++++++++ android/fastlane/Pluginfile | 5 +++++ ios/Gemfile | 7 +++++++ ios/Podfile.lock | 6 ------ ios/fastlane/Appfile | 6 ++++++ ios/fastlane/Fastfile | 23 ++++++++++++++++++++++ ios/fastlane/Pluginfile | 5 +++++ 10 files changed, 116 insertions(+), 6 deletions(-) create mode 100644 android/Gemfile create mode 100644 android/fastlane/Appfile create mode 100644 android/fastlane/Fastfile create mode 100644 android/fastlane/Pluginfile create mode 100644 ios/Gemfile create mode 100644 ios/fastlane/Appfile create mode 100644 ios/fastlane/Fastfile create mode 100644 ios/fastlane/Pluginfile diff --git a/android/Gemfile b/android/Gemfile new file mode 100644 index 00000000..cdd3a6b3 --- /dev/null +++ b/android/Gemfile @@ -0,0 +1,6 @@ +source "https://rubygems.org" + +gem "fastlane" + +plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile') +eval_gemfile(plugins_path) if File.exist?(plugins_path) diff --git a/android/app/build.gradle b/android/app/build.gradle index 94b98531..2d22aec3 100755 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -108,6 +108,18 @@ android { resValue "string", "app_name", "锁通通" manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock" } + sky_pre { + dimension "flavor-type" + applicationId "com.skychip.lock.pre" + signingConfig signingConfigs.sky + resValue "string", "app_name", "锁通通-P" + } + sky_dev { + dimension "flavor-type" + applicationId "com.skychip.lock.dev" + signingConfig signingConfigs.sky + resValue "string", "app_name", "锁通通-D" + } xhj { dimension "flavor-type" applicationId "com.xhjcn.lock" @@ -115,6 +127,18 @@ android { resValue "string", "app_name", "星星锁" manifestPlaceholders.JPUSH_PKGNAME = "com.xhjcn.lock" } + xhj_pre { + dimension "flavor-type" + applicationId "com.xhjcn.lock.pre" + signingConfig signingConfigs.xhj + resValue "string", "app_name", "星星锁-P" + } + xhj_dev { + dimension "flavor-type" + applicationId "com.xhjcn.lock.dev" + signingConfig signingConfigs.xhj + resValue "string", "app_name", "星星锁-D" + } } // ----- END flavorDimensions (autogenerated by flutter_flavorizr) ----- diff --git a/android/fastlane/Appfile b/android/fastlane/Appfile new file mode 100644 index 00000000..26360691 --- /dev/null +++ b/android/fastlane/Appfile @@ -0,0 +1,2 @@ +json_key_file("") # Path to the json secret file - Follow https://docs.fastlane.tools/actions/supply/#setup to get one +package_name("") # e.g. com.krausefx.app diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile new file mode 100644 index 00000000..19c557cc --- /dev/null +++ b/android/fastlane/Fastfile @@ -0,0 +1,38 @@ +# This file contains the fastlane.tools configuration +# You can find the documentation at https://docs.fastlane.tools +# +# For a list of all available actions, check out +# +# https://docs.fastlane.tools/actions +# +# For a list of all available plugins, check out +# +# https://docs.fastlane.tools/plugins/available-plugins +# + +# Uncomment the line if you want fastlane to automatically update itself +# update_fastlane + +default_platform(:android) + +platform :android do + desc "Runs all the tests" + lane :test do + gradle(task: "test") + end + + desc "Submit a new Beta Build to Crashlytics Beta" + lane :beta do + gradle(task: "clean assembleRelease") + crashlytics + + # sh "your_script.sh" + # You can also use other beta testing services here + end + + desc "Deploy a new version to the Google Play" + lane :deploy do + gradle(task: "clean assembleRelease") + upload_to_play_store + end +end diff --git a/android/fastlane/Pluginfile b/android/fastlane/Pluginfile new file mode 100644 index 00000000..ecfdb3ce --- /dev/null +++ b/android/fastlane/Pluginfile @@ -0,0 +1,5 @@ +# Autogenerated by fastlane +# +# Ensure this file is checked in to source control! + +gem 'fastlane-plugin-pgyer' diff --git a/ios/Gemfile b/ios/Gemfile new file mode 100644 index 00000000..21cb5dfc --- /dev/null +++ b/ios/Gemfile @@ -0,0 +1,7 @@ +source "https://rubygems.org" + +gem "fastlane" +gem 'cocoapods', '1.14.3' +gem 'public_suffix', '~> 4.0' +plugins_path = File.join(File.dirname(__FILE__), 'fastlane', 'Pluginfile') +eval_gemfile(plugins_path) if File.exist?(plugins_path) diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 61d3d085..022a6c01 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -28,8 +28,6 @@ PODS: - AMapFoundation (>= 1.8.0) - app_settings (5.1.1): - Flutter - - audio_service (0.0.1): - - Flutter - audio_session (0.0.1): - Flutter - audioplayers_darwin (0.0.1): @@ -166,7 +164,6 @@ DEPENDENCIES: - amap_flutter_location (from `.symlinks/plugins/amap_flutter_location/ios`) - amap_flutter_map (from `.symlinks/plugins/amap_flutter_map/ios`) - app_settings (from `.symlinks/plugins/app_settings/ios`) - - audio_service (from `.symlinks/plugins/audio_service/ios`) - audio_session (from `.symlinks/plugins/audio_session/ios`) - audioplayers_darwin (from `.symlinks/plugins/audioplayers_darwin/ios`) - auto_orientation (from `.symlinks/plugins/auto_orientation/ios`) @@ -237,8 +234,6 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/amap_flutter_map/ios" app_settings: :path: ".symlinks/plugins/app_settings/ios" - audio_service: - :path: ".symlinks/plugins/audio_service/ios" audio_session: :path: ".symlinks/plugins/audio_session/ios" audioplayers_darwin: @@ -318,7 +313,6 @@ SPEC CHECKSUMS: AMapFoundation: 9885c48fc3a78fdfb84a0299a2293e56ea3c9fec AMapLocation: 5248aec2455ebb5d104b367813c946430a2ee033 app_settings: 017320c6a680cdc94c799949d95b84cb69389ebc - audio_service: f509d65da41b9521a61f1c404dd58651f265a567 audio_session: 088d2483ebd1dc43f51d253d4a1c517d9a2e7207 audioplayers_darwin: 877d9a4d06331c5c374595e46e16453ac7eafa40 auto_orientation: 102ed811a5938d52c86520ddd7ecd3a126b5d39d diff --git a/ios/fastlane/Appfile b/ios/fastlane/Appfile new file mode 100644 index 00000000..4282947e --- /dev/null +++ b/ios/fastlane/Appfile @@ -0,0 +1,6 @@ +# app_identifier("[[APP_IDENTIFIER]]") # The bundle identifier of your app +# apple_id("[[APPLE_ID]]") # Your Apple Developer Portal username + + +# For more information about the Appfile, see: +# https://docs.fastlane.tools/advanced/#appfile diff --git a/ios/fastlane/Fastfile b/ios/fastlane/Fastfile new file mode 100644 index 00000000..0f39ea63 --- /dev/null +++ b/ios/fastlane/Fastfile @@ -0,0 +1,23 @@ +# This file contains the fastlane.tools configuration +# You can find the documentation at https://docs.fastlane.tools +# +# For a list of all available actions, check out +# +# https://docs.fastlane.tools/actions +# +# For a list of all available plugins, check out +# +# https://docs.fastlane.tools/plugins/available-plugins +# + +# Uncomment the line if you want fastlane to automatically update itself +# update_fastlane + +default_platform(:ios) + +platform :ios do + desc "Description of what the lane does" + lane :custom_lane do + # add actions here: https://docs.fastlane.tools/actions + end +end diff --git a/ios/fastlane/Pluginfile b/ios/fastlane/Pluginfile new file mode 100644 index 00000000..ecfdb3ce --- /dev/null +++ b/ios/fastlane/Pluginfile @@ -0,0 +1,5 @@ +# Autogenerated by fastlane +# +# Ensure this file is checked in to source control! + +gem 'fastlane-plugin-pgyer' From f710f9d11ea989e4dcb09f24566ed42e179b20bc Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Thu, 26 Sep 2024 23:23:53 +0800 Subject: [PATCH 04/39] feat: android fastlane --- android/fastlane/Fastfile | 102 ++++++++++++++++++++++++++++++++------ 1 file changed, 88 insertions(+), 14 deletions(-) diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile index 19c557cc..d2ac818e 100644 --- a/android/fastlane/Fastfile +++ b/android/fastlane/Fastfile @@ -15,24 +15,98 @@ default_platform(:android) +$env_key_project_root = 'ENV_BUILD_WORKSPACE' +$env_current_branch = 'ENV_BUILD_BRANCH' +$env_current_tag = 'ENV_BUILD_TAG' + +$path_dir_build = File.join(ENV[$env_key_project_root],'') +$current_branch = ENV[$env_current_branch] +$current_tag = ENV[$env_current_tag] + +$path_apk_output_dir = File.join($path_dir_build, 'build/app/outputs/flutter-apk') + + +def print_header header + UI.message "~~~~~~~~~~~~~~~~~~~~~~" + UI.message '📍 ' + header.to_s + UI.message "~~~~~~~~~~~~~~~~~~~~~~" +end + +def print_log(content) + UI.message '📠 ' + content.to_s +end + platform :android do - desc "Runs all the tests" - lane :test do - gradle(task: "test") + before_all do + print_header '🏁 Before All' + print_log $current_branch + print_log $current_tag + print_log $path_file_preview_apk_default + print_log $path_file_release_apk_default + print_log $path_file_preview_apk_copy + print_log $path_file_release_apk_copy + Dir.chdir "../.." do + sh('pwd') + end end - desc "Submit a new Beta Build to Crashlytics Beta" - lane :beta do - gradle(task: "clean assembleRelease") - crashlytics - - # sh "your_script.sh" - # You can also use other beta testing services here + desc "Submit a new Beta Build to Pgy Beta" + lane :beta do |options| + flavor = options[:flavor] + env = options[:env] + UI.user_error!("flavor is required") unless flavor + UI.user_error!("env is required") unless env + print_log "build #{flavor} on #{env}" + build_number = Time.now.strftime("%Y%m%d%H") + print_log "BuildNo #{build_number}" + build_version = '1.0.0' + print_log "build_version #{build_version}" + commit_hash = last_git_commit + short_hash = commit_hash[:abbreviated_commit_hash] + print_log "last_git_commit_short_hash #{short_hash}" + Dir.chdir "../.." do + sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}_#{env}", "-t", "lib/main_#{flavor}_#{env}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") + end + logs = changelog_from_git_commits( + pretty: '- %s (%cn)', + commits_count: 5, + merge_commit_filtering: 'exclude_merges' + ) + upload_file_to_pgy(directory:$path_apk_output_dir,file_extension:".apk",logs:logs) end - desc "Deploy a new version to the Google Play" - lane :deploy do - gradle(task: "clean assembleRelease") - upload_to_play_store + desc "Build & upload a new version to Gitlab Release" + lane :release do |options| + flavor = options[:flavor] + UI.user_error!("flavor is required") unless flavor + print_log "build flavor for: #{flavor}" + build_number = Time.now.strftime("%Y%m%d%H") + print_log "BuildNo #{build_number}" + build_version = $current_tag.match(/^v(\d+\.\d+\.\d+)/).captures[0] + print_log "buildVersion #{build_version}" + commit_hash = last_git_commit + short_hash = commit_hash[:abbreviated_commit_hash] + print_log "last_git_commit_short_hash #{short_hash}" + Dir.chdir "../.." do + # sh("sed", "-i", "s/1.0.0+1/#{appSdkVersion}/g", "pubspec.yaml") + # sh("sed", "-i", "s/upload_source_maps: true/upload_source_maps: false/g", "pubspec.yaml") + sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") + #sh('cp',$path_file_release_apk_default,$path_file_release_apk_copy) + end + end + + lane :upload_file_to_pgy do |options| + directory = options[:directory] + file_extension = options[:file_extension] + logs = options[:logs] + UI.user_error!("Directory path is required") unless directory + UI.user_error!("File extension is required") unless file_extension + # 使用Dir.glob来查找目录下的所有.apk和.ipa文件 + Dir.glob("#{directory}/*#{file_extension}").each do |file| + # 打印文件名称 + puts "start upload file: #{file}" + pgyer(api_key: ENV['PGY_API_KEY'],apk:file,update_description: logs) + File.delete(file) + end end end From 1b1c481961ec577cf29e4e3e93edaa8240689830 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Fri, 27 Sep 2024 23:33:45 +0800 Subject: [PATCH 05/39] feat: flavor support dev and pre --- lib/flavors.dart | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/lib/flavors.dart b/lib/flavors.dart index fcc73aca..75a93ebf 100755 --- a/lib/flavors.dart +++ b/lib/flavors.dart @@ -5,7 +5,11 @@ enum Flavor { dev, pre, sky, + sky_dev, + sky_pre, xhj, + xhj_dev, + xhj_pre, } class StarLockAMapKey { @@ -28,8 +32,15 @@ class F { static String get name => appFlavor?.name ?? ''; - static bool get isXHJ => appFlavor == Flavor.xhj; - static bool get isSKY => appFlavor == Flavor.sky; + static bool get isXHJ => + appFlavor == Flavor.xhj || + appFlavor == Flavor.xhj_dev || + appFlavor == Flavor.xhj_pre; + + static bool get isSKY => + appFlavor == Flavor.sky || + appFlavor == Flavor.sky_dev || + appFlavor == Flavor.sky_pre; //便捷判断并返回值 static dynamic sw( @@ -39,6 +50,8 @@ class F { } switch (appFlavor) { case Flavor.sky: + case Flavor.sky_dev: + case Flavor.sky_pre: return skyCall(); case Flavor.local: case Flavor.dev: @@ -58,8 +71,12 @@ class F { case Flavor.pre: return '星锁-pre'; case Flavor.sky: + case Flavor.sky_dev: + case Flavor.sky_pre: return '锁通通'.tr; case Flavor.xhj: + case Flavor.xhj_dev: + case Flavor.xhj_pre: return '星星锁'.tr; default: throw Exception('flavor[$name] title not found'); @@ -75,8 +92,12 @@ class F { case Flavor.pre: return '星锁'.tr; case Flavor.sky: + case Flavor.sky_dev: + case Flavor.sky_pre: return '锁通通'.tr; case Flavor.xhj: + case Flavor.xhj_dev: + case Flavor.xhj_pre: return '星星锁'.tr; default: throw Exception('flavor[$name] title not found'); @@ -87,11 +108,16 @@ class F { switch (appFlavor) { case Flavor.local: // return 'https://ge.lock.star-lock.cn'; // 葛工 - // return 'http://192.168.1.15:8022'; // 谢工 + // return 'http://192.168.1.15:8022'; // 谢工 return 'http://zhou.lock.star-lock.cn'; // 周工 + case Flavor.dev: + case Flavor.xhj_dev: + case Flavor.sky_dev: return 'https://dev.lock.star-lock.cn'; case Flavor.pre: + case Flavor.xhj_pre: + case Flavor.sky_pre: return 'https://pre.lock.star-lock.cn'; case Flavor.sky: return 'https://lock.skychip.top'; From ec3ca583db7523052ae09bf0eca78a7bc18167b8 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Sun, 29 Sep 2024 18:37:47 +0800 Subject: [PATCH 06/39] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E5=A4=8D=E6=8E=88?= =?UTF-8?q?=E6=9D=83=E7=AE=A1=E7=90=86=E5=91=98=E5=9B=BE=E6=A0=87=E5=8F=98?= =?UTF-8?q?=E5=BD=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- images/main/icon_main_authorizedAdmin.png | Bin 828 -> 2982 bytes 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 images/main/icon_main_authorizedAdmin.png diff --git a/images/main/icon_main_authorizedAdmin.png b/images/main/icon_main_authorizedAdmin.png old mode 100644 new mode 100755 index 70701a568ac44c63765309bb9786b26fae6b8446..13c3463e9a593dc98837d51aec986196828ee67d GIT binary patch literal 2982 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 G0002BVu39H From e945be8fe21afe7944a0649113648dc5baf98c5f Mon Sep 17 00:00:00 2001 From: Liuyf Date: Mon, 7 Oct 2024 11:10:49 +0800 Subject: [PATCH 07/39] =?UTF-8?q?refactor=EF=BC=9A=20sky=20App=E5=90=8D?= =?UTF-8?q?=E7=A7=B0=E8=BF=98=E5=8E=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/app/build.gradle | 2 +- ios/Flutter/skyDebug.xcconfig | 4 ++-- ios/Flutter/skyProfile.xcconfig | 4 ++-- ios/Flutter/skyRelease.xcconfig | 4 ++-- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 68d0a18d..cd368efc 100755 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -106,7 +106,7 @@ android { dimension "flavor-type" applicationId "com.skychip.lock" signingConfig signingConfigs.sky - resValue "string", "app_name", "斯凯智能" + resValue "string", "app_name", "锁通通" manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock" proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-sky.pro' } diff --git a/ios/Flutter/skyDebug.xcconfig b/ios/Flutter/skyDebug.xcconfig index 4148f08e..b2f11914 100755 --- a/ios/Flutter/skyDebug.xcconfig +++ b/ios/Flutter/skyDebug.xcconfig @@ -2,5 +2,5 @@ FLUTTER_TARGET=lib/main_sky_full.dart ASSET_PREFIX=sky -BUNDLE_NAME=斯凯智能 -BUNDLE_DISPLAY_NAME=斯凯智能 +BUNDLE_NAME=锁通通 +BUNDLE_DISPLAY_NAME=锁通通 diff --git a/ios/Flutter/skyProfile.xcconfig b/ios/Flutter/skyProfile.xcconfig index 4148f08e..b2f11914 100755 --- a/ios/Flutter/skyProfile.xcconfig +++ b/ios/Flutter/skyProfile.xcconfig @@ -2,5 +2,5 @@ FLUTTER_TARGET=lib/main_sky_full.dart ASSET_PREFIX=sky -BUNDLE_NAME=斯凯智能 -BUNDLE_DISPLAY_NAME=斯凯智能 +BUNDLE_NAME=锁通通 +BUNDLE_DISPLAY_NAME=锁通通 diff --git a/ios/Flutter/skyRelease.xcconfig b/ios/Flutter/skyRelease.xcconfig index 4148f08e..b2f11914 100755 --- a/ios/Flutter/skyRelease.xcconfig +++ b/ios/Flutter/skyRelease.xcconfig @@ -2,5 +2,5 @@ FLUTTER_TARGET=lib/main_sky_full.dart ASSET_PREFIX=sky -BUNDLE_NAME=斯凯智能 -BUNDLE_DISPLAY_NAME=斯凯智能 +BUNDLE_NAME=锁通通 +BUNDLE_DISPLAY_NAME=锁通通 From b9e6c605d995a44c7ec5da7a462312aeb6281ab2 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Mon, 7 Oct 2024 11:12:31 +0800 Subject: [PATCH 08/39] =?UTF-8?q?fix:=20google=20targetSdkVersion=E6=9C=80?= =?UTF-8?q?=E4=BD=8E=E7=89=88=E6=9C=AC=E8=A6=81=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/app/build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index cd368efc..7c5f4ea6 100755 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -149,7 +149,7 @@ android { // 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 25 - targetSdkVersion 33 + targetSdkVersion 34 versionCode flutterVersionCode.toInteger() versionName flutterVersionName proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' From f5dc9291b904038a1c5fb9975711922ae7114069 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Mon, 7 Oct 2024 11:18:25 +0800 Subject: [PATCH 09/39] =?UTF-8?q?refactor=EF=BC=9A=20sky=20App=E6=89=93?= =?UTF-8?q?=E5=8C=85=E4=BD=BF=E7=94=A8lite=E6=A8=A1=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Flutter/skyRelease.xcconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ios/Flutter/skyRelease.xcconfig b/ios/Flutter/skyRelease.xcconfig index b2f11914..30eced7a 100755 --- a/ios/Flutter/skyRelease.xcconfig +++ b/ios/Flutter/skyRelease.xcconfig @@ -1,6 +1,6 @@ #include "Generated.xcconfig" -FLUTTER_TARGET=lib/main_sky_full.dart +FLUTTER_TARGET=lib/main_sky_lite.dart ASSET_PREFIX=sky BUNDLE_NAME=锁通通 BUNDLE_DISPLAY_NAME=锁通通 From 6cbc22d2377f74a713879dbc579674dea5a8c3cc Mon Sep 17 00:00:00 2001 From: Liuyf Date: Mon, 7 Oct 2024 18:12:44 +0800 Subject: [PATCH 10/39] =?UTF-8?q?fix:=20=E5=B0=86=E8=AF=A5=20=E9=AB=98?= =?UTF-8?q?=E5=BE=B7=E5=9C=B0=E5=9B=BESDK=20=E5=8D=87=E7=BA=A7=E5=88=B0?= =?UTF-8?q?=E7=AC=A6=E5=90=88google=E5=95=86=E5=BA=97=E6=94=BF=E7=AD=96?= =?UTF-8?q?=E8=A7=84=E5=AE=9A=E7=9A=84=E7=89=88=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/app/build.gradle | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 7c5f4ea6..da5cb621 100755 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -235,8 +235,9 @@ flutter { dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation('com.amap.api:location:5.6.0') - implementation('com.amap.api:3dmap:8.1.0') +// implementation('com.amap.api:location:5.6.0') +// implementation('com.amap.api:3dmap:8.1.0') + implementation('com.amap.api:3dmap-location-search:latest.integration') implementation 'cn.jiguang.sdk:jpush:5.2.3' // 接入华为厂商 From d0290d946eb4f6b276c9520dab9700338a5419f0 Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Wed, 9 Oct 2024 23:13:50 +0800 Subject: [PATCH 11/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81android=20ios?= =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=8E=AF=E5=A2=83=E5=88=B6=E5=93=81=E5=8C=85?= =?UTF-8?q?=E6=9E=84=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/build.sh | 25 +++++ android/fastlane/Fastfile | 3 - ios/build.sh | 26 +++++ ios/fastlane/Fastfile | 205 +++++++++++++++++++++++++++++++++++++- 4 files changed, 253 insertions(+), 6 deletions(-) create mode 100755 android/build.sh create mode 100755 ios/build.sh diff --git a/android/build.sh b/android/build.sh new file mode 100755 index 00000000..6d2af557 --- /dev/null +++ b/android/build.sh @@ -0,0 +1,25 @@ +#!/bin/bash +set -e +echo "Build Params Info:Build Dir:$CI_PROJECT_DIR,Build Tag:$CI_COMMIT_TAG,Build Branch:$CI_COMMIT_BRANCH,Build BUILD_REVISION:$CI_RUNNER_REVISION" + +export ENV_BUILD_TAG=${CI_COMMIT_TAG} +export ENV_BUILD_BRANCH=${CI_COMMIT_BRANCH} +export ENV_BUILD_WORKSPACE=${CI_PROJECT_DIR} +echo "GITLAB_WORKSPACE: ${CI_PROJECT_DIR}" +cd ${CI_PROJECT_DIR}/android +echo "ENV_BUILD_TAG:${ENV_BUILD_TAG},ENV_BUILD_BRANCH:${ENV_BUILD_BRANCH}" +regex='^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$' +if [[ $ENV_BUILD_TAG =~ $regex ]]; then + echo "===Building xhj release===" + bundle exec fastlane release flavor:xhj --verbose + bundle exec fastlane release flavor:sky --verbose +elif [[ "${ENV_BUILD_BRANCH}" == "develop" ]]; then + echo "===Building xhj dev===" + bundle exec fastlane beta flavor:xhj env:dev --verbose + bundle exec fastlane beta flavor:sky env:dev --verbose +elif [[ "${ENV_BUILD_BRANCH}" == "release" ]] || [[ "${ENV_BUILD_BRANCH}" == "feat_devops" ]] ; then + echo "===Building xhj pre===" + bundle exec fastlane beta flavor:xhj env:pre --verbose + bundle exec fastlane beta flavor:sky env:pre --verbose +fi +exit 0 \ No newline at end of file diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile index d2ac818e..1ab17252 100644 --- a/android/fastlane/Fastfile +++ b/android/fastlane/Fastfile @@ -88,10 +88,7 @@ platform :android do short_hash = commit_hash[:abbreviated_commit_hash] print_log "last_git_commit_short_hash #{short_hash}" Dir.chdir "../.." do - # sh("sed", "-i", "s/1.0.0+1/#{appSdkVersion}/g", "pubspec.yaml") - # sh("sed", "-i", "s/upload_source_maps: true/upload_source_maps: false/g", "pubspec.yaml") sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") - #sh('cp',$path_file_release_apk_default,$path_file_release_apk_copy) end end diff --git a/ios/build.sh b/ios/build.sh new file mode 100755 index 00000000..43d1975e --- /dev/null +++ b/ios/build.sh @@ -0,0 +1,26 @@ +#!/bin/bash +set -e +echo "Build Params Info:Build Dir:$CI_PROJECT_DIR,Build Tag:$CI_COMMIT_TAG,Build Branch:$CI_COMMIT_BRANCH,Build BUILD_REVISION:$CI_RUNNER_REVISION" + +export ENV_BUILD_TAG=${CI_COMMIT_TAG} +export ENV_BUILD_BRANCH=${CI_COMMIT_BRANCH} +export ENV_BUILD_WORKSPACE=${CI_PROJECT_DIR} +echo "GITLAB_WORKSPACE: ${CI_PROJECT_DIR}" +cd ${CI_PROJECT_DIR}/ios +bundle exec pod install +echo "ENV_BUILD_TAG:${ENV_BUILD_TAG},ENV_BUILD_BRANCH:${ENV_BUILD_BRANCH}" +regex='^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$' +if [[ $ENV_BUILD_TAG =~ $regex ]]; then + echo "===Building xhj release===" + bundle exec fastlane release flavor:xhj --verbose + bundle exec fastlane release flavor:sky --verbose +elif [[ "${ENV_BUILD_BRANCH}" == "develop" ]]; then + echo "===Building xhj dev===" + bundle exec fastlane beta flavor:xhj env:dev --verbose + bundle exec fastlane beta flavor:sky env:dev --verbose +elif [[ "${ENV_BUILD_BRANCH}" == "release" ]] || [[ "${ENV_BUILD_BRANCH}" == "feat_devops" ]] ; then + echo "===Building xhj pre===" + bundle exec fastlane beta flavor:xhj env:pre --verbose + bundle exec fastlane beta flavor:sky env:pre --verbose +fi +exit 0 \ No newline at end of file diff --git a/ios/fastlane/Fastfile b/ios/fastlane/Fastfile index 0f39ea63..af831021 100644 --- a/ios/fastlane/Fastfile +++ b/ios/fastlane/Fastfile @@ -15,9 +15,208 @@ default_platform(:ios) +# setup_travis + +# --- xhj Const --- +$signing_identity_xhj_distribution = 'iPhone Distribution: Shenzhen Xinhongjia Electronics Co., Ltd. (P8997RW3V8)' +$app_identifier = 'xhj' +$provisioning_name_adhoc = 'StarApt Project Mobile Ad Hoc' +$provisioning_name_distribution = 'StarApt Project Mobile Distribution' +$gym_config_sky_preview = 'Preview-xhj' +$gym_config_sky_release = 'Release' + +# --- sky Const --- +$signing_identity_sky_distribution = 'iPhone Distribution: Shenzhen Xinhongjia Electronics Co., Ltd. (P8997RW3V8)' +$app_identifier = 'sky' +$provisioning_name_adhoc = 'StarApt Project Mobile Ad Hoc' +$provisioning_name_distribution = 'StarApt Project Mobile Distribution' +$gym_config_sky_preview = 'Preview-sky' +$gym_config_sky_release = 'Release' + + +# --- common Const --- +$match_type_adhoc = 'adhoc' +$match_type_appstore = 'appstore' +$gym_scheme = 'Runner' +$gym_workspace = 'Runner.xcworkspace' + + +$env_key_project_root = 'ENV_BUILD_WORKSPACE' +$env_current_branch = 'ENV_BUILD_BRANCH' +$env_current_tag = 'ENV_BUILD_TAG' +$env_key_fastlane_apple_auth_key = 'APPLE_AUTH_CONTENT' +$env_key_fastlane_apple_auth_issuer_key = 'APPLE_AUTH_ISSUER_ID' +$env_key_fastlane_apple_auth_id_key = 'APPLE_AUTH_KEY_ID' + +$path_dir_build = File.join(ENV[$env_key_project_root], '') +$current_branch = ENV[$env_current_branch] +$current_tag = ENV[$env_current_tag] + +$filename_ipa_default = 'app-starlock.ipa' +$filename_beta_ipa_copy = 'app-starlock-'+$current_branch+'.ipa' +$filename_release_ipa_copy = 'app-starlock-'+$current_tag+'.ipa' + +$path_ipa_output_dir = File.join($path_dir_build, 'build/app/outputs/flutter-ipa') +# --- Lanes --- platform :ios do - desc "Description of what the lane does" - lane :custom_lane do - # add actions here: https://docs.fastlane.tools/actions + before_all do + print_header '🏁 Before All' + print_log $current_branch + print_log $current_tag + Dir.chdir "../.." do + sh('pwd') + end + end + + desc "Build & Deliver to Pgy" + lane :beta do |options| + flavor = options[:flavor] + env = options[:env] + UI.user_error!("flavor is required") unless flavor + UI.user_error!("env is required") unless env + print_log "build #{flavor} on #{env}" + build_number = Time.now.strftime("%Y%m%d%H") + print_log "Build Commits #{build_number}" + build_version = '1.0.0'; # Time.now.strftime("%Y%m%d%H%M%S") + print_log "build_version #{build_version}" + commit_hash = last_git_commit + short_hash = commit_hash[:abbreviated_commit_hash] + print_log "last_git_commit_short_hash #{short_hash}" + Dir.chdir "../.." do + sh("flutter", "build", "ios", "--no-tree-shake-icons", "--no-codesign", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}_#{env}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") + end + #set_bundle_short_version('./Runner/Info.plist', $current_branch) + gym_scheme_preview="#{flavor}" + print_log "gym_scheme_preview #{gym_scheme_preview}" + gym_configuration = "#{env}-release-#{flavor}" + print_log "gym_configuration #{gym_configuration}" + ipa_default_filename = "app-starlock-preview-#{flavor}.ipa" + print_log "ipa_default_filename #{ipa_default_filename}" + gym( + scheme: gym_scheme_preview, + workspace: $gym_workspace, + configuration: gym_configuration, + output_directory: $path_ipa_output_dir, + output_name: ipa_default_filename, + export_method: "ad-hoc", + export_options: { + provisioningProfiles: { + "com.xhjcn.lock.dev" => "Adhoc_com.xhjcn.lock.dev.mobileprovision", + "com.xhjcn.lock.pre" => "Adhoc_com.xhjcn.lock.pre.mobileprovision", + "com.skychip.lock.dev" => "Adhoc_com.skychip.lock.dev.mobileprovision", + "com.skychip.lock.pre" => "Adhoc_com.skychip.lock.pre.mobileprovision", + } + } + ) + logs = changelog_from_git_commits( + pretty: '- %s (%cn)', + commits_count: 5, + merge_commit_filtering: 'exclude_merges' + ) + upload_file_to_pgy(directory:$path_ipa_output_dir,file_extension:".ipa",logs:logs) + end + + desc "Build & Deliver to App Store Connect" + lane :release do |options| + flavor = options[:flavor] + UI.user_error!("flavor is required") unless flavor + print_log "build flavor: #{flavor}" + build_number = Time.now.strftime("%Y%m%d%H") + print_log "Build Commits #{build_number}" + build_version = $current_tag.match(/^v(\d+\.\d+\.\d+)/).captures[0] + print_log "build_version #{build_version}" + commit_hash = last_git_commit + short_hash = commit_hash[:abbreviated_commit_hash] + print_log "last_git_commit_short_hash #{short_hash}" + Dir.chdir "../.." do + sh("flutter", "build", "ios", "--no-tree-shake-icons", "--no-codesign", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") + end + gym_scheme_release="#{flavor}" + print_log "gym_scheme_release #{gym_scheme_release}" + gym_configuration = "Release-#{flavor}" + print_log "gym_configuration #{gym_configuration}" + ipa_default_filename = "app-starlock-release-#{flavor}.ipa" + print_log "ipa_default_filename #{ipa_default_filename}" + gym( + scheme: gym_scheme_release, + workspace: $gym_workspace, + configuration: gym_configuration, + output_directory: $path_ipa_output_dir, + output_name: ipa_default_filename, + export_method: "app-store", + export_options: { + provisioningProfiles: { + "com.xhjcn.lock" => "Appstore_com.xhjcn.lock.mobileprovision", + "com.skychip.lock" => "Appstore_com.skychip.lock.mobileprovision", + } + } + ) + auth_key_prefix=flavor.upcase + print_log "auth_key_prefix #{auth_key_prefix}" + api_key = app_store_connect_api_key( + key_id: ENV["#{auth_key_prefix}_APPLE_AUTH_KEY_ID"], + issuer_id: ENV["#{auth_key_prefix}_APPLE_AUTH_ISSUER_ID"], + key_content: ENV["#{auth_key_prefix}_APPLE_AUTH_CONTENT"], + is_key_content_base64: true, + duration: 1200, + in_house: false + ) + print_log "api_key #{api_key}" + ipa_file_path = File.join($path_ipa_output_dir, ipa_default_filename) + pilot( + api_key: api_key, + ipa: ipa_file_path, + skip_submission: true, + skip_waiting_for_build_processing: true + ) + end + + lane :upload_file_to_pgy do |options| + directory = options[:directory] + file_extension = options[:file_extension] + logs = options[:logs] + UI.user_error!("Directory path is required") unless directory + UI.user_error!("File extension is required") unless file_extension + # 使用Dir.glob来查找目录下的所有.apk和.ipa文件 + Dir.glob("#{directory}/*#{file_extension}").each do |file| + # 打印文件名称 + puts "start upload file: #{file}" + pgyer(api_key: ENV['PGY_API_KEY'],apk:file,update_description: logs) + File.delete(file) + end + end + +end + + + +# --- Prints --- +def print_title_log(title, content) + UI.message '📠 ' + title.to_s + ':' + print_log content +end + +def print_log(content) + UI.message '📠 ' + content.to_s +end + +def print_dir(path) + UI.message '📂📂📂 Print Dir 📂📂📂' + Dir.chdir(path) do + sh('ls -lh') end end + +def print_header header + UI.message "~~~~~~~~~~~~~~~~~~~~~~" + UI.message '📍 ' + header.to_s + UI.message "~~~~~~~~~~~~~~~~~~~~~~" +end + +# --- Methods --- +def set_bundle_short_version(plist_path, version_string) + print_header "Set Bundle short version" + print_log plist_path + print_log version_string + set_info_plist_value(path: plist_path, key: 'CFBundleShortVersionString', value: version_string) +end \ No newline at end of file From 8aefee0ad123633258801fbc38afcce03247d76f Mon Sep 17 00:00:00 2001 From: ci_bot Date: Wed, 9 Oct 2024 23:17:01 +0800 Subject: [PATCH 12/39] =?UTF-8?q?feat:=20gem=E4=BE=9D=E8=B5=96=E5=BA=93?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E9=94=81=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/Gemfile.lock | 221 +++++++++++++++++++++++++++++++++ ios/Gemfile.lock | 288 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 509 insertions(+) create mode 100644 android/Gemfile.lock create mode 100644 ios/Gemfile.lock diff --git a/android/Gemfile.lock b/android/Gemfile.lock new file mode 100644 index 00000000..554a5952 --- /dev/null +++ b/android/Gemfile.lock @@ -0,0 +1,221 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (3.0.7) + base64 + nkf + rexml + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + artifactory (3.0.17) + atomos (0.1.3) + aws-eventstream (1.3.0) + aws-partitions (1.979.0) + aws-sdk-core (3.209.1) + aws-eventstream (~> 1, >= 1.3.0) + aws-partitions (~> 1, >= 1.651.0) + aws-sigv4 (~> 1.9) + jmespath (~> 1, >= 1.6.1) + aws-sdk-kms (1.94.0) + aws-sdk-core (~> 3, >= 3.207.0) + aws-sigv4 (~> 1.5) + aws-sdk-s3 (1.166.0) + aws-sdk-core (~> 3, >= 3.207.0) + aws-sdk-kms (~> 1) + aws-sigv4 (~> 1.5) + aws-sigv4 (1.10.0) + aws-eventstream (~> 1, >= 1.0.2) + babosa (1.0.4) + base64 (0.2.0) + claide (1.1.0) + colored (1.2) + colored2 (3.1.2) + commander (4.6.0) + highline (~> 2.0.0) + declarative (0.0.20) + digest-crc (0.6.5) + rake (>= 12.0.0, < 14.0.0) + domain_name (0.5.20190701) + unf (>= 0.0.5, < 1.0.0) + dotenv (2.8.1) + emoji_regex (3.2.3) + excon (0.109.0) + faraday (1.10.4) + faraday-em_http (~> 1.0) + faraday-em_synchrony (~> 1.0) + faraday-excon (~> 1.1) + faraday-httpclient (~> 1.0) + faraday-multipart (~> 1.0) + faraday-net_http (~> 1.0) + faraday-net_http_persistent (~> 1.0) + faraday-patron (~> 1.0) + faraday-rack (~> 1.0) + faraday-retry (~> 1.0) + ruby2_keywords (>= 0.0.4) + faraday-cookie_jar (0.0.7) + faraday (>= 0.8.0) + http-cookie (~> 1.0.0) + faraday-em_http (1.0.0) + faraday-em_synchrony (1.0.0) + faraday-excon (1.1.0) + faraday-httpclient (1.0.1) + faraday-multipart (1.0.4) + multipart-post (~> 2) + faraday-net_http (1.0.2) + faraday-net_http_persistent (1.2.0) + faraday-patron (1.0.0) + faraday-rack (1.0.0) + faraday-retry (1.0.3) + faraday_middleware (1.2.1) + faraday (~> 1.0) + fastimage (2.3.1) + fastlane (2.222.0) + CFPropertyList (>= 2.3, < 4.0.0) + addressable (>= 2.8, < 3.0.0) + artifactory (~> 3.0) + aws-sdk-s3 (~> 1.0) + babosa (>= 1.0.3, < 2.0.0) + bundler (>= 1.12.0, < 3.0.0) + colored (~> 1.2) + commander (~> 4.6) + dotenv (>= 2.1.1, < 3.0.0) + emoji_regex (>= 0.1, < 4.0) + excon (>= 0.71.0, < 1.0.0) + faraday (~> 1.0) + faraday-cookie_jar (~> 0.0.6) + faraday_middleware (~> 1.0) + fastimage (>= 2.1.0, < 3.0.0) + gh_inspector (>= 1.1.2, < 2.0.0) + google-apis-androidpublisher_v3 (~> 0.3) + google-apis-playcustomapp_v1 (~> 0.1) + google-cloud-env (>= 1.6.0, < 2.0.0) + google-cloud-storage (~> 1.31) + highline (~> 2.0) + http-cookie (~> 1.0.5) + json (< 3.0.0) + jwt (>= 2.1.0, < 3) + mini_magick (>= 4.9.4, < 5.0.0) + multipart-post (>= 2.0.0, < 3.0.0) + naturally (~> 2.2) + optparse (>= 0.1.1, < 1.0.0) + plist (>= 3.1.0, < 4.0.0) + rubyzip (>= 2.0.0, < 3.0.0) + security (= 0.1.5) + simctl (~> 1.6.3) + terminal-notifier (>= 2.0.0, < 3.0.0) + terminal-table (~> 3) + tty-screen (>= 0.6.3, < 1.0.0) + tty-spinner (>= 0.8.0, < 1.0.0) + word_wrap (~> 1.0.0) + xcodeproj (>= 1.13.0, < 2.0.0) + xcpretty (~> 0.3.0) + xcpretty-travis-formatter (>= 0.0.3, < 2.0.0) + fastlane-plugin-pgyer (0.2.9) + gh_inspector (1.1.3) + google-apis-androidpublisher_v3 (0.54.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-core (0.11.3) + addressable (~> 2.5, >= 2.5.1) + googleauth (>= 0.16.2, < 2.a) + httpclient (>= 2.8.1, < 3.a) + mini_mime (~> 1.0) + representable (~> 3.0) + retriable (>= 2.0, < 4.a) + rexml + google-apis-iamcredentials_v1 (0.17.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-playcustomapp_v1 (0.13.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-storage_v1 (0.29.0) + google-apis-core (>= 0.11.0, < 2.a) + google-cloud-core (1.6.1) + google-cloud-env (>= 1.0, < 3.a) + google-cloud-errors (~> 1.0) + google-cloud-env (1.6.0) + faraday (>= 0.17.3, < 3.0) + google-cloud-errors (1.3.1) + google-cloud-storage (1.45.0) + addressable (~> 2.8) + digest-crc (~> 0.4) + google-apis-iamcredentials_v1 (~> 0.1) + google-apis-storage_v1 (~> 0.29.0) + google-cloud-core (~> 1.6) + googleauth (>= 0.16.2, < 2.a) + mini_mime (~> 1.0) + googleauth (1.8.1) + faraday (>= 0.17.3, < 3.a) + jwt (>= 1.4, < 3.0) + multi_json (~> 1.11) + os (>= 0.9, < 2.0) + signet (>= 0.16, < 2.a) + highline (2.0.3) + http-cookie (1.0.7) + domain_name (~> 0.5) + httpclient (2.8.3) + jmespath (1.6.2) + json (2.7.2) + jwt (2.9.1) + base64 + mini_magick (4.13.2) + mini_mime (1.1.5) + multi_json (1.15.0) + multipart-post (2.4.1) + nanaimo (0.3.0) + naturally (2.2.1) + nkf (0.2.0) + optparse (0.5.0) + os (1.1.4) + plist (3.7.1) + public_suffix (5.1.1) + rake (13.2.1) + representable (3.2.0) + declarative (< 0.1.0) + trailblazer-option (>= 0.1.1, < 0.2.0) + uber (< 0.2.0) + retriable (3.1.2) + rexml (3.3.7) + rouge (2.0.7) + ruby2_keywords (0.0.5) + rubyzip (2.3.2) + security (0.1.5) + signet (0.18.0) + addressable (~> 2.8) + faraday (>= 0.17.5, < 3.a) + jwt (>= 1.5, < 3.0) + multi_json (~> 1.10) + simctl (1.6.10) + CFPropertyList + naturally + terminal-notifier (2.0.0) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + trailblazer-option (0.1.2) + tty-cursor (0.7.1) + tty-screen (0.8.2) + tty-spinner (0.9.3) + tty-cursor (~> 0.7) + uber (0.1.0) + unf (0.2.0) + unicode-display_width (2.6.0) + word_wrap (1.0.0) + xcodeproj (1.25.0) + CFPropertyList (>= 2.3.3, < 4.0) + atomos (~> 0.1.3) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.3.0) + rexml (>= 3.3.2, < 4.0) + xcpretty (0.3.0) + rouge (~> 2.0.7) + xcpretty-travis-formatter (1.0.1) + xcpretty (~> 0.2, >= 0.0.7) + +PLATFORMS + ruby + +DEPENDENCIES + fastlane + fastlane-plugin-pgyer + +BUNDLED WITH + 1.17.2 diff --git a/ios/Gemfile.lock b/ios/Gemfile.lock new file mode 100644 index 00000000..8882903d --- /dev/null +++ b/ios/Gemfile.lock @@ -0,0 +1,288 @@ +GEM + remote: https://rubygems.org/ + specs: + CFPropertyList (3.0.7) + base64 + nkf + rexml + activesupport (6.1.7.8) + concurrent-ruby (~> 1.0, >= 1.0.2) + i18n (>= 1.6, < 2) + minitest (>= 5.1) + tzinfo (~> 2.0) + zeitwerk (~> 2.3) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + algoliasearch (1.27.5) + httpclient (~> 2.8, >= 2.8.3) + json (>= 1.5.1) + artifactory (3.0.17) + atomos (0.1.3) + aws-eventstream (1.3.0) + aws-partitions (1.979.0) + aws-sdk-core (3.209.1) + aws-eventstream (~> 1, >= 1.3.0) + aws-partitions (~> 1, >= 1.651.0) + aws-sigv4 (~> 1.9) + jmespath (~> 1, >= 1.6.1) + aws-sdk-kms (1.94.0) + aws-sdk-core (~> 3, >= 3.207.0) + aws-sigv4 (~> 1.5) + aws-sdk-s3 (1.166.0) + aws-sdk-core (~> 3, >= 3.207.0) + aws-sdk-kms (~> 1) + aws-sigv4 (~> 1.5) + aws-sigv4 (1.10.0) + aws-eventstream (~> 1, >= 1.0.2) + babosa (1.0.4) + base64 (0.2.0) + claide (1.1.0) + cocoapods (1.14.3) + addressable (~> 2.8) + claide (>= 1.0.2, < 2.0) + cocoapods-core (= 1.14.3) + cocoapods-deintegrate (>= 1.0.3, < 2.0) + cocoapods-downloader (>= 2.1, < 3.0) + cocoapods-plugins (>= 1.0.0, < 2.0) + cocoapods-search (>= 1.0.0, < 2.0) + cocoapods-trunk (>= 1.6.0, < 2.0) + cocoapods-try (>= 1.1.0, < 2.0) + colored2 (~> 3.1) + escape (~> 0.0.4) + fourflusher (>= 2.3.0, < 3.0) + gh_inspector (~> 1.0) + molinillo (~> 0.8.0) + nap (~> 1.0) + ruby-macho (>= 2.3.0, < 3.0) + xcodeproj (>= 1.23.0, < 2.0) + cocoapods-core (1.14.3) + activesupport (>= 5.0, < 8) + addressable (~> 2.8) + algoliasearch (~> 1.0) + concurrent-ruby (~> 1.1) + fuzzy_match (~> 2.0.4) + nap (~> 1.0) + netrc (~> 0.11) + public_suffix (~> 4.0) + typhoeus (~> 1.0) + cocoapods-deintegrate (1.0.5) + cocoapods-downloader (2.1) + cocoapods-plugins (1.0.0) + nap + cocoapods-search (1.0.1) + cocoapods-trunk (1.6.0) + nap (>= 0.8, < 2.0) + netrc (~> 0.11) + cocoapods-try (1.2.0) + colored (1.2) + colored2 (3.1.2) + commander (4.6.0) + highline (~> 2.0.0) + concurrent-ruby (1.3.4) + declarative (0.0.20) + digest-crc (0.6.5) + rake (>= 12.0.0, < 14.0.0) + domain_name (0.5.20190701) + unf (>= 0.0.5, < 1.0.0) + dotenv (2.8.1) + emoji_regex (3.2.3) + escape (0.0.4) + ethon (0.16.0) + ffi (>= 1.15.0) + excon (0.109.0) + faraday (1.10.4) + faraday-em_http (~> 1.0) + faraday-em_synchrony (~> 1.0) + faraday-excon (~> 1.1) + faraday-httpclient (~> 1.0) + faraday-multipart (~> 1.0) + faraday-net_http (~> 1.0) + faraday-net_http_persistent (~> 1.0) + faraday-patron (~> 1.0) + faraday-rack (~> 1.0) + faraday-retry (~> 1.0) + ruby2_keywords (>= 0.0.4) + faraday-cookie_jar (0.0.7) + faraday (>= 0.8.0) + http-cookie (~> 1.0.0) + faraday-em_http (1.0.0) + faraday-em_synchrony (1.0.0) + faraday-excon (1.1.0) + faraday-httpclient (1.0.1) + faraday-multipart (1.0.4) + multipart-post (~> 2) + faraday-net_http (1.0.2) + faraday-net_http_persistent (1.2.0) + faraday-patron (1.0.0) + faraday-rack (1.0.0) + faraday-retry (1.0.3) + faraday_middleware (1.2.1) + faraday (~> 1.0) + fastimage (2.3.1) + fastlane (2.222.0) + CFPropertyList (>= 2.3, < 4.0.0) + addressable (>= 2.8, < 3.0.0) + artifactory (~> 3.0) + aws-sdk-s3 (~> 1.0) + babosa (>= 1.0.3, < 2.0.0) + bundler (>= 1.12.0, < 3.0.0) + colored (~> 1.2) + commander (~> 4.6) + dotenv (>= 2.1.1, < 3.0.0) + emoji_regex (>= 0.1, < 4.0) + excon (>= 0.71.0, < 1.0.0) + faraday (~> 1.0) + faraday-cookie_jar (~> 0.0.6) + faraday_middleware (~> 1.0) + fastimage (>= 2.1.0, < 3.0.0) + gh_inspector (>= 1.1.2, < 2.0.0) + google-apis-androidpublisher_v3 (~> 0.3) + google-apis-playcustomapp_v1 (~> 0.1) + google-cloud-env (>= 1.6.0, < 2.0.0) + google-cloud-storage (~> 1.31) + highline (~> 2.0) + http-cookie (~> 1.0.5) + json (< 3.0.0) + jwt (>= 2.1.0, < 3) + mini_magick (>= 4.9.4, < 5.0.0) + multipart-post (>= 2.0.0, < 3.0.0) + naturally (~> 2.2) + optparse (>= 0.1.1, < 1.0.0) + plist (>= 3.1.0, < 4.0.0) + rubyzip (>= 2.0.0, < 3.0.0) + security (= 0.1.5) + simctl (~> 1.6.3) + terminal-notifier (>= 2.0.0, < 3.0.0) + terminal-table (~> 3) + tty-screen (>= 0.6.3, < 1.0.0) + tty-spinner (>= 0.8.0, < 1.0.0) + word_wrap (~> 1.0.0) + xcodeproj (>= 1.13.0, < 2.0.0) + xcpretty (~> 0.3.0) + xcpretty-travis-formatter (>= 0.0.3, < 2.0.0) + fastlane-plugin-pgyer (0.2.9) + ffi (1.17.0) + fourflusher (2.3.1) + fuzzy_match (2.0.4) + gh_inspector (1.1.3) + google-apis-androidpublisher_v3 (0.54.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-core (0.11.3) + addressable (~> 2.5, >= 2.5.1) + googleauth (>= 0.16.2, < 2.a) + httpclient (>= 2.8.1, < 3.a) + mini_mime (~> 1.0) + representable (~> 3.0) + retriable (>= 2.0, < 4.a) + rexml + google-apis-iamcredentials_v1 (0.17.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-playcustomapp_v1 (0.13.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-storage_v1 (0.29.0) + google-apis-core (>= 0.11.0, < 2.a) + google-cloud-core (1.6.1) + google-cloud-env (>= 1.0, < 3.a) + google-cloud-errors (~> 1.0) + google-cloud-env (1.6.0) + faraday (>= 0.17.3, < 3.0) + google-cloud-errors (1.3.1) + google-cloud-storage (1.45.0) + addressable (~> 2.8) + digest-crc (~> 0.4) + google-apis-iamcredentials_v1 (~> 0.1) + google-apis-storage_v1 (~> 0.29.0) + google-cloud-core (~> 1.6) + googleauth (>= 0.16.2, < 2.a) + mini_mime (~> 1.0) + googleauth (1.8.1) + faraday (>= 0.17.3, < 3.a) + jwt (>= 1.4, < 3.0) + multi_json (~> 1.11) + os (>= 0.9, < 2.0) + signet (>= 0.16, < 2.a) + highline (2.0.3) + http-cookie (1.0.7) + domain_name (~> 0.5) + httpclient (2.8.3) + i18n (1.14.6) + concurrent-ruby (~> 1.0) + jmespath (1.6.2) + json (2.7.2) + jwt (2.9.1) + base64 + mini_magick (4.13.2) + mini_mime (1.1.5) + minitest (5.25.1) + molinillo (0.8.0) + multi_json (1.15.0) + multipart-post (2.4.1) + nanaimo (0.3.0) + nap (1.1.0) + naturally (2.2.1) + netrc (0.11.0) + nkf (0.2.0) + optparse (0.5.0) + os (1.1.4) + plist (3.7.1) + public_suffix (4.0.7) + rake (13.2.1) + representable (3.2.0) + declarative (< 0.1.0) + trailblazer-option (>= 0.1.1, < 0.2.0) + uber (< 0.2.0) + retriable (3.1.2) + rexml (3.3.7) + rouge (2.0.7) + ruby-macho (2.5.1) + ruby2_keywords (0.0.5) + rubyzip (2.3.2) + security (0.1.5) + signet (0.18.0) + addressable (~> 2.8) + faraday (>= 0.17.5, < 3.a) + jwt (>= 1.5, < 3.0) + multi_json (~> 1.10) + simctl (1.6.10) + CFPropertyList + naturally + terminal-notifier (2.0.0) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + trailblazer-option (0.1.2) + tty-cursor (0.7.1) + tty-screen (0.8.2) + tty-spinner (0.9.3) + tty-cursor (~> 0.7) + typhoeus (1.4.1) + ethon (>= 0.9.0) + tzinfo (2.0.6) + concurrent-ruby (~> 1.0) + uber (0.1.0) + unf (0.2.0) + unicode-display_width (2.6.0) + word_wrap (1.0.0) + xcodeproj (1.25.0) + CFPropertyList (>= 2.3.3, < 4.0) + atomos (~> 0.1.3) + claide (>= 1.0.2, < 2.0) + colored2 (~> 3.1) + nanaimo (~> 0.3.0) + rexml (>= 3.3.2, < 4.0) + xcpretty (0.3.0) + rouge (~> 2.0.7) + xcpretty-travis-formatter (1.0.1) + xcpretty (~> 0.2, >= 0.0.7) + zeitwerk (2.6.18) + +PLATFORMS + ruby + +DEPENDENCIES + cocoapods (= 1.14.3) + fastlane + fastlane-plugin-pgyer + public_suffix (~> 4.0) + +BUNDLED WITH + 1.17.2 From cfad7de35e930bdbb70268c9cdee3261137edce5 Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Wed, 9 Oct 2024 23:30:56 +0800 Subject: [PATCH 13/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81android=20ios?= =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=8E=AF=E5=A2=83=E5=88=B6=E5=93=81=E5=8C=85?= =?UTF-8?q?=E6=9E=84=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 116 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 00000000..c485cbe8 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,116 @@ +stages: + - test + - package + - release-artifacts + - notification + +variables: + LC_ALL: "en_US.UTF-8" + LANG: "en_US.UTF-8" + + +.build_rule: + tags: + - macos + - flutter + rules: + - if: $CI_COMMIT_BRANCH == "develop" + - if: $CI_COMMIT_BRANCH == "release" + - if: $CI_COMMIT_BRANCH =~ /feat_[a-zA-Z]+/ + - if: $CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$/ + + +.print_env: + stage: test + extends: .build_rule + before_script: + - java --version + - printenv | while IFS='=' read -r key value; do echo "$key=$value"; done + after_script: + - echo "finished" + +.setup_fastlane_android: + extends: .build_rule + before_script: + - flutter pub get + - bundle install --gemfile android/Gemfile --quiet + + +.setup_fastlane_ios: + extends: .build_rule + before_script: + - flutter pub get + - bundle install --gemfile ios/Gemfile --quiet + +test_lint_check: + stage: test + extends: .print_env + script: + - echo "run lint check or per-test here" + tags: + - macos + - flutter + +build_android: + stage: package + extends: .setup_fastlane_android + script: bash android/build.sh + artifacts: + paths: + - build/app/outputs/flutter-apk/ + +build_ios: + stage: package + extends: .setup_fastlane_ios + script: + - bash ios/build.sh + artifacts: + paths: + - build/app/outputs/flutter-ipa + +create-release: + stage: release-artifacts + extends: .build_rule + dependencies: + - build_android + - build_ios + needs: + - job: build_android + artifacts: true + - job: build_ios + artifacts: true + rules: + - if: $CI_COMMIT_TAG + before_script: + - echo "start create release" + script: + - export StarLock_VERSION=${CI_COMMIT_TAG#*-} + - echo "Uploading StarLock-${StarLock_VERSION} packages to + ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/StarLock-${StarLock_VERSION}-*" + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-xhj-release.apk + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-xhj-release.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-sky-release.apk + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-sky-release.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-xhj.ipa + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-xhj.ipa"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-sky.ipa + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-sky.ipa"' + release: + name: '$CI_COMMIT_TAG' + description: 'Created Release By GitLab CI/CD' + tag_name: '$CI_COMMIT_TAG' + ref: '$CI_COMMIT_TAG' + assets: + links: + - name: 'xhj binary package (Android)' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-xhj-release.apk' + link_type: 'package' + - name: 'sky binary package (Android)' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-sky-release.apk' + link_type: 'package' + - name: 'xhj binary package (iOS)' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-xhj.ipa' + link_type: 'package' + - name: 'sky binary package (iOS)' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-sky.ipa' + link_type: 'package' From f2d1efacc0f4f8ea934dc9db9333b80460cc97dd Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Wed, 9 Oct 2024 23:53:23 +0800 Subject: [PATCH 14/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81android=20ios?= =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=8E=AF=E5=A2=83=E5=88=B6=E5=93=81=E5=8C=85?= =?UTF-8?q?=E6=9E=84=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/fastlane/Fastfile | 2 +- ios/fastlane/Fastfile | 2 +- lib/main_sky_dev.dart | 8 ++++++++ lib/main_sky_pre.dart | 8 ++++++++ lib/main_xhj_dev.dart | 8 ++++++++ lib/main_xhj_pre.dart | 8 ++++++++ 6 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 lib/main_sky_dev.dart create mode 100644 lib/main_sky_pre.dart create mode 100644 lib/main_xhj_dev.dart create mode 100644 lib/main_xhj_pre.dart diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile index 1ab17252..ffe2e0ad 100644 --- a/android/fastlane/Fastfile +++ b/android/fastlane/Fastfile @@ -88,7 +88,7 @@ platform :android do short_hash = commit_hash[:abbreviated_commit_hash] print_log "last_git_commit_short_hash #{short_hash}" Dir.chdir "../.." do - sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") + sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}_lite.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") end end diff --git a/ios/fastlane/Fastfile b/ios/fastlane/Fastfile index af831021..0abaca5b 100644 --- a/ios/fastlane/Fastfile +++ b/ios/fastlane/Fastfile @@ -129,7 +129,7 @@ platform :ios do short_hash = commit_hash[:abbreviated_commit_hash] print_log "last_git_commit_short_hash #{short_hash}" Dir.chdir "../.." do - sh("flutter", "build", "ios", "--no-tree-shake-icons", "--no-codesign", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") + sh("flutter", "build", "ios", "--no-tree-shake-icons", "--no-codesign", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}_lite.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") end gym_scheme_release="#{flavor}" print_log "gym_scheme_release #{gym_scheme_release}" diff --git a/lib/main_sky_dev.dart b/lib/main_sky_dev.dart new file mode 100644 index 00000000..e3fc6434 --- /dev/null +++ b/lib/main_sky_dev.dart @@ -0,0 +1,8 @@ +import 'flavors.dart'; + +import 'main.dart' as runner; + +Future main() async { + F.appFlavor = Flavor.sky_dev; + await runner.main(); +} diff --git a/lib/main_sky_pre.dart b/lib/main_sky_pre.dart new file mode 100644 index 00000000..85b1f275 --- /dev/null +++ b/lib/main_sky_pre.dart @@ -0,0 +1,8 @@ +import 'flavors.dart'; + +import 'main.dart' as runner; + +Future main() async { + F.appFlavor = Flavor.sky_pre; + await runner.main(); +} diff --git a/lib/main_xhj_dev.dart b/lib/main_xhj_dev.dart new file mode 100644 index 00000000..00fb2cd6 --- /dev/null +++ b/lib/main_xhj_dev.dart @@ -0,0 +1,8 @@ +import 'flavors.dart'; + +import 'main.dart' as runner; + +Future main() async { + F.appFlavor = Flavor.xhj_dev; + await runner.main(); +} diff --git a/lib/main_xhj_pre.dart b/lib/main_xhj_pre.dart new file mode 100644 index 00000000..6f7b2029 --- /dev/null +++ b/lib/main_xhj_pre.dart @@ -0,0 +1,8 @@ +import 'flavors.dart'; + +import 'main.dart' as runner; + +Future main() async { + F.appFlavor = Flavor.xhj_pre; + await runner.main(); +} From 4cc22002fd111fabe32fe23a424807996805c911 Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Thu, 10 Oct 2024 00:18:17 +0800 Subject: [PATCH 15/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81android=20ios?= =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=8E=AF=E5=A2=83=E5=88=B6=E5=93=81=E5=8C=85?= =?UTF-8?q?=E6=9E=84=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sky_dev/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2374 bytes .../sky_dev/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1450 bytes .../sky_dev/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 3214 bytes .../sky_dev/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 4830 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 6678 bytes .../sky_pre/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2374 bytes .../sky_pre/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1450 bytes .../sky_pre/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 3214 bytes .../sky_pre/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 4830 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 6678 bytes .../app/src/xhj_dev/agconnect-services.json | 96 ++++++++++++++++++ .../xhj_dev/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2734 bytes .../xhj_dev/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1662 bytes .../xhj_dev/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 3940 bytes .../xhj_dev/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 6187 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 8600 bytes .../app/src/xhj_pre/agconnect-services.json | 96 ++++++++++++++++++ .../xhj_pre/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 2734 bytes .../xhj_pre/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 1662 bytes .../xhj_pre/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 3940 bytes .../xhj_pre/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 6187 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 8600 bytes 22 files changed, 192 insertions(+) create mode 100755 android/app/src/sky_dev/res/mipmap-hdpi/ic_launcher.png create mode 100755 android/app/src/sky_dev/res/mipmap-mdpi/ic_launcher.png create mode 100755 android/app/src/sky_dev/res/mipmap-xhdpi/ic_launcher.png create mode 100755 android/app/src/sky_dev/res/mipmap-xxhdpi/ic_launcher.png create mode 100755 android/app/src/sky_dev/res/mipmap-xxxhdpi/ic_launcher.png create mode 100755 android/app/src/sky_pre/res/mipmap-hdpi/ic_launcher.png create mode 100755 android/app/src/sky_pre/res/mipmap-mdpi/ic_launcher.png create mode 100755 android/app/src/sky_pre/res/mipmap-xhdpi/ic_launcher.png create mode 100755 android/app/src/sky_pre/res/mipmap-xxhdpi/ic_launcher.png create mode 100755 android/app/src/sky_pre/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/xhj_dev/agconnect-services.json create mode 100755 android/app/src/xhj_dev/res/mipmap-hdpi/ic_launcher.png create mode 100755 android/app/src/xhj_dev/res/mipmap-mdpi/ic_launcher.png create mode 100755 android/app/src/xhj_dev/res/mipmap-xhdpi/ic_launcher.png create mode 100755 android/app/src/xhj_dev/res/mipmap-xxhdpi/ic_launcher.png create mode 100755 android/app/src/xhj_dev/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 android/app/src/xhj_pre/agconnect-services.json create mode 100755 android/app/src/xhj_pre/res/mipmap-hdpi/ic_launcher.png create mode 100755 android/app/src/xhj_pre/res/mipmap-mdpi/ic_launcher.png create mode 100755 android/app/src/xhj_pre/res/mipmap-xhdpi/ic_launcher.png create mode 100755 android/app/src/xhj_pre/res/mipmap-xxhdpi/ic_launcher.png create mode 100755 android/app/src/xhj_pre/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/android/app/src/sky_dev/res/mipmap-hdpi/ic_launcher.png b/android/app/src/sky_dev/res/mipmap-hdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..4587c19dd928268adf8b29068f4d54539b3dccfc GIT binary patch literal 2374 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 literal 0 HcmV?d00001 diff --git a/android/app/src/sky_dev/res/mipmap-mdpi/ic_launcher.png b/android/app/src/sky_dev/res/mipmap-mdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..32e709f33fbe8694b05a5730380a1343e7874c99 GIT binary patch literal 1450 zcmV;b1y%ZqP)6a41V{C{`<|J^75 z|L^;MRK#%{b}LErUjy8z+ZhN3x1qyR+vat6L+nTcEh6wVS~PcpV!T?K6rezueQHnZ zffjE}Z(nz$`=xT-^V9W-2dX~O6)O!W!l5^gcAGTf`4d%%1PX>DHH|&7(nN*OrW3XV z12uMfJ)t;xK&QL>eZjDd67(%Wm0DfF!QldvyfRPmO;hi|%l(76q#&hYyu7B-d9uR~ zslVb*RiR$GLmj;VlQwZc{_x+P%2J3vTAVGy@yY^K$@|S(8L@ex5l3iV zo~m$bQ@N3@o|_5PN;Bz_Z5KHV@vVZaknacv8m!WEDbPTHBJk35nNdjr4TN$rQKXkl zGs^jD*=k7!LtJ$afS_anS-s(bvc(e;;n6R_EM@hC;o`$UIO6mR?v~L2)wcEh(Bhh9 zQhwXqbG+S0;{Hbq-FF%3np3v(_E4wC`OqZg1g-R~+OGI~5Hk>@#nRnojilY-gJeY^ z7F+n)6{Q$C1N~2-SIR%WltQ6@+8~)gpeKq{i}Dp;op){jtrx;orJDP4m=Eji`&+yO z!d|&o2QGWN&UWmoZ!CcFHDvYN41~~BBU5Mg!h*H7!T@1OCSA0pX=VK60>uPa^I~!eda+%@` zdhOv3UnCBmIFcHnRR=ArzU#zL|MUo*@c6z?jBDpZZ-`s;g&E^mJ{%Ju3|l=-)9$)3&6cLLsv1L{-EBm^XxT>z}C;!7p6(8YrFZCF6lsp`rIM zXRq7poq6)3ZB4UtnPo*<2sc-X^EWny*yOuxVyc+875oMfjFuR6wBDYwd9T6`|FKt#I){AadPw zqtNYqF8ep7N>Lg^{?QX0v{Q;-qXJ52i1l*}vrGzD*I-AsqrtK6Cu@AElK>#K1mC|r z$Eb|1reYDXqC{t4$QQrwxVbVZc;1d5XwBW)0h$59`Ahf_ERjGIjxCw2=F2hc_#+vr16KDw%QbeSe+Ho&%hd9f zIjKnj>hW_wUvbaKRlq6s^OEfNUXn;4(3`c^>DdhI?FZj%bNV+Px87X&g>t`b*7=d!*^k*{1{$~C(_G{k^rQVl835HU!HNCXzz3SM&9_q=;|2~ zj`|DoRcP47D^4JgoFb}GCng9R*07*qoM6N<$ Ef;#lez5oCK literal 0 HcmV?d00001 diff --git a/android/app/src/sky_dev/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/sky_dev/res/mipmap-xhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..bdd7f056ea614ead26785757ca29fa86935ff8d6 GIT binary patch literal 3214 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 Ef&+?AOaK4? literal 0 HcmV?d00001 diff --git a/android/app/src/sky_dev/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/sky_dev/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..644b4d33962d2071813a4b61d26c99938fb360ee GIT binary patch literal 6678 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 Jtb|*J{y%w7gz5kQ literal 0 HcmV?d00001 diff --git a/android/app/src/sky_pre/res/mipmap-hdpi/ic_launcher.png b/android/app/src/sky_pre/res/mipmap-hdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..4587c19dd928268adf8b29068f4d54539b3dccfc GIT binary patch literal 2374 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 literal 0 HcmV?d00001 diff --git a/android/app/src/sky_pre/res/mipmap-mdpi/ic_launcher.png b/android/app/src/sky_pre/res/mipmap-mdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..32e709f33fbe8694b05a5730380a1343e7874c99 GIT binary patch literal 1450 zcmV;b1y%ZqP)6a41V{C{`<|J^75 z|L^;MRK#%{b}LErUjy8z+ZhN3x1qyR+vat6L+nTcEh6wVS~PcpV!T?K6rezueQHnZ zffjE}Z(nz$`=xT-^V9W-2dX~O6)O!W!l5^gcAGTf`4d%%1PX>DHH|&7(nN*OrW3XV z12uMfJ)t;xK&QL>eZjDd67(%Wm0DfF!QldvyfRPmO;hi|%l(76q#&hYyu7B-d9uR~ zslVb*RiR$GLmj;VlQwZc{_x+P%2J3vTAVGy@yY^K$@|S(8L@ex5l3iV zo~m$bQ@N3@o|_5PN;Bz_Z5KHV@vVZaknacv8m!WEDbPTHBJk35nNdjr4TN$rQKXkl zGs^jD*=k7!LtJ$afS_anS-s(bvc(e;;n6R_EM@hC;o`$UIO6mR?v~L2)wcEh(Bhh9 zQhwXqbG+S0;{Hbq-FF%3np3v(_E4wC`OqZg1g-R~+OGI~5Hk>@#nRnojilY-gJeY^ z7F+n)6{Q$C1N~2-SIR%WltQ6@+8~)gpeKq{i}Dp;op){jtrx;orJDP4m=Eji`&+yO z!d|&o2QGWN&UWmoZ!CcFHDvYN41~~BBU5Mg!h*H7!T@1OCSA0pX=VK60>uPa^I~!eda+%@` zdhOv3UnCBmIFcHnRR=ArzU#zL|MUo*@c6z?jBDpZZ-`s;g&E^mJ{%Ju3|l=-)9$)3&6cLLsv1L{-EBm^XxT>z}C;!7p6(8YrFZCF6lsp`rIM zXRq7poq6)3ZB4UtnPo*<2sc-X^EWny*yOuxVyc+875oMfjFuR6wBDYwd9T6`|FKt#I){AadPw zqtNYqF8ep7N>Lg^{?QX0v{Q;-qXJ52i1l*}vrGzD*I-AsqrtK6Cu@AElK>#K1mC|r z$Eb|1reYDXqC{t4$QQrwxVbVZc;1d5XwBW)0h$59`Ahf_ERjGIjxCw2=F2hc_#+vr16KDw%QbeSe+Ho&%hd9f zIjKnj>hW_wUvbaKRlq6s^OEfNUXn;4(3`c^>DdhI?FZj%bNV+Px87X&g>t`b*7=d!*^k*{1{$~C(_G{k^rQVl835HU!HNCXzz3SM&9_q=;|2~ zj`|DoRcP47D^4JgoFb}GCng9R*07*qoM6N<$ Ef;#lez5oCK literal 0 HcmV?d00001 diff --git a/android/app/src/sky_pre/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/sky_pre/res/mipmap-xhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..bdd7f056ea614ead26785757ca29fa86935ff8d6 GIT binary patch literal 3214 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 Ef&+?AOaK4? literal 0 HcmV?d00001 diff --git a/android/app/src/sky_pre/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/sky_pre/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..644b4d33962d2071813a4b61d26c99938fb360ee GIT binary patch literal 6678 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 Jtb|*J{y%w7gz5kQ literal 0 HcmV?d00001 diff --git a/android/app/src/xhj_dev/agconnect-services.json b/android/app/src/xhj_dev/agconnect-services.json new file mode 100644 index 00000000..52e91d21 --- /dev/null +++ b/android/app/src/xhj_dev/agconnect-services.json @@ -0,0 +1,96 @@ +{ + "agcgw":{ + "backurl":"connect-drcn.hispace.hicloud.com", + "url":"connect-drcn.dbankcloud.cn", + "websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com", + "websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn" + }, + "agcgw_all":{ + "CN":"connect-drcn.dbankcloud.cn", + "CN_back":"connect-drcn.hispace.hicloud.com", + "DE":"connect-dre.dbankcloud.cn", + "DE_back":"connect-dre.hispace.hicloud.com", + "RU":"connect-drru.hispace.dbankcloud.ru", + "RU_back":"connect-drru.hispace.dbankcloud.cn", + "SG":"connect-dra.dbankcloud.cn", + "SG_back":"connect-dra.hispace.hicloud.com" + }, + "websocketgw_all":{ + "CN":"connect-ws-drcn.hispace.dbankcloud.cn", + "CN_back":"connect-ws-drcn.hispace.dbankcloud.com", + "DE":"connect-ws-dre.hispace.dbankcloud.cn", + "DE_back":"connect-ws-dre.hispace.dbankcloud.com", + "RU":"connect-ws-drru.hispace.dbankcloud.ru", + "RU_back":"connect-ws-drru.hispace.dbankcloud.cn", + "SG":"connect-ws-dra.hispace.dbankcloud.cn", + "SG_back":"connect-ws-dra.hispace.dbankcloud.com" + }, + "client":{ + "cp_id":"30086000752967166", + "product_id":"388421841222116270", + "client_id":"1406555529261648640", + "client_secret":"843E8191B02B692239726CF0ED990E1EC2B31928F825AA012B932A128FD2C516", + "project_id":"388421841222116270", + "app_id":"110798531", + "api_key":"DQEDAALnPCtuCgoYOyZfsIDa9/YZZhQ+buDGpypeurXhQUGMajWcVyYLQgXXqV3x2HbI6oyG+Wm2Gf+1hPs6j+wA3B6ylYAXG4aAQA==", + "package_name":"com.xhjcn.lock" + }, + "oauth_client":{ + "client_id":"110798531", + "client_type":1 + }, + "app_info":{ + "app_id":"110798531", + "package_name":"com.xhjcn.lock" + }, + "service":{ + "analytics":{ + "collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com", + "collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn", + "collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn", + "collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "resource_id":"p1", + "channel_id":"" + }, + "edukit":{ + "edu_url":"edukit.cloud.huawei.com.cn", + "dh_url":"edukit.cloud.huawei.com.cn" + }, + "search":{ + "url":"https://search-drcn.cloud.huawei.com" + }, + "cloudstorage":{ + "storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia", + "storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu", + "storage_url_de":"https://ops-dre.agcstorage.link", + "storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn", + "storage_url_sg":"https://ops-dra.agcstorage.link", + "storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn", + "storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn" + }, + "ml":{ + "mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn" + } + }, + "region":"CN", + "configuration_version":"3.0", + "appInfos":[ + { + "package_name":"com.xhjcn.lock", + "client":{ + "app_id":"110798531" + }, + "app_info":{ + "package_name":"com.xhjcn.lock", + "app_id":"110798531" + }, + "oauth_client":{ + "client_type":1, + "client_id":"110798531" + } + } + ] +} \ No newline at end of file diff --git a/android/app/src/xhj_dev/res/mipmap-hdpi/ic_launcher.png b/android/app/src/xhj_dev/res/mipmap-hdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..e17ec78d37e5f5d8014c59a9b1e380c5723f871b GIT binary patch literal 2734 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 yupr)pkKWHbB>FG84a3OMySsJqqD!&juoPX~ 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 literal 0 HcmV?d00001 diff --git a/android/app/src/xhj_dev/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/xhj_dev/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..58a29a5e322242bc35212bd924afe2509b18503f GIT binary patch literal 8600 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 G@P7auPKKHQ literal 0 HcmV?d00001 diff --git a/android/app/src/xhj_pre/agconnect-services.json b/android/app/src/xhj_pre/agconnect-services.json new file mode 100644 index 00000000..52e91d21 --- /dev/null +++ b/android/app/src/xhj_pre/agconnect-services.json @@ -0,0 +1,96 @@ +{ + "agcgw":{ + "backurl":"connect-drcn.hispace.hicloud.com", + "url":"connect-drcn.dbankcloud.cn", + "websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com", + "websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn" + }, + "agcgw_all":{ + "CN":"connect-drcn.dbankcloud.cn", + "CN_back":"connect-drcn.hispace.hicloud.com", + "DE":"connect-dre.dbankcloud.cn", + "DE_back":"connect-dre.hispace.hicloud.com", + "RU":"connect-drru.hispace.dbankcloud.ru", + "RU_back":"connect-drru.hispace.dbankcloud.cn", + "SG":"connect-dra.dbankcloud.cn", + "SG_back":"connect-dra.hispace.hicloud.com" + }, + "websocketgw_all":{ + "CN":"connect-ws-drcn.hispace.dbankcloud.cn", + "CN_back":"connect-ws-drcn.hispace.dbankcloud.com", + "DE":"connect-ws-dre.hispace.dbankcloud.cn", + "DE_back":"connect-ws-dre.hispace.dbankcloud.com", + "RU":"connect-ws-drru.hispace.dbankcloud.ru", + "RU_back":"connect-ws-drru.hispace.dbankcloud.cn", + "SG":"connect-ws-dra.hispace.dbankcloud.cn", + "SG_back":"connect-ws-dra.hispace.dbankcloud.com" + }, + "client":{ + "cp_id":"30086000752967166", + "product_id":"388421841222116270", + "client_id":"1406555529261648640", + "client_secret":"843E8191B02B692239726CF0ED990E1EC2B31928F825AA012B932A128FD2C516", + "project_id":"388421841222116270", + "app_id":"110798531", + "api_key":"DQEDAALnPCtuCgoYOyZfsIDa9/YZZhQ+buDGpypeurXhQUGMajWcVyYLQgXXqV3x2HbI6oyG+Wm2Gf+1hPs6j+wA3B6ylYAXG4aAQA==", + "package_name":"com.xhjcn.lock" + }, + "oauth_client":{ + "client_id":"110798531", + "client_type":1 + }, + "app_info":{ + "app_id":"110798531", + "package_name":"com.xhjcn.lock" + }, + "service":{ + "analytics":{ + "collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com", + "collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn", + "collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn", + "collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "resource_id":"p1", + "channel_id":"" + }, + "edukit":{ + "edu_url":"edukit.cloud.huawei.com.cn", + "dh_url":"edukit.cloud.huawei.com.cn" + }, + "search":{ + "url":"https://search-drcn.cloud.huawei.com" + }, + "cloudstorage":{ + "storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia", + "storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu", + "storage_url_de":"https://ops-dre.agcstorage.link", + "storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn", + "storage_url_sg":"https://ops-dra.agcstorage.link", + "storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn", + "storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn" + }, + "ml":{ + "mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn" + } + }, + "region":"CN", + "configuration_version":"3.0", + "appInfos":[ + { + "package_name":"com.xhjcn.lock", + "client":{ + "app_id":"110798531" + }, + "app_info":{ + "package_name":"com.xhjcn.lock", + "app_id":"110798531" + }, + "oauth_client":{ + "client_type":1, + "client_id":"110798531" + } + } + ] +} \ No newline at end of file diff --git a/android/app/src/xhj_pre/res/mipmap-hdpi/ic_launcher.png b/android/app/src/xhj_pre/res/mipmap-hdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..e17ec78d37e5f5d8014c59a9b1e380c5723f871b GIT binary patch literal 2734 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 yupr)pkKWHbB>FG84a3OMySsJqqD!&juoPX~ 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 literal 0 HcmV?d00001 diff --git a/android/app/src/xhj_pre/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/xhj_pre/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100755 index 0000000000000000000000000000000000000000..58a29a5e322242bc35212bd924afe2509b18503f GIT binary patch literal 8600 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 G@P7auPKKHQ literal 0 HcmV?d00001 From dc72af99361394b91499c48f0e1ab943adb6b6e7 Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Thu, 10 Oct 2024 22:20:20 +0800 Subject: [PATCH 16/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81android=20ios?= =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=8E=AF=E5=A2=83=E5=88=B6=E5=93=81=E5=8C=85?= =?UTF-8?q?=E6=9E=84=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/app/src/sky/agconnect-services.json | 96 +++++++++++++++++++ .../app/src/sky_dev/agconnect-services.json | 96 +++++++++++++++++++ .../app/src/sky_pre/agconnect-services.json | 96 +++++++++++++++++++ .../app/src/xhj_dev/agconnect-services.json | 8 +- .../app/src/xhj_pre/agconnect-services.json | 8 +- 5 files changed, 296 insertions(+), 8 deletions(-) create mode 100644 android/app/src/sky/agconnect-services.json create mode 100644 android/app/src/sky_dev/agconnect-services.json create mode 100644 android/app/src/sky_pre/agconnect-services.json diff --git a/android/app/src/sky/agconnect-services.json b/android/app/src/sky/agconnect-services.json new file mode 100644 index 00000000..887f84c5 --- /dev/null +++ b/android/app/src/sky/agconnect-services.json @@ -0,0 +1,96 @@ +{ + "agcgw":{ + "backurl":"connect-drcn.hispace.hicloud.com", + "url":"connect-drcn.dbankcloud.cn", + "websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com", + "websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn" + }, + "agcgw_all":{ + "CN":"connect-drcn.dbankcloud.cn", + "CN_back":"connect-drcn.hispace.hicloud.com", + "DE":"connect-dre.dbankcloud.cn", + "DE_back":"connect-dre.hispace.hicloud.com", + "RU":"connect-drru.hispace.dbankcloud.ru", + "RU_back":"connect-drru.hispace.dbankcloud.cn", + "SG":"connect-dra.dbankcloud.cn", + "SG_back":"connect-dra.hispace.hicloud.com" + }, + "websocketgw_all":{ + "CN":"connect-ws-drcn.hispace.dbankcloud.cn", + "CN_back":"connect-ws-drcn.hispace.dbankcloud.com", + "DE":"connect-ws-dre.hispace.dbankcloud.cn", + "DE_back":"connect-ws-dre.hispace.dbankcloud.com", + "RU":"connect-ws-drru.hispace.dbankcloud.ru", + "RU_back":"connect-ws-drru.hispace.dbankcloud.cn", + "SG":"connect-ws-dra.hispace.dbankcloud.cn", + "SG_back":"connect-ws-dra.hispace.dbankcloud.com" + }, + "client":{ + "cp_id":"30086000752967166", + "product_id":"388421841222116270", + "client_id":"1406555529261648640", + "client_secret":"843E8191B02B692239726CF0ED990E1EC2B31928F825AA012B932A128FD2C516", + "project_id":"388421841222116270", + "app_id":"110798531", + "api_key":"DQEDAALnPCtuCgoYOyZfsIDa9/YZZhQ+buDGpypeurXhQUGMajWcVyYLQgXXqV3x2HbI6oyG+Wm2Gf+1hPs6j+wA3B6ylYAXG4aAQA==", + "package_name":"com.skychip.lock" + }, + "oauth_client":{ + "client_id":"110798531", + "client_type":1 + }, + "app_info":{ + "app_id":"110798531", + "package_name":"com.skychip.lock" + }, + "service":{ + "analytics":{ + "collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com", + "collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn", + "collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn", + "collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "resource_id":"p1", + "channel_id":"" + }, + "edukit":{ + "edu_url":"edukit.cloud.huawei.com.cn", + "dh_url":"edukit.cloud.huawei.com.cn" + }, + "search":{ + "url":"https://search-drcn.cloud.huawei.com" + }, + "cloudstorage":{ + "storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia", + "storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu", + "storage_url_de":"https://ops-dre.agcstorage.link", + "storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn", + "storage_url_sg":"https://ops-dra.agcstorage.link", + "storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn", + "storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn" + }, + "ml":{ + "mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn" + } + }, + "region":"CN", + "configuration_version":"3.0", + "appInfos":[ + { + "package_name":"com.skychip.lock", + "client":{ + "app_id":"110798531" + }, + "app_info":{ + "package_name":"com.skychip.lock", + "app_id":"110798531" + }, + "oauth_client":{ + "client_type":1, + "client_id":"110798531" + } + } + ] +} \ No newline at end of file diff --git a/android/app/src/sky_dev/agconnect-services.json b/android/app/src/sky_dev/agconnect-services.json new file mode 100644 index 00000000..6c5c0e6a --- /dev/null +++ b/android/app/src/sky_dev/agconnect-services.json @@ -0,0 +1,96 @@ +{ + "agcgw":{ + "backurl":"connect-drcn.hispace.hicloud.com", + "url":"connect-drcn.dbankcloud.cn", + "websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com", + "websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn" + }, + "agcgw_all":{ + "CN":"connect-drcn.dbankcloud.cn", + "CN_back":"connect-drcn.hispace.hicloud.com", + "DE":"connect-dre.dbankcloud.cn", + "DE_back":"connect-dre.hispace.hicloud.com", + "RU":"connect-drru.hispace.dbankcloud.ru", + "RU_back":"connect-drru.hispace.dbankcloud.cn", + "SG":"connect-dra.dbankcloud.cn", + "SG_back":"connect-dra.hispace.hicloud.com" + }, + "websocketgw_all":{ + "CN":"connect-ws-drcn.hispace.dbankcloud.cn", + "CN_back":"connect-ws-drcn.hispace.dbankcloud.com", + "DE":"connect-ws-dre.hispace.dbankcloud.cn", + "DE_back":"connect-ws-dre.hispace.dbankcloud.com", + "RU":"connect-ws-drru.hispace.dbankcloud.ru", + "RU_back":"connect-ws-drru.hispace.dbankcloud.cn", + "SG":"connect-ws-dra.hispace.dbankcloud.cn", + "SG_back":"connect-ws-dra.hispace.dbankcloud.com" + }, + "client":{ + "cp_id":"30086000752967166", + "product_id":"388421841222116270", + "client_id":"1406555529261648640", + "client_secret":"843E8191B02B692239726CF0ED990E1EC2B31928F825AA012B932A128FD2C516", + "project_id":"388421841222116270", + "app_id":"110798531", + "api_key":"DQEDAALnPCtuCgoYOyZfsIDa9/YZZhQ+buDGpypeurXhQUGMajWcVyYLQgXXqV3x2HbI6oyG+Wm2Gf+1hPs6j+wA3B6ylYAXG4aAQA==", + "package_name":"com.skychip.lock.dev" + }, + "oauth_client":{ + "client_id":"110798531", + "client_type":1 + }, + "app_info":{ + "app_id":"110798531", + "package_name":"com.skychip.lock.dev" + }, + "service":{ + "analytics":{ + "collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com", + "collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn", + "collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn", + "collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "resource_id":"p1", + "channel_id":"" + }, + "edukit":{ + "edu_url":"edukit.cloud.huawei.com.cn", + "dh_url":"edukit.cloud.huawei.com.cn" + }, + "search":{ + "url":"https://search-drcn.cloud.huawei.com" + }, + "cloudstorage":{ + "storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia", + "storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu", + "storage_url_de":"https://ops-dre.agcstorage.link", + "storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn", + "storage_url_sg":"https://ops-dra.agcstorage.link", + "storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn", + "storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn" + }, + "ml":{ + "mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn" + } + }, + "region":"CN", + "configuration_version":"3.0", + "appInfos":[ + { + "package_name":"com.skychip.lock.dev", + "client":{ + "app_id":"110798531" + }, + "app_info":{ + "package_name":"com.skychip.lock.dev", + "app_id":"110798531" + }, + "oauth_client":{ + "client_type":1, + "client_id":"110798531" + } + } + ] +} \ No newline at end of file diff --git a/android/app/src/sky_pre/agconnect-services.json b/android/app/src/sky_pre/agconnect-services.json new file mode 100644 index 00000000..904465cf --- /dev/null +++ b/android/app/src/sky_pre/agconnect-services.json @@ -0,0 +1,96 @@ +{ + "agcgw":{ + "backurl":"connect-drcn.hispace.hicloud.com", + "url":"connect-drcn.dbankcloud.cn", + "websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com", + "websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn" + }, + "agcgw_all":{ + "CN":"connect-drcn.dbankcloud.cn", + "CN_back":"connect-drcn.hispace.hicloud.com", + "DE":"connect-dre.dbankcloud.cn", + "DE_back":"connect-dre.hispace.hicloud.com", + "RU":"connect-drru.hispace.dbankcloud.ru", + "RU_back":"connect-drru.hispace.dbankcloud.cn", + "SG":"connect-dra.dbankcloud.cn", + "SG_back":"connect-dra.hispace.hicloud.com" + }, + "websocketgw_all":{ + "CN":"connect-ws-drcn.hispace.dbankcloud.cn", + "CN_back":"connect-ws-drcn.hispace.dbankcloud.com", + "DE":"connect-ws-dre.hispace.dbankcloud.cn", + "DE_back":"connect-ws-dre.hispace.dbankcloud.com", + "RU":"connect-ws-drru.hispace.dbankcloud.ru", + "RU_back":"connect-ws-drru.hispace.dbankcloud.cn", + "SG":"connect-ws-dra.hispace.dbankcloud.cn", + "SG_back":"connect-ws-dra.hispace.dbankcloud.com" + }, + "client":{ + "cp_id":"30086000752967166", + "product_id":"388421841222116270", + "client_id":"1406555529261648640", + "client_secret":"843E8191B02B692239726CF0ED990E1EC2B31928F825AA012B932A128FD2C516", + "project_id":"388421841222116270", + "app_id":"110798531", + "api_key":"DQEDAALnPCtuCgoYOyZfsIDa9/YZZhQ+buDGpypeurXhQUGMajWcVyYLQgXXqV3x2HbI6oyG+Wm2Gf+1hPs6j+wA3B6ylYAXG4aAQA==", + "package_name":"com.skychip.lock.pre" + }, + "oauth_client":{ + "client_id":"110798531", + "client_type":1 + }, + "app_info":{ + "app_id":"110798531", + "package_name":"com.skychip.lock.pre" + }, + "service":{ + "analytics":{ + "collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com", + "collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn", + "collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn", + "collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn", + "resource_id":"p1", + "channel_id":"" + }, + "edukit":{ + "edu_url":"edukit.cloud.huawei.com.cn", + "dh_url":"edukit.cloud.huawei.com.cn" + }, + "search":{ + "url":"https://search-drcn.cloud.huawei.com" + }, + "cloudstorage":{ + "storage_url_sg_back":"https://agc-storage-dra.cloud.huawei.asia", + "storage_url_ru_back":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_ru":"https://agc-storage-drru.cloud.huawei.ru", + "storage_url_de_back":"https://agc-storage-dre.cloud.huawei.eu", + "storage_url_de":"https://ops-dre.agcstorage.link", + "storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn", + "storage_url_sg":"https://ops-dra.agcstorage.link", + "storage_url_cn_back":"https://agc-storage-drcn.cloud.huawei.com.cn", + "storage_url_cn":"https://agc-storage-drcn.platform.dbankcloud.cn" + }, + "ml":{ + "mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn" + } + }, + "region":"CN", + "configuration_version":"3.0", + "appInfos":[ + { + "package_name":"com.skychip.lock.pre", + "client":{ + "app_id":"110798531" + }, + "app_info":{ + "package_name":"com.skychip.lock.pre", + "app_id":"110798531" + }, + "oauth_client":{ + "client_type":1, + "client_id":"110798531" + } + } + ] +} \ No newline at end of file diff --git a/android/app/src/xhj_dev/agconnect-services.json b/android/app/src/xhj_dev/agconnect-services.json index 52e91d21..9588d348 100644 --- a/android/app/src/xhj_dev/agconnect-services.json +++ b/android/app/src/xhj_dev/agconnect-services.json @@ -33,7 +33,7 @@ "project_id":"388421841222116270", "app_id":"110798531", "api_key":"DQEDAALnPCtuCgoYOyZfsIDa9/YZZhQ+buDGpypeurXhQUGMajWcVyYLQgXXqV3x2HbI6oyG+Wm2Gf+1hPs6j+wA3B6ylYAXG4aAQA==", - "package_name":"com.xhjcn.lock" + "package_name":"com.xhjcn.lock.dev" }, "oauth_client":{ "client_id":"110798531", @@ -41,7 +41,7 @@ }, "app_info":{ "app_id":"110798531", - "package_name":"com.xhjcn.lock" + "package_name":"com.xhjcn.lock.dev" }, "service":{ "analytics":{ @@ -79,12 +79,12 @@ "configuration_version":"3.0", "appInfos":[ { - "package_name":"com.xhjcn.lock", + "package_name":"com.xhjcn.lock.dev", "client":{ "app_id":"110798531" }, "app_info":{ - "package_name":"com.xhjcn.lock", + "package_name":"com.xhjcn.lock.dev", "app_id":"110798531" }, "oauth_client":{ diff --git a/android/app/src/xhj_pre/agconnect-services.json b/android/app/src/xhj_pre/agconnect-services.json index 52e91d21..0e8de286 100644 --- a/android/app/src/xhj_pre/agconnect-services.json +++ b/android/app/src/xhj_pre/agconnect-services.json @@ -33,7 +33,7 @@ "project_id":"388421841222116270", "app_id":"110798531", "api_key":"DQEDAALnPCtuCgoYOyZfsIDa9/YZZhQ+buDGpypeurXhQUGMajWcVyYLQgXXqV3x2HbI6oyG+Wm2Gf+1hPs6j+wA3B6ylYAXG4aAQA==", - "package_name":"com.xhjcn.lock" + "package_name":"com.xhjcn.lock.pre" }, "oauth_client":{ "client_id":"110798531", @@ -41,7 +41,7 @@ }, "app_info":{ "app_id":"110798531", - "package_name":"com.xhjcn.lock" + "package_name":"com.xhjcn.lock.pre" }, "service":{ "analytics":{ @@ -79,12 +79,12 @@ "configuration_version":"3.0", "appInfos":[ { - "package_name":"com.xhjcn.lock", + "package_name":"com.xhjcn.lock.pre", "client":{ "app_id":"110798531" }, "app_info":{ - "package_name":"com.xhjcn.lock", + "package_name":"com.xhjcn.lock.pre", "app_id":"110798531" }, "oauth_client":{ From cc3a76e2b536e3bb7750330a34bdc32eaeb9659d Mon Sep 17 00:00:00 2001 From: Liuyf Date: Fri, 11 Oct 2024 20:15:52 +0800 Subject: [PATCH 17/39] =?UTF-8?q?feat:=20release=E6=A8=A1=E5=BC=8F?= =?UTF-8?q?=E5=88=B6=E5=93=81=E7=89=88=E6=9C=AC=E5=8F=B7=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 24 ++++++++++++------------ android/app/build.gradle | 30 ++++++++++++++++++------------ ios/fastlane/Fastfile | 2 +- 3 files changed, 31 insertions(+), 25 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c485cbe8..eb8e833d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -87,14 +87,14 @@ create-release: - export StarLock_VERSION=${CI_COMMIT_TAG#*-} - echo "Uploading StarLock-${StarLock_VERSION} packages to ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/StarLock-${StarLock_VERSION}-*" - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-xhj-release.apk - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-xhj-release.apk"' - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-sky-release.apk - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-sky-release.apk"' - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-xhj.ipa - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-xhj.ipa"' - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-sky.ipa - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-sky.ipa"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-starlock-release-xhj-${CI_COMMIT_TAG}.apk + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-xhj-${CI_COMMIT_TAG}.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-starlock-release-sky-${CI_COMMIT_TAG}.apk + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-sky-${CI_COMMIT_TAG}.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-xhj-${CI_COMMIT_TAG}.ipa + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-xhj-${CI_COMMIT_TAG}.ipa"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-sky-${CI_COMMIT_TAG}.ipa + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-sky-${CI_COMMIT_TAG}.ipa"' release: name: '$CI_COMMIT_TAG' description: 'Created Release By GitLab CI/CD' @@ -103,14 +103,14 @@ create-release: assets: links: - name: 'xhj binary package (Android)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-xhj-release.apk' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-xhj-${CI_COMMIT_TAG}.apk' link_type: 'package' - name: 'sky binary package (Android)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-sky-release.apk' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-sky-${CI_COMMIT_TAG}.apk' link_type: 'package' - name: 'xhj binary package (iOS)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-xhj.ipa' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-xhj-${CI_COMMIT_TAG}.ipa' link_type: 'package' - name: 'sky binary package (iOS)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-sky.ipa' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-sky-${CI_COMMIT_TAG}.ipa' link_type: 'package' diff --git a/android/app/build.gradle b/android/app/build.gradle index 2d22aec3..1aadabe0 100755 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -52,10 +52,10 @@ android { // 这里“debug”不是一个自定义变量,而是一个特定的关键词,凡是使用--debug模式,都会引用到这里 // 目前看来,debug模式没办法在buildTypes里面按flavors指定编译签名,所有口味的debug模式只能用同一个签名 debug { - storeFile file("starlock.keystore") - storePassword '123456' - keyAlias = 'starlock' - keyPassword '123456' + storeFile file("starlock.keystore") + storePassword '123456' + keyAlias = 'starlock' + keyPassword '123456' // storeFile file("xhj.jks") // storePassword 'xhj8872' // keyAlias = 'upload' @@ -146,7 +146,7 @@ android { compileSdkVersion flutter.compileSdkVersion ndkVersion flutter.ndkVersion - lintOptions{ + lintOptions { checkReleaseBuilds false abortOnError false } @@ -191,7 +191,7 @@ android { JPUSH_PKGNAME : "这里不重要,在口味配置", //JPush 上注册的包名对应的 Appkey. // JPUSH_APPKEY : "7ff37d174c1a568a89e98dad",//--skyAppKey - JPUSH_APPKEY : "251fc8074820d122b6de58d2",//--鑫泓佳AppKey + JPUSH_APPKEY : "251fc8074820d122b6de58d2",//--鑫泓佳AppKey JPUSH_CHANNEL : "flutter_channel", //若不集成厂商通道,可直接跳过以下配置 @@ -199,14 +199,14 @@ android { // XIAOMI_APPID : "MI-2882303761520287291", // XIAOMI_APPKEY : "MI-5352028744291", //以下均为鑫泓佳的配置 - XIAOMI_APPID : "MI-2882303761520314939", + XIAOMI_APPID : "MI-2882303761520314939", XIAOMI_APPKEY : "MI-5312031456939", - OPPO_APPKEY : "OP-47f668c9943248118502aa58d066393b", - OPPO_APPID : "OP-31726001", - OPPO_APPSECRET : "OP-05723986bba64183a71530b496922450", + OPPO_APPKEY : "OP-47f668c9943248118502aa58d066393b", + OPPO_APPID : "OP-31726001", + OPPO_APPSECRET: "OP-05723986bba64183a71530b496922450", // VIVO_APPKEY : "vivo的APPKEY", // VIVO_APPID : "vivo的APPID", - HONOR_APPID : "110798531", + HONOR_APPID : "110798531", ] splits { abi { @@ -247,6 +247,12 @@ android { productFlavors.xhj.signingConfig signingConfigs.xhj } } + + applicationVariants.all { variant -> + variant.outputs.all { + outputFileName = "app-starlock-${variant.buildType.name}-${variant.flavorName}-${defaultConfig.versionName}.apk" + } + } } flutter { @@ -268,7 +274,7 @@ dependencies { //接入OPPO厂商 implementation 'cn.jiguang.sdk.plugin:oppo:5.2.3' //引入 libs 中的 aar,如果项目中有此依赖不需要重复引用 - implementation fileTree(include: ['*.jar','*.aar'], dir: 'libs') + implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs') //OPPO 3.1.0 aar 及其以上版本需要添加以下依赖 implementation 'com.google.code.gson:gson:2.6.2' implementation 'commons-codec:commons-codec:1.6' diff --git a/ios/fastlane/Fastfile b/ios/fastlane/Fastfile index 0abaca5b..b71b6ef8 100644 --- a/ios/fastlane/Fastfile +++ b/ios/fastlane/Fastfile @@ -135,7 +135,7 @@ platform :ios do print_log "gym_scheme_release #{gym_scheme_release}" gym_configuration = "Release-#{flavor}" print_log "gym_configuration #{gym_configuration}" - ipa_default_filename = "app-starlock-release-#{flavor}.ipa" + ipa_default_filename = "app-starlock-release-#{flavor}-"+$current_tag+".ipa" print_log "ipa_default_filename #{ipa_default_filename}" gym( scheme: gym_scheme_release, From a41feff7a811c70ef781309e637cde446cb2cf7c Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Fri, 11 Oct 2024 23:50:08 +0800 Subject: [PATCH 18/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81android=20ios?= =?UTF-8?q?=E4=B8=8D=E5=90=8C=E7=8E=AF=E5=A2=83=E5=88=B6=E5=93=81=E5=8C=85?= =?UTF-8?q?=E6=9E=84=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/fastlane/Fastfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile index ffe2e0ad..ca342711 100644 --- a/android/fastlane/Fastfile +++ b/android/fastlane/Fastfile @@ -90,6 +90,9 @@ platform :android do Dir.chdir "../.." do sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}_lite.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") end + old_file_path = File.join($path_apk_output_dir, "app-#{flavor}-release.apk") + new_file_path = File.join($path_apk_output_dir, "app-starlock-release-#{flavor}-#{$current_tag}.apk") + File.rename(old_file_path, new_file_path) end lane :upload_file_to_pgy do |options| From a3e333387cf49c47fb60a4fffe251cc634d53257 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Sat, 12 Oct 2024 09:16:31 +0800 Subject: [PATCH 19/39] =?UTF-8?q?feat:=20release=E6=A8=A1=E5=BC=8F?= =?UTF-8?q?=E5=88=B6=E5=93=81=E7=89=88=E6=9C=AC=E5=8F=B7=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 24 ++++++++++++------------ android/fastlane/Fastfile | 5 ++++- ios/fastlane/Fastfile | 4 ++-- 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index eb8e833d..a4f9fcc1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -87,14 +87,14 @@ create-release: - export StarLock_VERSION=${CI_COMMIT_TAG#*-} - echo "Uploading StarLock-${StarLock_VERSION} packages to ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/StarLock-${StarLock_VERSION}-*" - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-starlock-release-xhj-${CI_COMMIT_TAG}.apk - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-xhj-${CI_COMMIT_TAG}.apk"' - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/app-starlock-release-sky-${CI_COMMIT_TAG}.apk - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-sky-${CI_COMMIT_TAG}.apk"' - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-xhj-${CI_COMMIT_TAG}.ipa - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-xhj-${CI_COMMIT_TAG}.ipa"' - - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/app-starlock-release-sky-${CI_COMMIT_TAG}.ipa - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/app-starlock-release-sky-${CI_COMMIT_TAG}.ipa"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-xhj-release-${CI_COMMIT_TAG}.apk + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-xhj-release-${CI_COMMIT_TAG}.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-sky-release-${CI_COMMIT_TAG}.apk + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/starlock-xhj-release-${CI_COMMIT_TAG}.ipa + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-xhj-release-${CI_COMMIT_TAG}.ipa"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/starlock-sky-release-${CI_COMMIT_TAG}.ipa + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.ipa"' release: name: '$CI_COMMIT_TAG' description: 'Created Release By GitLab CI/CD' @@ -103,14 +103,14 @@ create-release: assets: links: - name: 'xhj binary package (Android)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-xhj-${CI_COMMIT_TAG}.apk' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-xhj-release-${CI_COMMIT_TAG}.apk' link_type: 'package' - name: 'sky binary package (Android)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-sky-${CI_COMMIT_TAG}.apk' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-sky-release-${CI_COMMIT_TAG}.apk' link_type: 'package' - name: 'xhj binary package (iOS)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-xhj-${CI_COMMIT_TAG}.ipa' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-xhj-release-${CI_COMMIT_TAG}.ipa' link_type: 'package' - name: 'sky binary package (iOS)' - url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/app-starlock-release-sky-${CI_COMMIT_TAG}.ipa' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-sky-release-${CI_COMMIT_TAG}.ipa' link_type: 'package' diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile index ca342711..12ee47e1 100644 --- a/android/fastlane/Fastfile +++ b/android/fastlane/Fastfile @@ -67,6 +67,9 @@ platform :android do Dir.chdir "../.." do sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}_#{env}", "-t", "lib/main_#{flavor}_#{env}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") end + old_file_path = File.join($path_apk_output_dir, "app-#{flavor}-release.apk") + new_file_path = File.join($path_apk_output_dir, "starlock-#{flavor}-preview-#{build_version}.apk") + File.rename(old_file_path, new_file_path) logs = changelog_from_git_commits( pretty: '- %s (%cn)', commits_count: 5, @@ -91,7 +94,7 @@ platform :android do sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}_lite.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") end old_file_path = File.join($path_apk_output_dir, "app-#{flavor}-release.apk") - new_file_path = File.join($path_apk_output_dir, "app-starlock-release-#{flavor}-#{$current_tag}.apk") + new_file_path = File.join($path_apk_output_dir, "starlock-#{flavor}-release-"+$current_tag+".apk") File.rename(old_file_path, new_file_path) end diff --git a/ios/fastlane/Fastfile b/ios/fastlane/Fastfile index b71b6ef8..ce31fa5f 100644 --- a/ios/fastlane/Fastfile +++ b/ios/fastlane/Fastfile @@ -90,7 +90,7 @@ platform :ios do print_log "gym_scheme_preview #{gym_scheme_preview}" gym_configuration = "#{env}-release-#{flavor}" print_log "gym_configuration #{gym_configuration}" - ipa_default_filename = "app-starlock-preview-#{flavor}.ipa" + ipa_default_filename = "starlock-#{flavor}-preview-#{build_version}.ipa" print_log "ipa_default_filename #{ipa_default_filename}" gym( scheme: gym_scheme_preview, @@ -135,7 +135,7 @@ platform :ios do print_log "gym_scheme_release #{gym_scheme_release}" gym_configuration = "Release-#{flavor}" print_log "gym_configuration #{gym_configuration}" - ipa_default_filename = "app-starlock-release-#{flavor}-"+$current_tag+".ipa" + ipa_default_filename = "starlock-#{flavor}-release-"+$current_tag+".ipa" print_log "ipa_default_filename #{ipa_default_filename}" gym( scheme: gym_scheme_release, From e88797ac688c349f02a2457470202d324521baeb Mon Sep 17 00:00:00 2001 From: Liuyf Date: Sat, 12 Oct 2024 12:02:50 +0800 Subject: [PATCH 20/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81google=20store?= =?UTF-8?q?=E5=88=B6=E5=93=81=E6=89=93=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 18 ++++++++++++++---- android/fastlane/Fastfile | 16 ++++++++++++---- 2 files changed, 26 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a4f9fcc1..a719ca9d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -89,8 +89,12 @@ create-release: ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/StarLock-${StarLock_VERSION}-*" - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-xhj-release-${CI_COMMIT_TAG}.apk "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-xhj-release-${CI_COMMIT_TAG}.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-xhj-release-${CI_COMMIT_TAG}.aab + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-xhj-release-${CI_COMMIT_TAG}.aab"' - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-sky-release-${CI_COMMIT_TAG}.apk "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.apk"' + - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-sky-release-${CI_COMMIT_TAG}.aab + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.aab"' - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/starlock-xhj-release-${CI_COMMIT_TAG}.ipa "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-xhj-release-${CI_COMMIT_TAG}.ipa"' - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/starlock-sky-release-${CI_COMMIT_TAG}.ipa @@ -102,15 +106,21 @@ create-release: ref: '$CI_COMMIT_TAG' assets: links: - - name: 'xhj binary package (Android)' + - name: 'xhj apk binary package' url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-xhj-release-${CI_COMMIT_TAG}.apk' link_type: 'package' - - name: 'sky binary package (Android)' + - name: 'xhj bundle binary package' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-xhj-release-${CI_COMMIT_TAG}.aab' + link_type: 'package' + - name: 'sky apk binary package' url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-sky-release-${CI_COMMIT_TAG}.apk' link_type: 'package' - - name: 'xhj binary package (iOS)' + - name: 'sky bundle binary package' + url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-sky-release-${CI_COMMIT_TAG}.aab' + link_type: 'package' + - name: 'xhj ipa binary package' url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-xhj-release-${CI_COMMIT_TAG}.ipa' link_type: 'package' - - name: 'sky binary package (iOS)' + - name: 'sky ipa binary package' url: '${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${CI_COMMIT_TAG}/starlock-sky-release-${CI_COMMIT_TAG}.ipa' link_type: 'package' diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile index 12ee47e1..7c43a799 100644 --- a/android/fastlane/Fastfile +++ b/android/fastlane/Fastfile @@ -24,6 +24,7 @@ $current_branch = ENV[$env_current_branch] $current_tag = ENV[$env_current_tag] $path_apk_output_dir = File.join($path_dir_build, 'build/app/outputs/flutter-apk') +$path_bundle_output_dir = File.join($path_dir_build, 'build/app/outputs/bundle') def print_header header @@ -67,7 +68,7 @@ platform :android do Dir.chdir "../.." do sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}_#{env}", "-t", "lib/main_#{flavor}_#{env}.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") end - old_file_path = File.join($path_apk_output_dir, "app-#{flavor}-release.apk") + old_file_path = File.join($path_apk_output_dir, "app-#{flavor}_#{env}-release.apk") new_file_path = File.join($path_apk_output_dir, "starlock-#{flavor}-preview-#{build_version}.apk") File.rename(old_file_path, new_file_path) logs = changelog_from_git_commits( @@ -93,9 +94,16 @@ platform :android do Dir.chdir "../.." do sh("flutter", "build", "apk", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}_lite.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") end - old_file_path = File.join($path_apk_output_dir, "app-#{flavor}-release.apk") - new_file_path = File.join($path_apk_output_dir, "starlock-#{flavor}-release-"+$current_tag+".apk") - File.rename(old_file_path, new_file_path) + old_apk_file_path = File.join($path_apk_output_dir, "app-#{flavor}-release.apk") + new_apk_file_path = File.join($path_apk_output_dir, "starlock-#{flavor}-release-"+$current_tag+".apk") + File.rename(old_apk_file_path, new_apk_file_path) + Dir.chdir "../.." do + sh("flutter", "build", "appbundle", "--no-tree-shake-icons", "--release", "--flavor", "#{flavor}", "-t", "lib/main_#{flavor}_lite.dart", "--build-number=#{build_number}", "--build-name=#{build_version}") + end + old_bundle_file_path = File.join($path_bundle_output_dir , "/#{flavor}Release/app-#{flavor}-release.aab") + new_bundle_file_path = File.join($path_bundle_output_dir , "/#{flavor}Release/starlock-#{flavor}-release-"+$current_tag+".aab") + File.rename(old_bundle_file_path, new_bundle_file_path) + sh('cp',new_bundle_file_path,$path_apk_output_dir) end lane :upload_file_to_pgy do |options| From 9df3a5de492419219dc53a51149ffa888c706583 Mon Sep 17 00:00:00 2001 From: ci_bot Date: Sat, 12 Oct 2024 14:08:05 +0800 Subject: [PATCH 21/39] =?UTF-8?q?feat:=20=E5=85=B3=E9=97=ADiOS=E8=AF=81?= =?UTF-8?q?=E4=B9=A6=E8=87=AA=E5=8A=A8=E7=AE=A1=E7=90=86=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Runner.xcodeproj/project.pbxproj | 87 +++++----------------------- 1 file changed, 15 insertions(+), 72 deletions(-) diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 294d2c6f..a3536cbe 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -17,9 +17,7 @@ 8297E4102AE75AC500E886FA /* XSFlutterManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8297E40E2AE75AC500E886FA /* XSFlutterManager.m */; }; 8297E49B2AE7974700E886FA /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 8297E49A2AE7974700E886FA /* AppDelegate.m */; }; 82B657622C91665F0079121C /* Info_sky.plist in Resources */ = {isa = PBXBuildFile; fileRef = 82B657602C91665E0079121C /* Info_sky.plist */; }; - 82B657632C91665F0079121C /* Info_xhj.plist in Resources */ = {isa = PBXBuildFile; fileRef = 82B657612C91665E0079121C /* Info_xhj.plist */; }; 82B657652C917F950079121C /* Info_pre.plist in Resources */ = {isa = PBXBuildFile; fileRef = 82B657642C917F950079121C /* Info_pre.plist */; }; - 82B657672C919BDF0079121C /* launchImage_xhj.png in Resources */ = {isa = PBXBuildFile; fileRef = 82B657662C919BDF0079121C /* launchImage_xhj.png */; }; 82B657692C919DA70079121C /* launchImage_sky.png in Resources */ = {isa = PBXBuildFile; fileRef = 82B657682C919DA60079121C /* launchImage_sky.png */; }; 82C026542AE8AC6D0011FE6A /* AliyunEmasServices-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 82C026532AE8AC6D0011FE6A /* AliyunEmasServices-Info.plist */; }; 82F1ECDB2BE8B7B500265D59 /* DTFIdentityManager.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 82F1ECD12BE8B7B400265D59 /* DTFIdentityManager.framework */; }; @@ -478,77 +476,13 @@ 82B657622C91665F0079121C /* Info_sky.plist in Resources */, 82F1ED142BE8B9F400265D59 /* ToygerService.bundle in Resources */, 82C026542AE8AC6D0011FE6A /* AliyunEmasServices-Info.plist in Resources */, - 82C026AD2AEB6C050011FE6A /* blank.png in Resources */, - 82C0269F2AEB6C050011FE6A /* show_head_toast_bg.9.PNG in Resources */, E0A496C92CA30C2C00E376BB /* xhjDevRelease.xcconfig in Resources */, - 82C026BA2AEB6C050011FE6A /* logo3.png in Resources */, - 82C026B22AEB6C050011FE6A /* swicth_minus_on.png in Resources */, - 82C026C22AEB6C050011FE6A /* shop_loading.png in Resources */, - 82C026AF2AEB6C050011FE6A /* rotate.png in Resources */, - 82C026BD2AEB6C050011FE6A /* logo2.png in Resources */, - 82C026C62AEB6C050011FE6A /* ic_launcher.png in Resources */, - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 82C026D62AEB6C050011FE6A /* vcontacts_on.png in Resources */, - 82C026BF2AEB6C050011FE6A /* swicth_add_on.png in Resources */, E0A496CD2CA30CA900E376BB /* skyDevRelease.xcconfig in Resources */, - 82C026A52AEB6C050011FE6A /* unlock_on2.png in Resources */, - 82C026A12AEB6C050011FE6A /* icon_close.png in Resources */, - 82C026AB2AEB6C050011FE6A /* vcall.png in Resources */, - 82C026CE2AEB6C050011FE6A /* split.JPG in Resources */, 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, - 82C026A72AEB6C050011FE6A /* zoom.png in Resources */, - 82C026D42AEB6C050011FE6A /* split4.png in Resources */, 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, - 82C026992AEB6C050011FE6A /* ic_vd_mic_on.png in Resources */, - 82C026C12AEB6C050011FE6A /* swicth_on.png in Resources */, - 82C026B72AEB6C050011FE6A /* swicth_off.png in Resources */, - 82C026D72AEB6C050011FE6A /* mic.png in Resources */, - 82C026C32AEB6C050011FE6A /* call_menu_on.png in Resources */, - 82C026B02AEB6C050011FE6A /* call_call_on.png in Resources */, - 3364C3F42B0C902100AA5ABC /* lcokStarMain.png in Resources */, E0A496CB2CA30C7400E376BB /* xhjPreviewRelease.xcconfig in Resources */, - 82C026C82AEB6C050011FE6A /* hf.png in Resources */, - 82C026BE2AEB6C050011FE6A /* vcontacts2.png in Resources */, - 82C026AC2AEB6C050011FE6A /* spk.png in Resources */, - 82C026D12AEB6C050011FE6A /* setting.png in Resources */, - 82C026D82AEB6C050011FE6A /* icon_key.png in Resources */, - 82C026C42AEB6C050011FE6A /* vcall_on.png in Resources */, - 82C026982AEB6C050011FE6A /* add.png in Resources */, - 82C026D22AEB6C050011FE6A /* back.png in Resources */, - 82C0269C2AEB6C050011FE6A /* call_del_on.png in Resources */, - 82C026B92AEB6C050011FE6A /* back3.png in Resources */, - 82C026C02AEB6C050011FE6A /* add2.png in Resources */, - 82C026BB2AEB6C050011FE6A /* menu.png in Resources */, - 82C026AA2AEB6C050011FE6A /* lock.png in Resources */, - 82C026CC2AEB6C050011FE6A /* split3.png in Resources */, - 82C026D92AEB6C050011FE6A /* bg.jpg in Resources */, - 82C026B82AEB6C050011FE6A /* test.jpg in Resources */, - 82C026B12AEB6C050011FE6A /* call_del.png in Resources */, - 82C026B52AEB6C050011FE6A /* search_bar_icon_normal.png in Resources */, - 82C026CA2AEB6C050011FE6A /* wave2.png in Resources */, - 82C0269D2AEB6C050011FE6A /* hangup.png in Resources */, - 82C0269A2AEB6C050011FE6A /* watch.png in Resources */, - 82C0269E2AEB6C050011FE6A /* save_photo.png in Resources */, - 82C026A62AEB6C050011FE6A /* vcontacts.png in Resources */, - 82C026C72AEB6C050011FE6A /* key_on.png in Resources */, - 82C026D52AEB6C050011FE6A /* thumb.png in Resources */, - 82C026B32AEB6C050011FE6A /* lock_on.png in Resources */, - 82C026A32AEB6C050011FE6A /* sidebar_background.xml in Resources */, - 82C026CF2AEB6C050011FE6A /* swicth_add_off.png in Resources */, - 82C026A22AEB6C050011FE6A /* swicth_minus_off.png in Resources */, - 82C026A42AEB6C050011FE6A /* hf_on.png in Resources */, - 82C026C92AEB6C050011FE6A /* wave3.png in Resources */, - 82C026D02AEB6C050011FE6A /* search_bar_edit_pressed.9.png in Resources */, - 82C026A82AEB6C050011FE6A /* key.png in Resources */, E0A496C52CA3092500E376BB /* localDebug.xcconfig in Resources */, - 82C026CB2AEB6C050011FE6A /* ic_vd_mic_off.png in Resources */, - 82C026CD2AEB6C050011FE6A /* emotionstore_progresscancelbtn.png in Resources */, - 82C026D32AEB6C050011FE6A /* thumb_on.png in Resources */, - 82C026BC2AEB6C050011FE6A /* logo.png in Resources */, - 82C026B42AEB6C050011FE6A /* vrecord_on.png in Resources */, - 82C026C52AEB6C050011FE6A /* wave1.png in Resources */, - 82C026B62AEB6C050011FE6A /* vrecord.png in Resources */, 805C745A7C79091E65665B96 /* devDebug.xcconfig in Resources */, D415555B0C61C5422202D037 /* devProfile.xcconfig in Resources */, 8A77CDE0EDBCACCE22C29A9E /* devRelease.xcconfig in Resources */, @@ -808,10 +742,13 @@ baseConfigurationReference = 16A83D21DFB231D8453DC681 /* Pods-Runner.release-sky.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEVELOPMENT_TEAM = NAQ5PL2DYC; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; INFOPLIST_FILE = Runner/info_sky.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.skychip.lock.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -856,10 +793,13 @@ baseConfigurationReference = CDC2B8ED804B514A774F187D /* Pods-Runner.release-xhj.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEVELOPMENT_TEAM = P8997RW3V8; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; INFOPLIST_FILE = Runner/Info_xhj.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovisioning; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -998,9 +938,9 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 7D53BZAN75; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = NO; GCC_NO_COMMON_BLOCKS = NO; INFOPLIST_FILE = Runner/Info.plist; @@ -1681,9 +1621,9 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 7D53BZAN75; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = NO; GCC_NO_COMMON_BLOCKS = NO; INFOPLIST_FILE = Runner/Info.plist; @@ -1826,9 +1766,9 @@ CLANG_ENABLE_MODULES = YES; CODE_SIGN_ENTITLEMENTS = Runner/RunnerRelease.entitlements; CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; + CODE_SIGN_STYLE = Manual; CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = 7D53BZAN75; + DEVELOPMENT_TEAM = ""; ENABLE_BITCODE = NO; GCC_NO_COMMON_BLOCKS = NO; INFOPLIST_FILE = Runner/Info.plist; @@ -2327,12 +2267,15 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-dev.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local; PRODUCT_NAME = Runner; PROVISIONING_PROFILE_SPECIFIER = ""; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Debug_com.starlock.lock.local.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; From 408dbf977848e0446738fa76f7bf0c5a9e22a6de Mon Sep 17 00:00:00 2001 From: ci_bot Date: Sat, 12 Oct 2024 15:01:06 +0800 Subject: [PATCH 22/39] =?UTF-8?q?feat:=20=E9=85=8D=E7=BD=AElocal=20dev=20p?= =?UTF-8?q?re=E8=AF=81=E4=B9=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Runner.xcodeproj/project.pbxproj | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index a3536cbe..9dfd1324 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -727,7 +727,7 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerProfile-sky.entitlements"; DEVELOPMENT_TEAM = NAQ5PL2DYC; - INFOPLIST_FILE = Runner/info_sky.plist; + INFOPLIST_FILE = Runner/Info_sky.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; @@ -745,7 +745,7 @@ "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEVELOPMENT_TEAM = NAQ5PL2DYC; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; - INFOPLIST_FILE = Runner/info_sky.plist; + INFOPLIST_FILE = Runner/Info_sky.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.skychip.lock.mobileprovision; @@ -2271,6 +2271,7 @@ CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; + INFOPLIST_FILE = Runner/Info_dev.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local; PRODUCT_NAME = Runner; @@ -2362,6 +2363,7 @@ CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; + INFOPLIST_FILE = Runner/Info_pre.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.pre; PRODUCT_NAME = Runner; @@ -2453,6 +2455,7 @@ CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; + INFOPLIST_FILE = Runner/Info_dev.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.dev; PRODUCT_NAME = Runner; @@ -2544,6 +2547,7 @@ CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; + INFOPLIST_FILE = Runner/Info_pre.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.pre; PRODUCT_NAME = Runner; @@ -2635,6 +2639,7 @@ CODE_SIGN_STYLE = Manual; DEVELOPMENT_TEAM = ""; "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; + INFOPLIST_FILE = Runner/Info_dev.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.dev; PRODUCT_NAME = Runner; From c4b293ef86a4e190391b347081dd632a84b55778 Mon Sep 17 00:00:00 2001 From: ci_bot Date: Sat, 12 Oct 2024 15:50:19 +0800 Subject: [PATCH 23/39] =?UTF-8?q?feat:=20=E9=85=8D=E7=BD=AElocal=20dev=20p?= =?UTF-8?q?re=E8=AF=81=E4=B9=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Runner.xcodeproj/project.pbxproj | 17 +++++++++++++++-- ios/Runner/Info_xhj.plist | 8 ++++---- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 9dfd1324..6a45fd8c 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -612,8 +612,8 @@ buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-dev.entitlements"; CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = 7D53BZAN75; + CODE_SIGN_STYLE = Manual; + DEVELOPMENT_TEAM = ""; INFOPLIST_FILE = Runner/Info_dev.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; @@ -710,10 +710,13 @@ baseConfigurationReference = 4A63B2C308CB401731950EC8 /* Pods-Runner.debug-sky.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-sky.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEVELOPMENT_TEAM = NAQ5PL2DYC; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; INFOPLIST_FILE = Runner/Info_sky.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.skychip.lock.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -726,10 +729,13 @@ baseConfigurationReference = 8CD96970DEA44F6CC71DEECE /* Pods-Runner.profile-sky.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = "Runner/RunnerProfile-sky.entitlements"; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEVELOPMENT_TEAM = NAQ5PL2DYC; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; INFOPLIST_FILE = Runner/Info_sky.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.skychip.lock.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -761,10 +767,13 @@ baseConfigurationReference = 22D858E988707FF26E068457 /* Pods-Runner.debug-xhj.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEVELOPMENT_TEAM = P8997RW3V8; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; INFOPLIST_FILE = Runner/Info_xhj.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovisioning; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -777,10 +786,13 @@ baseConfigurationReference = D62237D2D011BDC27FB2BC28 /* Pods-Runner.profile-xhj.xcconfig */; buildSettings = { CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; DEVELOPMENT_TEAM = P8997RW3V8; + "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; INFOPLIST_FILE = Runner/Info_xhj.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_NAME = Runner; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovisioning; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; @@ -798,6 +810,7 @@ "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; INFOPLIST_FILE = Runner/Info_xhj.plist; IPHONEOS_DEPLOYMENT_TARGET = 12.0; + PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock; PRODUCT_NAME = Runner; "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovisioning; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; diff --git a/ios/Runner/Info_xhj.plist b/ios/Runner/Info_xhj.plist index 9874419b..d8ed7c28 100755 --- a/ios/Runner/Info_xhj.plist +++ b/ios/Runner/Info_xhj.plist @@ -84,6 +84,8 @@ 应用请求相机,以便于拍摄照片,用于头像上传及人脸认证 NSContactsUsageDescription Reason we need access to the contact list + NSFileProtectionKey + NSFileProtectionCompleteUntilFirstUserAuthentication NSLocationAlwaysAndWhenInUseUsageDescription 应用在前台和后台的时候可以搜到更新的位置信息 NSLocationAlwaysUsageDescription @@ -105,6 +107,8 @@ remote-notification + UIFileSharingEnabled + UILaunchStoryboardName xhjLaunchScreen UIMainStoryboardFile @@ -121,10 +125,6 @@ UIViewControllerBasedStatusBarAppearance - NSFileProtectionKey - NSFileProtectionCompleteUntilFirstUserAuthentication - UIFileSharingEnabled - io.flutter.embedded_views_preview From 9542a7715c5a6f4905051b6827352207fb166e2c Mon Sep 17 00:00:00 2001 From: ci_bot Date: Sat, 12 Oct 2024 17:21:37 +0800 Subject: [PATCH 24/39] =?UTF-8?q?feat:=20=E9=85=8D=E7=BD=AExhj=20releae?= =?UTF-8?q?=E8=AF=81=E4=B9=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Runner.xcodeproj/project.pbxproj | 1519 +------------------------- 1 file changed, 2 insertions(+), 1517 deletions(-) diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 6a45fd8c..b49dc272 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -606,143 +606,6 @@ /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ - 04ED962A2B688AB00046472A /* Debug-dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D28DFC3BEA6D46B5F5B5E55F /* Pods-Runner.debug-dev.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-dev.entitlements"; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = ""; - INFOPLIST_FILE = Runner/Info_dev.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - PROVISIONING_PROFILE_SPECIFIER = ""; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Debug-dev"; - }; - 04ED962B2B688AB00046472A /* Profile-dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 6285D102821F3D2FB7B09E43 /* Pods-Runner.profile-dev.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerProfile-dev.entitlements"; - DEVELOPMENT_TEAM = 7D53BZAN75; - INFOPLIST_FILE = Runner/Info_dev.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Profile-dev"; - }; - 04ED962C2B688AB00046472A /* Release-dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 295A8AFEEC4806105FAA13B5 /* Pods-Runner.release-dev.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-dev.entitlements"; - DEVELOPMENT_TEAM = 7D53BZAN75; - INFOPLIST_FILE = Runner/Info_dev.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Release-dev"; - }; - 04ED962D2B688AB00046472A /* Debug-pre */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 51086737647B9B5E510020C6 /* Pods-Runner.debug-pre.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-pre.entitlements"; - DEVELOPMENT_TEAM = 7D53BZAN75; - INFOPLIST_FILE = Runner/Info_pre.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Debug-pre"; - }; - 04ED962E2B688AB00046472A /* Profile-pre */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D001CDA3D7BF065A0C6E3B64 /* Pods-Runner.profile-pre.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerProfile-pre.entitlements"; - DEVELOPMENT_TEAM = 7D53BZAN75; - INFOPLIST_FILE = Runner/Info_pre.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Profile-pre"; - }; - 04ED962F2B688AB00046472A /* Release-pre */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 68C41ACED6A779BAAA0A51A7 /* Pods-Runner.release-pre.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-pre.entitlements"; - DEVELOPMENT_TEAM = 7D53BZAN75; - INFOPLIST_FILE = Runner/Info_pre.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Release-pre"; - }; - 04ED96302B688AB00046472A /* Debug-sky */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4A63B2C308CB401731950EC8 /* Pods-Runner.debug-sky.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-sky.entitlements"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; - DEVELOPMENT_TEAM = NAQ5PL2DYC; - "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; - INFOPLIST_FILE = Runner/Info_sky.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.skychip.lock.mobileprovision; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Debug-sky"; - }; - 04ED96312B688AB00046472A /* Profile-sky */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 8CD96970DEA44F6CC71DEECE /* Pods-Runner.profile-sky.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = "Runner/RunnerProfile-sky.entitlements"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; - DEVELOPMENT_TEAM = NAQ5PL2DYC; - "DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC; - INFOPLIST_FILE = Runner/Info_sky.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.skychip.lock.mobileprovision; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Profile-sky"; - }; 04ED96322B688AB00046472A /* Release-sky */ = { isa = XCBuildConfiguration; baseConfigurationReference = 16A83D21DFB231D8453DC681 /* Pods-Runner.release-sky.xcconfig */; @@ -762,44 +625,6 @@ }; name = "Release-sky"; }; - 04ED96332B688AB00046472A /* Debug-xhj */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22D858E988707FF26E068457 /* Pods-Runner.debug-xhj.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; - DEVELOPMENT_TEAM = P8997RW3V8; - "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; - INFOPLIST_FILE = Runner/Info_xhj.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovisioning; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Debug-xhj"; - }; - 04ED96342B688AB00046472A /* Profile-xhj */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D62237D2D011BDC27FB2BC28 /* Pods-Runner.profile-xhj.xcconfig */; - buildSettings = { - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution"; - DEVELOPMENT_TEAM = P8997RW3V8; - "DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8; - INFOPLIST_FILE = Runner/Info_xhj.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - PRODUCT_NAME = Runner; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovisioning; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - TARGETED_DEVICE_FAMILY = 1; - }; - name = "Profile-xhj"; - }; 04ED96352B688AB00046472A /* Release-xhj */ = { isa = XCBuildConfiguration; baseConfigurationReference = CDC2B8ED804B514A774F187D /* Pods-Runner.release-xhj.xcconfig */; @@ -820,342 +645,6 @@ }; name = "Release-xhj"; }; - 0AECF9F7E0C6DEA08F10801D /* Profile-xhj */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = DC2FBF181C8D9880E24845E6 /* xhjProfile.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = "Profile-xhj"; - }; - 249021D3217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Profile; - }; - 249021D4217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/RunnerProfile.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = ""; - ENABLE_BITCODE = NO; - GCC_NO_COMMON_BLOCKS = NO; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.0; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-l\"c++\"", - "-l\"resolv\"", - "-l\"sqlite3\"", - "-l\"sqlite3.0\"", - "-l\"z\"", - "-framework", - "\"AMapFoundationKit\"", - "-framework", - "\"AMapLocationKit\"", - "-framework", - "\"Accelerate\"", - "-framework", - "\"AlicloudSender\"", - "-framework", - "\"AlicloudUtils\"", - "-framework", - "\"CloudPushSDK\"", - "-framework", - "\"CoreData\"", - "-framework", - "\"CoreGraphics\"", - "-framework", - "\"CoreImage\"", - "-framework", - "\"CoreLocation\"", - "-framework", - "\"CoreTelephony\"", - "-framework", - "\"CoreText\"", - "-framework", - "\"EMASRest\"", - "-framework", - "\"ExternalAccessory\"", - "-framework", - "\"FMDB\"", - "-framework", - "\"GLKit\"", - "-framework", - "\"GoogleMaps\"", - "-framework", - "\"GoogleMapsBase\"", - "-framework", - "\"GoogleMapsCore\"", - "-framework", - "\"ImageIO\"", - "-framework", - "\"MAMapKit\"", - "-framework", - "\"Metal\"", - "-framework", - "\"OpenGLES\"", - "-framework", - "\"Protobuf\"", - "-framework", - "\"QuartzCore\"", - "-framework", - "\"Security\"", - "-framework", - "\"SwiftProtobuf\"", - "-framework", - "\"SystemConfiguration\"", - "-framework", - "\"Toast\"", - "-framework", - "\"UIKit\"", - "-framework", - "\"UTDID\"", - "-framework", - "\"UTMini\"", - "-framework", - "\"aj_captcha_flutter\"", - "-framework", - "\"amap_flutter_location\"", - "-framework", - "\"amap_flutter_map\"", - "-framework", - "\"camera_avfoundation\"", - "-framework", - "\"device_info_plus\"", - "-framework", - "\"flutter_native_contact_picker\"", - "-framework", - "\"fluttertoast\"", - "-framework", - "\"google_maps_flutter_ios\"", - "-framework", - "\"image_picker_ios\"", - "-framework", - "\"network_info_plus\"", - "-framework", - "\"package_info_plus\"", - "-framework", - "\"path_provider_foundation\"", - "-framework", - "\"permission_handler_apple\"", - "-framework", - "\"reactive_ble_mobile\"", - "-framework", - "\"shared_preferences_foundation\"", - "-framework", - "\"sqflite\"", - "-framework", - "\"url_launcher_ios\"", - "-framework", - "\"webview_flutter_wkwebview\"", - ); - PRODUCT_BUNDLE_IDENTIFIER = "cn.star-lock.starLock"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - STRIP_INSTALLED_PRODUCT = NO; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 1; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Profile; - }; - 286CDDCE190664D4A34E4EA4 /* Profile-pre */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = B7AA7A6DD927B38E32E2C889 /* preProfile.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.pre; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = "Profile-pre"; - }; 5028C464A6FD115380ECE6A0 /* Release-sky */ = { isa = XCBuildConfiguration; baseConfigurationReference = 35F02D170492750B437D6AB6 /* skyRelease.xcconfig */; @@ -1226,151 +715,6 @@ }; name = "Release-sky"; }; - 73A00B8681EDE1EB63EC993D /* Debug-dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0D02C18E16914A687A4A1AC2 /* devDebug.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.dev; - SDKROOT = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Debug-dev"; - }; - 8B40B3FD83C5A41406C64627 /* Profile-dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9AA145F8B894E5E4F14249DB /* devProfile.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.dev; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = "Profile-dev"; - }; 9073AF548DAA546CE84A8D2F /* Release-xhj */ = { isa = XCBuildConfiguration; baseConfigurationReference = CA9024705F732C9C000EA53E /* xhjRelease.xcconfig */; @@ -1441,764 +785,6 @@ }; name = "Release-xhj"; }; - 92508731B124D206E57D27AC /* Debug-sky */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7579B06AEF5FEA95042D8474 /* skyDebug.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock; - SDKROOT = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Debug-sky"; - }; - 97C147031CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - EXCLUDED_ARCHS = ""; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 97C147041CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 97C147061CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/Runner.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = ""; - ENABLE_BITCODE = NO; - GCC_NO_COMMON_BLOCKS = NO; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.0; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-l\"c++\"", - "-l\"resolv\"", - "-l\"sqlite3\"", - "-l\"sqlite3.0\"", - "-l\"z\"", - "-framework", - "\"AMapFoundationKit\"", - "-framework", - "\"AMapLocationKit\"", - "-framework", - "\"Accelerate\"", - "-framework", - "\"AlicloudSender\"", - "-framework", - "\"AlicloudUtils\"", - "-framework", - "\"CloudPushSDK\"", - "-framework", - "\"CoreData\"", - "-framework", - "\"CoreGraphics\"", - "-framework", - "\"CoreImage\"", - "-framework", - "\"CoreLocation\"", - "-framework", - "\"CoreTelephony\"", - "-framework", - "\"CoreText\"", - "-framework", - "\"EMASRest\"", - "-framework", - "\"ExternalAccessory\"", - "-framework", - "\"FMDB\"", - "-framework", - "\"GLKit\"", - "-framework", - "\"GoogleMaps\"", - "-framework", - "\"GoogleMapsBase\"", - "-framework", - "\"GoogleMapsCore\"", - "-framework", - "\"ImageIO\"", - "-framework", - "\"MAMapKit\"", - "-framework", - "\"Metal\"", - "-framework", - "\"OpenGLES\"", - "-framework", - "\"Protobuf\"", - "-framework", - "\"QuartzCore\"", - "-framework", - "\"Security\"", - "-framework", - "\"SwiftProtobuf\"", - "-framework", - "\"SystemConfiguration\"", - "-framework", - "\"Toast\"", - "-framework", - "\"UIKit\"", - "-framework", - "\"UTDID\"", - "-framework", - "\"UTMini\"", - "-framework", - "\"aj_captcha_flutter\"", - "-framework", - "\"amap_flutter_location\"", - "-framework", - "\"amap_flutter_map\"", - "-framework", - "\"camera_avfoundation\"", - "-framework", - "\"device_info_plus\"", - "-framework", - "\"flutter_native_contact_picker\"", - "-framework", - "\"fluttertoast\"", - "-framework", - "\"google_maps_flutter_ios\"", - "-framework", - "\"image_picker_ios\"", - "-framework", - "\"network_info_plus\"", - "-framework", - "\"package_info_plus\"", - "-framework", - "\"path_provider_foundation\"", - "-framework", - "\"permission_handler_apple\"", - "-framework", - "\"reactive_ble_mobile\"", - "-framework", - "\"shared_preferences_foundation\"", - "-framework", - "\"sqflite\"", - "-framework", - "\"url_launcher_ios\"", - "-framework", - "\"webview_flutter_wkwebview\"", - ); - PRODUCT_BUNDLE_IDENTIFIER = "cn.star-lock.starLock"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - STRIP_INSTALLED_PRODUCT = NO; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 1; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 97C147071CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/RunnerRelease.entitlements; - CODE_SIGN_IDENTITY = "Apple Development"; - CODE_SIGN_STYLE = Manual; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - DEVELOPMENT_TEAM = ""; - ENABLE_BITCODE = NO; - GCC_NO_COMMON_BLOCKS = NO; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 1.0.0; - OTHER_LDFLAGS = ( - "$(inherited)", - "-ObjC", - "-l\"c++\"", - "-l\"resolv\"", - "-l\"sqlite3\"", - "-l\"sqlite3.0\"", - "-l\"z\"", - "-framework", - "\"AMapFoundationKit\"", - "-framework", - "\"AMapLocationKit\"", - "-framework", - "\"Accelerate\"", - "-framework", - "\"AlicloudSender\"", - "-framework", - "\"AlicloudUtils\"", - "-framework", - "\"CloudPushSDK\"", - "-framework", - "\"CoreData\"", - "-framework", - "\"CoreGraphics\"", - "-framework", - "\"CoreImage\"", - "-framework", - "\"CoreLocation\"", - "-framework", - "\"CoreTelephony\"", - "-framework", - "\"CoreText\"", - "-framework", - "\"EMASRest\"", - "-framework", - "\"ExternalAccessory\"", - "-framework", - "\"FMDB\"", - "-framework", - "\"GLKit\"", - "-framework", - "\"GoogleMaps\"", - "-framework", - "\"GoogleMapsBase\"", - "-framework", - "\"GoogleMapsCore\"", - "-framework", - "\"ImageIO\"", - "-framework", - "\"MAMapKit\"", - "-framework", - "\"Metal\"", - "-framework", - "\"OpenGLES\"", - "-framework", - "\"Protobuf\"", - "-framework", - "\"QuartzCore\"", - "-framework", - "\"Security\"", - "-framework", - "\"SwiftProtobuf\"", - "-framework", - "\"SystemConfiguration\"", - "-framework", - "\"Toast\"", - "-framework", - "\"UIKit\"", - "-framework", - "\"UTDID\"", - "-framework", - "\"UTMini\"", - "-framework", - "\"aj_captcha_flutter\"", - "-framework", - "\"amap_flutter_location\"", - "-framework", - "\"amap_flutter_map\"", - "-framework", - "\"camera_avfoundation\"", - "-framework", - "\"device_info_plus\"", - "-framework", - "\"flutter_native_contact_picker\"", - "-framework", - "\"fluttertoast\"", - "-framework", - "\"google_maps_flutter_ios\"", - "-framework", - "\"image_picker_ios\"", - "-framework", - "\"network_info_plus\"", - "-framework", - "\"package_info_plus\"", - "-framework", - "\"path_provider_foundation\"", - "-framework", - "\"permission_handler_apple\"", - "-framework", - "\"reactive_ble_mobile\"", - "-framework", - "\"shared_preferences_foundation\"", - "-framework", - "\"sqflite\"", - "-framework", - "\"url_launcher_ios\"", - "-framework", - "\"webview_flutter_wkwebview\"", - ); - PRODUCT_BUNDLE_IDENTIFIER = "cn.star-lock.starLock"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE_SPECIFIER = ""; - STRIP_INSTALLED_PRODUCT = NO; - SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; - SUPPORTS_MACCATALYST = NO; - SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = 1; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; - C51E26EEC6F3F8D8814544CD /* Profile-sky */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = DC36296928F573892A6C154E /* skyProfile.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = "Profile-sky"; - }; - CD0F4AFC8F434AA9EA2D2A95 /* Debug-pre */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 383F65C3166F78B1A1470A4E /* preDebug.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.pre; - SDKROOT = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Debug-pre"; - }; - DEEE4BE2780828AE04C19988 /* Release-pre */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D501929EA2295683612A3AD8 /* preRelease.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.pre; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = "Release-pre"; - }; - E012F2CE4EAD5EA6383524FD /* Release-dev */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 2248834AC2C89C79BC3744F6 /* devRelease.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.dev; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = "Release-dev"; - }; E0A496C62CA309AD00E376BB /* Debug-local */ = { isa = XCBuildConfiguration; baseConfigurationReference = E0A496C42CA3092500E376BB /* localDebug.xcconfig */; @@ -2665,137 +1251,36 @@ }; name = "dev-release-xhj"; }; - F8797FBDD3C840B38D7E6A01 /* Debug-xhj */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 853610C00A55CC450C2FF839 /* xhjDebug.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = "$(ASSET_PREFIX)AppIcon"; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - EXCLUDED_ARCHS = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - LIBRARY_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Flutter", - ); - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock; - SDKROOT = iphoneos; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = "Debug-xhj"; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { isa = XCConfigurationList; buildConfigurations = ( - 97C147031CF9000F007C117D /* Debug */, - 97C147041CF9000F007C117D /* Release */, - 249021D3217E4FDB00AE95B9 /* Profile */, - 73A00B8681EDE1EB63EC993D /* Debug-dev */, E0A496C62CA309AD00E376BB /* Debug-local */, - 8B40B3FD83C5A41406C64627 /* Profile-dev */, - E012F2CE4EAD5EA6383524FD /* Release-dev */, - CD0F4AFC8F434AA9EA2D2A95 /* Debug-pre */, - 286CDDCE190664D4A34E4EA4 /* Profile-pre */, - DEEE4BE2780828AE04C19988 /* Release-pre */, - 92508731B124D206E57D27AC /* Debug-sky */, - C51E26EEC6F3F8D8814544CD /* Profile-sky */, 5028C464A6FD115380ECE6A0 /* Release-sky */, E0A496D02CA30D2800E376BB /* pre-release-sky */, E0A496D22CA30D5A00E376BB /* dev-release-sky */, - F8797FBDD3C840B38D7E6A01 /* Debug-xhj */, - 0AECF9F7E0C6DEA08F10801D /* Profile-xhj */, 9073AF548DAA546CE84A8D2F /* Release-xhj */, E0A496D42CA30D7400E376BB /* pre-release-xhj */, E0A496D62CA30D8400E376BB /* dev-release-xhj */, ); defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; + defaultConfigurationName = "Debug-local"; }; 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { isa = XCConfigurationList; buildConfigurations = ( - 97C147061CF9000F007C117D /* Debug */, - 97C147071CF9000F007C117D /* Release */, - 249021D4217E4FDB00AE95B9 /* Profile */, - 04ED962A2B688AB00046472A /* Debug-dev */, E0A496C72CA309AD00E376BB /* Debug-local */, - 04ED962B2B688AB00046472A /* Profile-dev */, - 04ED962C2B688AB00046472A /* Release-dev */, - 04ED962D2B688AB00046472A /* Debug-pre */, - 04ED962E2B688AB00046472A /* Profile-pre */, - 04ED962F2B688AB00046472A /* Release-pre */, - 04ED96302B688AB00046472A /* Debug-sky */, - 04ED96312B688AB00046472A /* Profile-sky */, 04ED96322B688AB00046472A /* Release-sky */, E0A496D12CA30D2800E376BB /* pre-release-sky */, E0A496D32CA30D5A00E376BB /* dev-release-sky */, - 04ED96332B688AB00046472A /* Debug-xhj */, - 04ED96342B688AB00046472A /* Profile-xhj */, 04ED96352B688AB00046472A /* Release-xhj */, E0A496D52CA30D7400E376BB /* pre-release-xhj */, E0A496D72CA30D8400E376BB /* dev-release-xhj */, ); defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; + defaultConfigurationName = "Debug-local"; }; /* End XCConfigurationList section */ }; From baeb2b5544827e30e8821289896b5b70b7a36a3b Mon Sep 17 00:00:00 2001 From: ci_bot Date: Sat, 12 Oct 2024 17:47:50 +0800 Subject: [PATCH 25/39] =?UTF-8?q?feat:=20=E9=85=8D=E7=BD=AExhj=20releae=20?= =?UTF-8?q?profile=E8=AF=81=E4=B9=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/Runner.xcodeproj/project.pbxproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index b49dc272..3dd035fb 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -637,7 +637,7 @@ IPHONEOS_DEPLOYMENT_TARGET = 12.0; PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock; PRODUCT_NAME = Runner; - "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovisioning; + "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovision; SUPPORTED_PLATFORMS = "iphoneos iphonesimulator"; SUPPORTS_MACCATALYST = NO; SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO; From 3b414d3f66dc514d4a7f4133da9c822291e53557 Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Mon, 14 Oct 2024 22:51:58 +0800 Subject: [PATCH 26/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E6=A0=B9=E6=8D=AEcommitlog=E7=94=9F=E6=88=90=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=8F=B7=E4=BB=A5=E5=8F=8Arealse=20changelog=E9=87=87?= =?UTF-8?q?=E9=9B=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 25 ++++++++++++-- release_description_generator.sh | 56 ++++++++++++++++++++++++++++++++ tag_generator.sh | 47 +++++++++++++++++++++++++++ 3 files changed, 125 insertions(+), 3 deletions(-) create mode 100755 release_description_generator.sh create mode 100755 tag_generator.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a719ca9d..0c62985a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -19,6 +19,12 @@ variables: - if: $CI_COMMIT_BRANCH =~ /feat_[a-zA-Z]+/ - if: $CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$/ +.tag_rule: + tags: + - macos + - flutter + rules: + - if: $CI_COMMIT_BRANCH == "master" .print_env: stage: test @@ -51,6 +57,16 @@ test_lint_check: - macos - flutter +git_tag: + stage: generate_tag + extends: .tag_rule + before_script: + - project_url=$(echo $CI_PROJECT_URL | sed 's/http:\/\///') + - echo "project_url:$project_url" + - git remote set-url origin http://gitlab-ci-token:${GITLAB_ACCESS_TOKEN}@$project_url.git + script: + - bash tag_generator.sh + build_android: stage: package extends: .setup_fastlane_android @@ -83,6 +99,9 @@ create-release: - if: $CI_COMMIT_TAG before_script: - echo "start create release" + - bash release_description_generator.sh + - export RELEASE_DESCRIPTION="$(cat changelog.md)" + - echo "${RELEASE_DESCRIPTION}" script: - export StarLock_VERSION=${CI_COMMIT_TAG#*-} - echo "Uploading StarLock-${StarLock_VERSION} packages to @@ -94,14 +113,14 @@ create-release: - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-sky-release-${CI_COMMIT_TAG}.apk "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.apk"' - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-apk/starlock-sky-release-${CI_COMMIT_TAG}.aab - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.aab"' + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.aab"' - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/starlock-xhj-release-${CI_COMMIT_TAG}.ipa "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-xhj-release-${CI_COMMIT_TAG}.ipa"' - 'curl -i --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file build/app/outputs/flutter-ipa/starlock-sky-release-${CI_COMMIT_TAG}.ipa - "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.ipa"' + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/StarLock/${StarLock_VERSION}/starlock-sky-release-${CI_COMMIT_TAG}.ipa"' release: name: '$CI_COMMIT_TAG' - description: 'Created Release By GitLab CI/CD' + description: '$(cat changelog.md)' tag_name: '$CI_COMMIT_TAG' ref: '$CI_COMMIT_TAG' assets: diff --git a/release_description_generator.sh b/release_description_generator.sh new file mode 100755 index 00000000..02015333 --- /dev/null +++ b/release_description_generator.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +# 读取环境变量 +URL=$CI_API_V4_URL +TOKEN=$GITLAB_ACCESS_TOKEN +PROJECT_ID=$CI_PROJECT_ID + +echo "PRIVATE-TOKEN: $TOKEN $URL/projects/$PROJECT_ID/repository/tags" +tags_json=$(curl -H "Content-Type: application/json" -H "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/tags") +echo "tags_json:$tags_json\n" +tags=$(echo "$tags_json" | jq -r '.[].name') +tags_length=$(echo "$tags_json" | jq -r 'length') +if [ "$tags_length" -lt 2 ]; then + newest_tag="master" + second_newest_tag=$(echo "$tags" | head -n 1) +else + newest_tag=$(echo "$tags" | head -n 1) + second_newest_tag=$(echo "$tags" | head -n 2 | tail -n 1) +fi +echo "newest_tag:$newest_tag-second_newest_tag:$second_newest_tag\n" +# 比较两个tag之间的commits +compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=$second_newest_tag&to=$newest_tag") +#echo "compare_json:$compare_json\n" +feat_log="" +fix_log="" +other_log="" +while IFS= read -r commit_json; do + # 使用 jq 解析每一行的 JSON 对象 + commit_id=$(echo "$commit_json" | jq -r '.id') + commit_message=$(echo "$commit_json" | jq -r '.message') + if [[ "$commit_message" =~ ("feat:"*) ]]; then + feat_log+="* ${commit_message#feat:}\n" + elif [[ "$commit_message" =~ ("fix:"*) ]]; then + fix_log+="* ${commit_message#fix:}\n" + elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]]; then + other_log+="* ${commit_message#("Merge" | "Revert")}\n" + fi +done < <(echo "$compare_json" | jq -c '.commits[] | {id: .id, message: .message}') + +echo -e "feat_log:$feat_log,fix_log:$fix_log,other_log:$other_log" +# 如果没有feat或fix的commits,则设置默认日志 +if [[ -z "$feat_log" ]]; then + feat_log="- No 'feat' commits since last tagged commit." +fi +if [[ -z "$fix_log" ]]; then + fix_log="- No 'fix' commits since last tagged commit." +fi + +# 生成changelog文本 +changelog="# Features\n$feat_log\n# Fixes\n$fix_log\n# Others\n$other_log" + +# 打印结果(或可以重定向到文件等) +echo "$changelog" + +# (可选)将结果保存到文件中 +echo -e "$changelog" > changelog.md \ No newline at end of file diff --git a/tag_generator.sh b/tag_generator.sh new file mode 100755 index 00000000..5bfe5c93 --- /dev/null +++ b/tag_generator.sh @@ -0,0 +1,47 @@ +#!/bin/bash + +# 读取环境变量 +URL=$CI_API_V4_URL +TOKEN=$GITLAB_ACCESS_TOKEN +PROJECT_ID=$CI_PROJECT_ID +next_tag="" +echo "PRIVATE-TOKEN: $TOKEN $URL/projects/$PROJECT_ID/repository/tags" +tags_json=$(curl -H "Content-Type: application/json" -H "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/tags") +#echo "tags_json:$tags_json\n" +tags=$(echo "$tags_json" | jq -r '.[].name') +tags_length=$(echo "$tags_json" | jq -r 'length') +if [ "$tags_length" -lt 1 ]; then + next_tag="v1.0.0" +else + newest_tag=$(echo "$tags" | head -n 1) + IFS='.' read -r major minor patch <<< "$newest_tag" + major="${major#v}" + echo "newest_tag:$newest_tag-second_newest_tag:$second_newest_tag\n" + # 比较两个tag之间的commits + compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=$newest_tag&to=master") + echo "compare_json:$compare_json\n" + while IFS= read -r commit_json; do + # 使用 jq 解析每一行的 JSON 对象 + commit_id=$(echo "$commit_json" | jq -r '.id') + commit_message=$(echo "$commit_json" | jq -r '.message') + echo "----$commit_message" + if [[ "$commit_message" =~ ("feat:"*) ]]; then + ((minor++)) + patch=0 + break + elif [[ "$commit_message" =~ ("fix:"*) ]]; then + ((patch++)) + elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]]; then + ((patch++)) + fi + done < <(echo "$compare_json" | jq -c '.commits[] | {id: .id, message: .message}') + next_tag="v$major.$minor.$patch" + if [ "$next_tag" == "$newest_tag" ]; then + echo "no change from master,skip to generate tag" + exit 0 + fi +fi +echo "New version: $next_tag" +git config user.name +git tag $next_tag +git push -u origin $next_tag \ No newline at end of file From 70619b94be3ed4821278e3d7b5e72241dd1c6e65 Mon Sep 17 00:00:00 2001 From: liuyanfeng Date: Mon, 14 Oct 2024 23:03:26 +0800 Subject: [PATCH 27/39] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E6=A0=B9=E6=8D=AEcommitlog=E7=94=9F=E6=88=90=E7=89=88?= =?UTF-8?q?=E6=9C=AC=E5=8F=B7=E4=BB=A5=E5=8F=8Arealse=20changelog=E9=87=87?= =?UTF-8?q?=E9=9B=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0c62985a..e99124b5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,7 @@ stages: - test - - package + - generate_tag + - build-artifacts - release-artifacts - notification @@ -68,7 +69,7 @@ git_tag: - bash tag_generator.sh build_android: - stage: package + stage: build-artifacts extends: .setup_fastlane_android script: bash android/build.sh artifacts: @@ -76,7 +77,7 @@ build_android: - build/app/outputs/flutter-apk/ build_ios: - stage: package + stage: build-artifacts extends: .setup_fastlane_ios script: - bash ios/build.sh From 44bb803754f5dae36e94ac3c635faa1087886de6 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Sat, 19 Oct 2024 13:31:43 +0800 Subject: [PATCH 28/39] =?UTF-8?q?feat:=20dev,pre=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E6=89=93=E5=8C=85=E9=87=87=E7=94=A8=E6=9C=AA=E6=9D=A5=E7=9C=9F?= =?UTF-8?q?=E5=AE=9E=E7=89=88=E6=9C=AC=E5=8F=B7.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 32 +++++++++++++++++++++++++++----- android/fastlane/Fastfile | 4 +++- ios/fastlane/Fastfile | 4 +++- tag_generator.sh | 28 +++++++++++++++++++++------- 4 files changed, 54 insertions(+), 14 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e99124b5..6f855b7a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,6 @@ stages: - test - - generate_tag + - generate_tag_or_version - build-artifacts - release-artifacts - notification @@ -20,13 +20,22 @@ variables: - if: $CI_COMMIT_BRANCH =~ /feat_[a-zA-Z]+/ - if: $CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$/ -.tag_rule: +.generate_tag_rule: tags: - macos - flutter rules: - if: $CI_COMMIT_BRANCH == "master" +.generate_next_version_rule: + tags: + - macos + - flutter + rules: + - if: $CI_COMMIT_BRANCH == "develop" + - if: $CI_COMMIT_BRANCH == "release" + - if: $CI_COMMIT_BRANCH =~ /feat_[a-zA-Z]+/ + .print_env: stage: test extends: .build_rule @@ -39,6 +48,9 @@ variables: .setup_fastlane_android: extends: .build_rule before_script: + - ls -li + - export NEXT_VERSION="$(cat app_new.version)" + - export NEXT_VERSION="$(cat app_new.version)" - flutter pub get - bundle install --gemfile android/Gemfile --quiet @@ -46,6 +58,7 @@ variables: .setup_fastlane_ios: extends: .build_rule before_script: + - ls -li - flutter pub get - bundle install --gemfile ios/Gemfile --quiet @@ -58,9 +71,9 @@ test_lint_check: - macos - flutter -git_tag: - stage: generate_tag - extends: .tag_rule +generate_git_tag: + stage: generate_tag_or_version + extends: .generate_tag_rule before_script: - project_url=$(echo $CI_PROJECT_URL | sed 's/http:\/\///') - echo "project_url:$project_url" @@ -68,6 +81,15 @@ git_tag: script: - bash tag_generator.sh +generate_next_version: + stage: generate_tag_or_version + extends: .generate_next_version_rule + script: + - bash tag_generator.sh generate_version + cache: + paths: + - app_new.version + build_android: stage: build-artifacts extends: .setup_fastlane_android diff --git a/android/fastlane/Fastfile b/android/fastlane/Fastfile index 7c43a799..3930650f 100644 --- a/android/fastlane/Fastfile +++ b/android/fastlane/Fastfile @@ -18,10 +18,12 @@ default_platform(:android) $env_key_project_root = 'ENV_BUILD_WORKSPACE' $env_current_branch = 'ENV_BUILD_BRANCH' $env_current_tag = 'ENV_BUILD_TAG' +$env_next_version = 'NEXT_VERSION' $path_dir_build = File.join(ENV[$env_key_project_root],'') $current_branch = ENV[$env_current_branch] $current_tag = ENV[$env_current_tag] +$next_version = ENV[$env_next_version] $path_apk_output_dir = File.join($path_dir_build, 'build/app/outputs/flutter-apk') $path_bundle_output_dir = File.join($path_dir_build, 'build/app/outputs/bundle') @@ -60,7 +62,7 @@ platform :android do print_log "build #{flavor} on #{env}" build_number = Time.now.strftime("%Y%m%d%H") print_log "BuildNo #{build_number}" - build_version = '1.0.0' + build_version = $next_version print_log "build_version #{build_version}" commit_hash = last_git_commit short_hash = commit_hash[:abbreviated_commit_hash] diff --git a/ios/fastlane/Fastfile b/ios/fastlane/Fastfile index ce31fa5f..404c6f3b 100644 --- a/ios/fastlane/Fastfile +++ b/ios/fastlane/Fastfile @@ -47,10 +47,12 @@ $env_current_tag = 'ENV_BUILD_TAG' $env_key_fastlane_apple_auth_key = 'APPLE_AUTH_CONTENT' $env_key_fastlane_apple_auth_issuer_key = 'APPLE_AUTH_ISSUER_ID' $env_key_fastlane_apple_auth_id_key = 'APPLE_AUTH_KEY_ID' +$env_next_version = 'NEXT_VERSION' $path_dir_build = File.join(ENV[$env_key_project_root], '') $current_branch = ENV[$env_current_branch] $current_tag = ENV[$env_current_tag] +$next_version = ENV[$env_next_version] $filename_ipa_default = 'app-starlock.ipa' $filename_beta_ipa_copy = 'app-starlock-'+$current_branch+'.ipa' @@ -77,7 +79,7 @@ platform :ios do print_log "build #{flavor} on #{env}" build_number = Time.now.strftime("%Y%m%d%H") print_log "Build Commits #{build_number}" - build_version = '1.0.0'; # Time.now.strftime("%Y%m%d%H%M%S") + build_version = $next_version # Time.now.strftime("%Y%m%d%H%M%S") print_log "build_version #{build_version}" commit_hash = last_git_commit short_hash = commit_hash[:abbreviated_commit_hash] diff --git a/tag_generator.sh b/tag_generator.sh index 5bfe5c93..61e7fbd6 100755 --- a/tag_generator.sh +++ b/tag_generator.sh @@ -5,6 +5,7 @@ URL=$CI_API_V4_URL TOKEN=$GITLAB_ACCESS_TOKEN PROJECT_ID=$CI_PROJECT_ID next_tag="" +newest_tag="" echo "PRIVATE-TOKEN: $TOKEN $URL/projects/$PROJECT_ID/repository/tags" tags_json=$(curl -H "Content-Type: application/json" -H "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/tags") #echo "tags_json:$tags_json\n" @@ -16,9 +17,14 @@ else newest_tag=$(echo "$tags" | head -n 1) IFS='.' read -r major minor patch <<< "$newest_tag" major="${major#v}" - echo "newest_tag:$newest_tag-second_newest_tag:$second_newest_tag\n" - # 比较两个tag之间的commits - compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=$newest_tag&to=master") + compare_json="" + if [[ "$1" == "generate_tag" ]];then + echo "generate_tag:$newest_tag-to-master\n" + compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=$newest_tag&to=master") + elif [[ "$1" == "generate_version" ]]; then + echo "generate_version:master-to-$CI_COMMIT_BRANCH\n" + compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=master&to=$CI_COMMIT_BRANCH") + fi echo "compare_json:$compare_json\n" while IFS= read -r commit_json; do # 使用 jq 解析每一行的 JSON 对象 @@ -36,12 +42,20 @@ else fi done < <(echo "$compare_json" | jq -c '.commits[] | {id: .id, message: .message}') next_tag="v$major.$minor.$patch" +fi +echo "New Tag:$newest_tag;New version: $next_tag;command: $1" +if [[ "$1" == "generate_tag" ]];then if [ "$next_tag" == "$newest_tag" ]; then echo "no change from master,skip to generate tag" exit 0 fi + git config user.name + git tag $next_tag + git push -u origin $next_tag + echo "generate tag: $next_tag" +elif [[ "$1" == "generate_version" ]]; then + export NEXT_VERSION="$next_tag" + echo "generate version: $NEXT_VERSION" fi -echo "New version: $next_tag" -git config user.name -git tag $next_tag -git push -u origin $next_tag \ No newline at end of file +echo "$next_tag" > app_new.version + From 559b26ab6fe4645f3f7233f96d6868d2e5bd677a Mon Sep 17 00:00:00 2001 From: Liuyf Date: Sat, 19 Oct 2024 13:34:13 +0800 Subject: [PATCH 29/39] =?UTF-8?q?feat:=20dev,pre=E7=8E=AF=E5=A2=83?= =?UTF-8?q?=E6=89=93=E5=8C=85=E9=87=87=E7=94=A8=E6=9C=AA=E6=9D=A5=E7=9C=9F?= =?UTF-8?q?=E5=AE=9E=E7=89=88=E6=9C=AC=E5=8F=B7.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6f855b7a..ade38dc2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -53,7 +53,9 @@ variables: - export NEXT_VERSION="$(cat app_new.version)" - flutter pub get - bundle install --gemfile android/Gemfile --quiet - + cache: + paths: + - app_new.version .setup_fastlane_ios: extends: .build_rule @@ -61,6 +63,9 @@ variables: - ls -li - flutter pub get - bundle install --gemfile ios/Gemfile --quiet + cache: + paths: + - app_new.version test_lint_check: stage: test From f51311ee207bcada841fe87fd17cfee0a20139fb Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 09:30:20 +0800 Subject: [PATCH 30/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 ++ android/build.sh | 13 +++++++++---- ios/build.sh | 13 +++++++++---- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ade38dc2..e8b7601b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -18,6 +18,7 @@ variables: - if: $CI_COMMIT_BRANCH == "develop" - if: $CI_COMMIT_BRANCH == "release" - if: $CI_COMMIT_BRANCH =~ /feat_[a-zA-Z]+/ + - if: $CI_COMMIT_BRANCH == "canary_release" - if: $CI_COMMIT_TAG =~ /^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$/ .generate_tag_rule: @@ -34,6 +35,7 @@ variables: rules: - if: $CI_COMMIT_BRANCH == "develop" - if: $CI_COMMIT_BRANCH == "release" + - if: $CI_COMMIT_BRANCH == "canary_release" - if: $CI_COMMIT_BRANCH =~ /feat_[a-zA-Z]+/ .print_env: diff --git a/android/build.sh b/android/build.sh index 6d2af557..985f6e5e 100755 --- a/android/build.sh +++ b/android/build.sh @@ -9,16 +9,21 @@ echo "GITLAB_WORKSPACE: ${CI_PROJECT_DIR}" cd ${CI_PROJECT_DIR}/android echo "ENV_BUILD_TAG:${ENV_BUILD_TAG},ENV_BUILD_BRANCH:${ENV_BUILD_BRANCH}" regex='^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$' -if [[ $ENV_BUILD_TAG =~ $regex ]]; then - echo "===Building xhj release===" +if [[ "${ENV_BUILD_BRANCH}" == "canary_release"]]; then + echo "===build canary_release: ${NEXT_VERSION}" + export ENV_BUILD_TAG=${NEXT_VERSION} + bundle exec fastlane release flavor:xhj --verbose + bundle exec fastlane release flavor:sky --verbose +elif [[ $ENV_BUILD_TAG =~ $regex ]]; then + echo "===build release===$ENV_BUILD_TAG" bundle exec fastlane release flavor:xhj --verbose bundle exec fastlane release flavor:sky --verbose elif [[ "${ENV_BUILD_BRANCH}" == "develop" ]]; then - echo "===Building xhj dev===" + echo "===build dev===${NEXT_VERSION}" bundle exec fastlane beta flavor:xhj env:dev --verbose bundle exec fastlane beta flavor:sky env:dev --verbose elif [[ "${ENV_BUILD_BRANCH}" == "release" ]] || [[ "${ENV_BUILD_BRANCH}" == "feat_devops" ]] ; then - echo "===Building xhj pre===" + echo "===build pre===${NEXT_VERSION}" bundle exec fastlane beta flavor:xhj env:pre --verbose bundle exec fastlane beta flavor:sky env:pre --verbose fi diff --git a/ios/build.sh b/ios/build.sh index 43d1975e..23b90e62 100755 --- a/ios/build.sh +++ b/ios/build.sh @@ -10,16 +10,21 @@ cd ${CI_PROJECT_DIR}/ios bundle exec pod install echo "ENV_BUILD_TAG:${ENV_BUILD_TAG},ENV_BUILD_BRANCH:${ENV_BUILD_BRANCH}" regex='^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$' -if [[ $ENV_BUILD_TAG =~ $regex ]]; then - echo "===Building xhj release===" +if [[ "${ENV_BUILD_BRANCH}" == "canary_release"]]; then + echo "===build canary_release: ${NEXT_VERSION}" + export ENV_BUILD_TAG=${NEXT_VERSION} + bundle exec fastlane release flavor:xhj --verbose + bundle exec fastlane release flavor:sky --verbose +elif [[ $ENV_BUILD_TAG =~ $regex ]]; then + echo "===build release===$ENV_BUILD_TAG" bundle exec fastlane release flavor:xhj --verbose bundle exec fastlane release flavor:sky --verbose elif [[ "${ENV_BUILD_BRANCH}" == "develop" ]]; then - echo "===Building xhj dev===" + echo "===build dev===${NEXT_VERSION}" bundle exec fastlane beta flavor:xhj env:dev --verbose bundle exec fastlane beta flavor:sky env:dev --verbose elif [[ "${ENV_BUILD_BRANCH}" == "release" ]] || [[ "${ENV_BUILD_BRANCH}" == "feat_devops" ]] ; then - echo "===Building xhj pre===" + echo "===build pre===${NEXT_VERSION}" bundle exec fastlane beta flavor:xhj env:pre --verbose bundle exec fastlane beta flavor:sky env:pre --verbose fi From 42c6ebe13cd9808333179a9a7878122c13ba74dc Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 09:36:06 +0800 Subject: [PATCH 31/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- android/build.sh | 2 +- ios/build.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/android/build.sh b/android/build.sh index 985f6e5e..8e672739 100755 --- a/android/build.sh +++ b/android/build.sh @@ -9,7 +9,7 @@ echo "GITLAB_WORKSPACE: ${CI_PROJECT_DIR}" cd ${CI_PROJECT_DIR}/android echo "ENV_BUILD_TAG:${ENV_BUILD_TAG},ENV_BUILD_BRANCH:${ENV_BUILD_BRANCH}" regex='^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$' -if [[ "${ENV_BUILD_BRANCH}" == "canary_release"]]; then +if [[ "${ENV_BUILD_BRANCH}" == "canary_release" ]]; then echo "===build canary_release: ${NEXT_VERSION}" export ENV_BUILD_TAG=${NEXT_VERSION} bundle exec fastlane release flavor:xhj --verbose diff --git a/ios/build.sh b/ios/build.sh index 23b90e62..d2a127a0 100755 --- a/ios/build.sh +++ b/ios/build.sh @@ -10,7 +10,7 @@ cd ${CI_PROJECT_DIR}/ios bundle exec pod install echo "ENV_BUILD_TAG:${ENV_BUILD_TAG},ENV_BUILD_BRANCH:${ENV_BUILD_BRANCH}" regex='^v[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+\.[0-9]+)?$' -if [[ "${ENV_BUILD_BRANCH}" == "canary_release"]]; then +if [[ "${ENV_BUILD_BRANCH}" == "canary_release" ]]; then echo "===build canary_release: ${NEXT_VERSION}" export ENV_BUILD_TAG=${NEXT_VERSION} bundle exec fastlane release flavor:xhj --verbose From 89e2c50a845813851c1e1f4bcba4ca4fa86d9db0 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 09:43:45 +0800 Subject: [PATCH 32/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e8b7601b..55a6eafb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -52,7 +52,6 @@ variables: before_script: - ls -li - export NEXT_VERSION="$(cat app_new.version)" - - export NEXT_VERSION="$(cat app_new.version)" - flutter pub get - bundle install --gemfile android/Gemfile --quiet cache: @@ -63,6 +62,7 @@ variables: extends: .build_rule before_script: - ls -li + - export NEXT_VERSION="$(cat app_new.version)" - flutter pub get - bundle install --gemfile ios/Gemfile --quiet cache: From 3f979e57a511bb4051cbcbc8c761b791f8cc2db2 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 09:53:12 +0800 Subject: [PATCH 33/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tag_generator.sh | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/tag_generator.sh b/tag_generator.sh index 61e7fbd6..9fd5997a 100755 --- a/tag_generator.sh +++ b/tag_generator.sh @@ -26,6 +26,7 @@ else compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=master&to=$CI_COMMIT_BRANCH") fi echo "compare_json:$compare_json\n" + new_patch = patch while IFS= read -r commit_json; do # 使用 jq 解析每一行的 JSON 对象 commit_id=$(echo "$commit_json" | jq -r '.id') @@ -33,15 +34,15 @@ else echo "----$commit_message" if [[ "$commit_message" =~ ("feat:"*) ]]; then ((minor++)) - patch=0 + new_patch=0 break - elif [[ "$commit_message" =~ ("fix:"*) ]]; then - ((patch++)) - elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]]; then - ((patch++)) + elif [[ "$commit_message" =~ ("fix:"*) ]] && [[ new_patch == path ]]; then + ((new_patch++)) + elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]] && [[ new_patch == path ]]; then + ((new_patch++)) fi done < <(echo "$compare_json" | jq -c '.commits[] | {id: .id, message: .message}') - next_tag="v$major.$minor.$patch" + next_tag="v$major.$minor.$new_patch" fi echo "New Tag:$newest_tag;New version: $next_tag;command: $1" if [[ "$1" == "generate_tag" ]];then From cade03ea5ae817835e4d527c4a33ee92e6b41ba3 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 09:54:40 +0800 Subject: [PATCH 34/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tag_generator.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tag_generator.sh b/tag_generator.sh index 9fd5997a..2bde885e 100755 --- a/tag_generator.sh +++ b/tag_generator.sh @@ -26,7 +26,7 @@ else compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=master&to=$CI_COMMIT_BRANCH") fi echo "compare_json:$compare_json\n" - new_patch = patch + new_patch=patch while IFS= read -r commit_json; do # 使用 jq 解析每一行的 JSON 对象 commit_id=$(echo "$commit_json" | jq -r '.id') From 2fde801e2c87045b6e42f842cc97c8b7fed68ad6 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 09:57:17 +0800 Subject: [PATCH 35/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tag_generator.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tag_generator.sh b/tag_generator.sh index 2bde885e..91e37105 100755 --- a/tag_generator.sh +++ b/tag_generator.sh @@ -26,7 +26,7 @@ else compare_json=$(curl -s --header "PRIVATE-TOKEN: $TOKEN" "$URL/projects/$PROJECT_ID/repository/compare?from=master&to=$CI_COMMIT_BRANCH") fi echo "compare_json:$compare_json\n" - new_patch=patch + new_patch=$patch while IFS= read -r commit_json; do # 使用 jq 解析每一行的 JSON 对象 commit_id=$(echo "$commit_json" | jq -r '.id') @@ -36,9 +36,9 @@ else ((minor++)) new_patch=0 break - elif [[ "$commit_message" =~ ("fix:"*) ]] && [[ new_patch == path ]]; then + elif [[ "$commit_message" =~ ("fix:"*) ]] && [[ new_patch == patch ]]; then ((new_patch++)) - elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]] && [[ new_patch == path ]]; then + elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]] && [[ new_patch == patch ]]; then ((new_patch++)) fi done < <(echo "$compare_json" | jq -c '.commits[] | {id: .id, message: .message}') From 92ae64e7a9c1316bdcfc9bcb1a232c91d11adef0 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 09:58:30 +0800 Subject: [PATCH 36/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tag_generator.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tag_generator.sh b/tag_generator.sh index 91e37105..02ddc5d3 100755 --- a/tag_generator.sh +++ b/tag_generator.sh @@ -36,9 +36,9 @@ else ((minor++)) new_patch=0 break - elif [[ "$commit_message" =~ ("fix:"*) ]] && [[ new_patch == patch ]]; then + elif [[ "$commit_message" =~ ("fix:"*) ]] && [[ $new_patch == $patch ]]; then ((new_patch++)) - elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]] && [[ new_patch == patch ]]; then + elif [[ ! "$commit_message" =~ ("Merge"* | "Revert"*) ]] && [[ $new_patch == $patch ]]; then ((new_patch++)) fi done < <(echo "$compare_json" | jq -c '.commits[] | {id: .id, message: .message}') From d2e365a813c48f2e2d7cb9c6de37bc1b6510f014 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 10:07:37 +0800 Subject: [PATCH 37/39] =?UTF-8?q?other=EF=BC=9A=20=E6=96=B0=E5=A2=9Ecanary?= =?UTF-8?q?=E7=89=88=E6=9C=AC=E6=89=93=E5=8C=85=E9=80=BB=E8=BE=91.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 55a6eafb..7fc3fcae 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -86,7 +86,7 @@ generate_git_tag: - echo "project_url:$project_url" - git remote set-url origin http://gitlab-ci-token:${GITLAB_ACCESS_TOKEN}@$project_url.git script: - - bash tag_generator.sh + - bash tag_generator.sh generate_tag generate_next_version: stage: generate_tag_or_version From 17ecae6b0848adab579adeea8b3b8b6a40db03a4 Mon Sep 17 00:00:00 2001 From: Liuyf Date: Tue, 22 Oct 2024 10:55:19 +0800 Subject: [PATCH 38/39] =?UTF-8?q?other:=20=E5=BF=BD=E7=95=A5.DS=5FStore?= =?UTF-8?q?=E4=B8=B4=E6=97=B6=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ios/.gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/ios/.gitignore b/ios/.gitignore index 7a7f9873..3f13ee83 100755 --- a/ios/.gitignore +++ b/ios/.gitignore @@ -7,6 +7,7 @@ **/*sync/ .sconsign.dblite .tags* +.DS_Store **/.vagrant/ **/DerivedData/ Icon? From eed1bb1aef7431dc116ae1ef88e9f81bf9a51850 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E7=87=95=E5=B3=B0?= Date: Tue, 22 Oct 2024 02:55:37 +0000 Subject: [PATCH 39/39] Delete .DS_Store --- ios/.DS_Store | Bin 8196 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 ios/.DS_Store diff --git a/ios/.DS_Store b/ios/.DS_Store deleted file mode 100755 index 0b9174f8ea3c47156070ef923d4c9e375972c0c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8196 zcmeHMy>1gh5S|SdwuFcxB%)A6x{?A#GEZ=c3=&ik7JcF$oS*aE;l%uO*QenLcmkx9 zlyp1*JyKpHG~}DvRc`mrQJfSp60_3Ice$O}nf><9b0H$LH665x)`+Nu%DD0XVn*S1 zuC=n{-aG~x*b^PokS4E^tlvv&+WJBnPzIC%Wk4BF2L1&GaA$LAU2*T*R+Y+tGVotA zz~@7R${0H=EXvUVAt?Z`f!9*-j66VWB8RcV!lIa>Pn$g$XKGxEVXQgYBUT5-4hxIc zoQyRm<2)Oep&0QFyGYc@#1>U51Ij?10nXi<^pX;qB767p_pFB&-b|aQ8-JzXiM6*W zqXE66eOL``wtuO8TG4Je?W0i7oK*Chl+y%X4>qV@enSX){p!WA8fqi%E}|Jx3Yh}m zppW+$(U6YlxZ-&op8dW`&pEZ}c}1J!^tJD!?)Y9{@5$4j zJo|Il4Q^$Z@A)x);Yc6N;N>Hjnb0BTGN)Z$A0aogLj5_KtB-&mdV4UhZ=a(-4}Uy+ z{X{sL%jY;NdAg}>z!eEsO)zpupJ(qGS&cp`tD*Ky_Kd7Pzpv8sj6K8iVV29?8uPqj z%@-DV_4D6){|gZ+lz{~?aL@W(lGHo1VV0eprqr#%YPW+If5$N#10FKc!Q!p1cU|^%D|m6Z~;t;CZYfU