Skip to content

Commit

Permalink
Merge branch 'feature/ALTAPPS-969/Shared-Show-notification-onboarding…
Browse files Browse the repository at this point in the history
…-screen-on-user-login' into feature/ALTAPPS-971/ios_notifications_onboarding_screen
  • Loading branch information
ivan-magda authored Sep 20, 2023
2 parents 78f98a9 + 4eb8880 commit 916d901
Show file tree
Hide file tree
Showing 42 changed files with 225 additions and 189 deletions.
2 changes: 1 addition & 1 deletion androidHyperskillApp/Gemfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
source "https://rubygems.org"
ruby "3.1.0"

gem "fastlane", "2.214.0"
gem "fastlane", "2.215.1"

eval_gemfile("fastlane/Pluginfile")
25 changes: 13 additions & 12 deletions androidHyperskillApp/Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@ GEM
artifactory (3.0.15)
atomos (0.1.3)
aws-eventstream (1.2.0)
aws-partitions (1.793.0)
aws-sdk-core (3.180.0)
aws-partitions (1.824.0)
aws-sdk-core (3.181.1)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.651.0)
aws-sigv4 (~> 1.5)
jmespath (~> 1, >= 1.6.1)
aws-sdk-kms (1.71.0)
aws-sdk-core (~> 3, >= 3.177.0)
aws-sigv4 (~> 1.1)
aws-sdk-s3 (1.132.0)
aws-sdk-core (~> 3, >= 3.179.0)
aws-sdk-s3 (1.134.0)
aws-sdk-core (~> 3, >= 3.181.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.6)
aws-sigv4 (1.6.0)
Expand All @@ -36,7 +36,7 @@ GEM
unf (>= 0.0.5, < 1.0.0)
dotenv (2.8.1)
emoji_regex (3.2.3)
excon (0.100.0)
excon (0.103.0)
faraday (1.10.3)
faraday-em_http (~> 1.0)
faraday-em_synchrony (~> 1.0)
Expand Down Expand Up @@ -66,7 +66,7 @@ GEM
faraday_middleware (1.2.0)
faraday (~> 1.0)
fastimage (2.2.7)
fastlane (2.214.0)
fastlane (2.215.1)
CFPropertyList (>= 2.3, < 4.0.0)
addressable (>= 2.8, < 3.0.0)
artifactory (~> 3.0)
Expand All @@ -87,6 +87,7 @@ GEM
google-apis-playcustomapp_v1 (~> 0.1)
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)
Expand All @@ -98,7 +99,7 @@ GEM
security (= 0.1.3)
simctl (~> 1.6.3)
terminal-notifier (>= 2.0.0, < 3.0.0)
terminal-table (>= 1.4.5, < 2.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)
Expand All @@ -108,7 +109,7 @@ GEM
fastlane-plugin-firebase_app_distribution (0.7.3)
google-apis-firebaseappdistribution_v1 (~> 0.3.0)
gh_inspector (1.1.3)
google-apis-androidpublisher_v3 (0.46.0)
google-apis-androidpublisher_v3 (0.49.0)
google-apis-core (>= 0.11.0, < 2.a)
google-apis-core (0.11.1)
addressable (~> 2.5, >= 2.5.1)
Expand Down Expand Up @@ -184,8 +185,8 @@ GEM
CFPropertyList
naturally
terminal-notifier (2.0.0)
terminal-table (1.8.0)
unicode-display_width (~> 1.1, >= 1.1.1)
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.1)
Expand All @@ -195,7 +196,7 @@ GEM
unf (0.1.4)
unf_ext
unf_ext (0.0.8.2)
unicode-display_width (1.8.0)
unicode-display_width (2.4.2)
webrick (1.8.1)
word_wrap (1.0.0)
xcodeproj (1.22.0)
Expand All @@ -216,7 +217,7 @@ PLATFORMS
x86_64-linux

DEPENDENCIES
fastlane (= 2.214.0)
fastlane (= 2.215.1)
fastlane-plugin-firebase_app_distribution

RUBY VERSION
Expand Down
4 changes: 3 additions & 1 deletion androidHyperskillApp/fastlane/Fastfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
fastlane_version "2.214.0"
fastlane_version "2.215.1"

default_platform(:android)

Expand Down Expand Up @@ -62,6 +62,8 @@ platform :android do
gradle_path: gradle_path,
)

ENV["SUPPLY_UPLOAD_MAX_RETRIES"] = "5"

upload_to_play_store(
release_status: "completed",
track: track,
Expand Down
4 changes: 2 additions & 2 deletions gradle/app.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
minSdk = '24'
targetSdk = '33'
compileSdk = '33'
versionName = '1.33'
versionCode = '189'
versionName = '1.34'
versionCode = '192'
4 changes: 4 additions & 0 deletions increment_build_number.sh
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,17 @@ CommitAndroidBuildNumber() {

CommitIOSBuildNumber() {
git add iosHyperskillApp/iosHyperskillApp/Info.plist
git add iosHyperskillApp/iosHyperskillAppTests/Info.plist
git add iosHyperskillApp/NotificationServiceExtension/Info.plist
git add iosHyperskillApp/iosHyperskillApp.xcodeproj/project.pbxproj
git commit -m "iOS: Bump build number"
}

CommitAndroidAndIOSBuildNumber() {
git add gradle/app.versions.toml
git add iosHyperskillApp/iosHyperskillApp/Info.plist
git add iosHyperskillApp/iosHyperskillAppTests/Info.plist
git add iosHyperskillApp/NotificationServiceExtension/Info.plist
git add iosHyperskillApp/iosHyperskillApp.xcodeproj/project.pbxproj
git commit -m "Bump build number"
}
Expand Down
8 changes: 8 additions & 0 deletions iosHyperskillApp/NotificationServiceExtension/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,14 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDisplayName</key>
<string>NotificationServiceExtension</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleVersion</key>
<string>191</string>
<key>CFBundleShortVersionString</key>
<string>1.34</string>
<key>NSExtension</key>
<dict>
<key>NSExtensionPointIdentifier</key>
Expand Down
34 changes: 18 additions & 16 deletions iosHyperskillApp/iosHyperskillApp.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@
2C1061AC285C3C4300EBD614 /* StepQuizChoiceViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C1061AB285C3C4300EBD614 /* StepQuizChoiceViewModel.swift */; };
2C106D9928C1CE6E004FA584 /* SendEmailFeedbackController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C106D9828C1CE6E004FA584 /* SendEmailFeedbackController.swift */; };
2C11D5CA2A11311900C59238 /* FeedbackGeneratorPreviewView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C11D5C92A11311900C59238 /* FeedbackGeneratorPreviewView.swift */; };
2C15720A2AB98F9400DD02D3 /* Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = 2C1572092AB98F9400DD02D3 /* Info.plist */; };
2C177EC32837B65500D841DB /* View+Frame.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C177EC22837B65500D841DB /* View+Frame.swift */; };
2C1860FC2923C540007D4EBF /* AppFeatureStateKsExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C1860FB2923C540007D4EBF /* AppFeatureStateKsExtensions.swift */; };
2C1F5869280D063800372A37 /* WebViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C1F5868280D063800372A37 /* WebViewController.swift */; };
Expand Down Expand Up @@ -636,6 +637,7 @@
2C1061AB285C3C4300EBD614 /* StepQuizChoiceViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StepQuizChoiceViewModel.swift; sourceTree = "<group>"; };
2C106D9828C1CE6E004FA584 /* SendEmailFeedbackController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SendEmailFeedbackController.swift; sourceTree = "<group>"; };
2C11D5C92A11311900C59238 /* FeedbackGeneratorPreviewView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackGeneratorPreviewView.swift; sourceTree = "<group>"; };
2C1572092AB98F9400DD02D3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
2C177EC22837B65500D841DB /* View+Frame.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "View+Frame.swift"; sourceTree = "<group>"; };
2C1860FB2923C540007D4EBF /* AppFeatureStateKsExtensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppFeatureStateKsExtensions.swift; sourceTree = "<group>"; };
2C1F5868280D063800372A37 /* WebViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WebViewController.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -2208,6 +2210,7 @@
2C919DEE27EEF5BC0022A2F2 /* iosHyperskillAppTests */ = {
isa = PBXGroup;
children = (
2C1572092AB98F9400DD02D3 /* Info.plist */,
2C1F587F280D305C00372A37 /* CollectionsTests */,
2C1F587C280D2F6600372A37 /* ExtensionsTests */,
2CE7B48C2AB0A06000DCBE4D /* FrameworksTests */,
Expand Down Expand Up @@ -3620,6 +3623,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
2C15720A2AB98F9400DD02D3 /* Info.plist in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -4292,18 +4296,18 @@
BUNDLE_LOADER = "$(TEST_HOST)";
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 187;
CURRENT_PROJECT_VERSION = 191;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 3DWS674B2M;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = iosHyperskillAppTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = org.hyperskill.AppTests;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = NO;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/iosHyperskillApp.app/iosHyperskillApp";
VERSIONING_SYSTEM = "apple-generic";
};
name = Debug;
};
Expand All @@ -4313,17 +4317,17 @@
BUNDLE_LOADER = "$(TEST_HOST)";
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 187;
CURRENT_PROJECT_VERSION = 191;
DEVELOPMENT_TEAM = 3DWS674B2M;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = iosHyperskillAppTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = org.hyperskill.AppTests;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = NO;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/iosHyperskillApp.app/iosHyperskillApp";
VERSIONING_SYSTEM = "apple-generic";
};
name = Release;
};
Expand All @@ -4334,27 +4338,24 @@
CODE_SIGN_ENTITLEMENTS = NotificationServiceExtension/NotificationServiceExtension.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 187;
CURRENT_PROJECT_VERSION = 191;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 3DWS674B2M;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = NotificationServiceExtension/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = NotificationServiceExtension;
INFOPLIST_KEY_NSHumanReadableCopyright = "Copyright © 2023 Stepik Technologies s.r.o. All rights reserved.";
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.32;
PRODUCT_BUNDLE_IDENTIFIER = org.hyperskill.App.NotificationServiceExtension;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
SUPPORTS_MACCATALYST = YES;
SWIFT_EMIT_LOC_STRINGS = YES;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
};
name = Debug;
};
Expand All @@ -4365,26 +4366,23 @@
CODE_SIGN_ENTITLEMENTS = NotificationServiceExtension/NotificationServiceExtension.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 187;
CURRENT_PROJECT_VERSION = 191;
DEVELOPMENT_TEAM = 3DWS674B2M;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = NotificationServiceExtension/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = NotificationServiceExtension;
INFOPLIST_KEY_NSHumanReadableCopyright = "Copyright © 2023 Stepik Technologies s.r.o. All rights reserved.";
IPHONEOS_DEPLOYMENT_TARGET = 14.0;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@executable_path/../../Frameworks",
);
MARKETING_VERSION = 1.32;
PRODUCT_BUNDLE_IDENTIFIER = org.hyperskill.App.NotificationServiceExtension;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
SUPPORTS_MACCATALYST = YES;
SWIFT_EMIT_LOC_STRINGS = YES;
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
};
name = Release;
};
Expand Down Expand Up @@ -4513,6 +4511,7 @@
CODE_SIGN_ENTITLEMENTS = iosHyperskillApp/iosHyperskillApp.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 191;
DEVELOPMENT_ASSET_PATHS = "\"iosHyperskillApp/Preview Content\"";
DEVELOPMENT_TEAM = 3DWS674B2M;
ENABLE_PREVIEWS = YES;
Expand All @@ -4535,6 +4534,7 @@
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
};
name = Debug;
};
Expand All @@ -4547,6 +4547,7 @@
CODE_SIGN_ENTITLEMENTS = iosHyperskillApp/iosHyperskillApp.entitlements;
CODE_SIGN_IDENTITY = "iPhone Developer";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 191;
DEVELOPMENT_ASSET_PATHS = "\"iosHyperskillApp/Preview Content\"";
DEVELOPMENT_TEAM = 3DWS674B2M;
ENABLE_PREVIEWS = YES;
Expand All @@ -4569,6 +4570,7 @@
SWIFT_OBJC_BRIDGING_HEADER = "iosHyperskillApp/iosHyperskillApp-Bridging-Header.h";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
VERSIONING_SYSTEM = "apple-generic";
};
name = Release;
};
Expand Down
4 changes: 2 additions & 2 deletions iosHyperskillApp/iosHyperskillApp/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.33</string>
<string>1.34</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
Expand All @@ -34,7 +34,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>187</string>
<string>191</string>
<key>FirebaseAppDelegateProxyEnabled</key>
<false/>
<key>FirebaseMessagingAutoInitEnabled</key>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,7 @@ extension NotificationsService {
case pushNotificationData
case image
case fcmOptions = "fcm_options"
case notificationID = "notification_id"
}
}

Expand Down Expand Up @@ -177,6 +178,9 @@ extension NotificationsService {
}

// Set necessary keys to aps dict (see shared PushNotificationData.kt)
if let notificationID = userInfo[PayloadKey.notificationID.rawValue] {
apsDict[PayloadKey.notificationID.rawValue] = notificationID
}
if let badgeID = userInfo[PayloadKey.badge.rawValue] {
apsDict[PayloadKey.badge.rawValue] = badgeID
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,7 @@ final class AppViewModel: FeatureViewModel<AppFeatureState, AppFeatureMessage, A

extension AppViewModel: AuthOutputProtocol {
func handleUserAuthorized(profile: Profile) {
#warning("ALTAPPS-971: Provide isNotificationPermissionGranted")
onNewMessage(
AppFeatureMessageUserAuthorized(
profile: profile,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ extension AppViewController: AppViewControllerProtocol {
navigationController.navigationBar.prefersLargeTitles = true
return navigationController
case .notificationOnBoardingScreen:
// TODO: ALTAPPS-971
#warning("ALTAPPS-971: Route to the NotificationOnBoardingScreen")
fatalError("NotificationOnBoardingScreen is not implemented yet!")
}
}()
Expand Down
12 changes: 12 additions & 0 deletions iosHyperskillApp/iosHyperskillAppTests/Info.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundleVersion</key>
<string>191</string>
<key>CFBundleShortVersionString</key>
<string>1.34</string>
</dict>
</plist>
Loading

0 comments on commit 916d901

Please sign in to comment.