Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 9 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,14 @@ Dependencies/
# For more information about the recommended setup visit:
# https://docs.fastlane.tools/best-practices/source-control/#source-control

fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots/**/*.png
fastlane/test_output
**/fastlane/report.xml
**/fastlane/Preview.html
**/fastlane/screenshots/**/*.png
**/fastlane/BuildOutputs

**/fastlane/.env.default

**Gemfile.lock

# Code Injection
# After new code Injection tools there's a generated folder /iOSInjectionProject
Expand All @@ -111,10 +115,9 @@ iOSInjectionProject/
Config.swift
Gemfile.lock
report.xml
Runnect-iOS/fastlane/.env.default

### Runniest project - git ignore setting ###
Runnect-iOS/Runnect-iOS/Info.plist
/Runnect-iOS/Runnect-iOS/Info.plist
Runnect-iOS/Info.plist
Info.plist

Expand Down
18 changes: 12 additions & 6 deletions Runnect-iOS/Runnect-iOS.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -1709,9 +1709,11 @@
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_ENTITLEMENTS = "Runnect-iOS/Runnect-iOSDebug.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1.0.8;
DEVELOPMENT_TEAM = 8Q4H7X3Q58;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 2024.0122.2217;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8Q4H7X3Q58;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "Runnect-iOS/Info.plist";
INFOPLIST_KEY_CFBundleDisplayName = Runnect;
Expand All @@ -1732,6 +1734,7 @@
PRODUCT_BUNDLE_IDENTIFIER = "com.runnect.Runnect-iOS";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match Development com.runnect.Runnect-iOS";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = NO;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
Expand All @@ -1750,9 +1753,11 @@
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
CODE_SIGN_ENTITLEMENTS = "Runnect-iOS/Runnect-iOS.entitlements";
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1.0.8;
DEVELOPMENT_TEAM = 8Q4H7X3Q58;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
CODE_SIGN_STYLE = Manual;
CURRENT_PROJECT_VERSION = 2024.0122.2217;
DEVELOPMENT_TEAM = "";
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = 8Q4H7X3Q58;
GENERATE_INFOPLIST_FILE = NO;
INFOPLIST_FILE = "Runnect-iOS/Info.plist";
INFOPLIST_KEY_CFBundleDisplayName = Runnect;
Expand All @@ -1773,6 +1778,7 @@
PRODUCT_BUNDLE_IDENTIFIER = "com.runnect.Runnect-iOS";
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match Development com.runnect.Runnect-iOS";
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
SUPPORTS_MACCATALYST = NO;
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -392,6 +392,9 @@ extension RNMapView: NMFMapViewCameraDelegate, NMFMapViewTouchDelegate {
self.makeMarker(at: latlng)
}

func mapView(_ mapView: NMFMapView, cameraWillChangeByReason reason: Int, animated: Bool) {
}

Comment on lines +395 to +397
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

요 코드는 뭔가용 ?!

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이 부분이 지도를 움직일 때 사용되는 메서드인데, 하나 구현하면 하나가 안되는 이ㅅ가 있어서 일단 내용은 빼고, 빈 메서드만 추가 해놨어요!

// 지도 이동 멈췄을 때 호출되는 메서드
func mapViewCameraIdle(_ mapView: NMFMapView) {
let latitude = mapView.cameraPosition.target.lat
Expand Down
6 changes: 4 additions & 2 deletions Runnect-iOS/Runnect-iOS/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,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>CFBundleIconName</key>
<string>AppIcon</string>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleDisplayName</key>
Expand All @@ -17,7 +19,7 @@
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0.8</string>
<string>1.0.10</string>
<key>CFBundleURLTypes</key>
<array>
<dict>
Expand All @@ -42,7 +44,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>2023.0712.2207</string>
<string>2024.0122.2217</string>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>kakaokompassauth</string>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,8 @@ extension CourseDiscoveryVC {
@objc private func pushToCourseSelectVC() {
guard UserManager.shared.userType != .visitor else {
self.showToastOnWindow(text: "러넥트에 가입하면 코스를 업로드할 수 있어요.")

analyze(buttonName: GAEvent.Button.clickJoinInCourseDiscovery)
return
}

Expand Down Expand Up @@ -452,10 +454,10 @@ extension CourseDiscoveryVC: ScrapStateDelegate {
}

func didRemoveCourse(publicCourseId: Int) {
// if let index = courseList.firstIndex(where: { $0.id == publicCourseId }) {
// courseList.remove(at: index)
// self.mapCollectionView.reloadData()
// }
// if let index = courseList.firstIndex(where: { $0.id == publicCourseId }) {
// courseList.remove(at: index)
// self.mapCollectionView.reloadData()
// }
// ⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️⭐️
// 원래 해당하는 데이터(index) 만 가지고, 그 데이터 삭제 후 courseList를 받아야하는데, 삭제가 이미되어버려서 if let index 부분이 안들어옴
// 왜??? 이미 데이터는 삭제가 되어서 $0.id 랑 publicCourseId 가 같은게 매치가 될 수 없어!!!
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,12 @@ extension CourseDrawingHomeVC {
// MARK: - @objc Function
extension CourseDrawingHomeVC {
@objc private func pushToDepartureSearchVC() {
guard UserManager.shared.userType != .visitor else {
self.showToastOnWindow(text: "러넥트에 가입하면 코스를 업로드할 수 있어요.")

analyze(buttonName: GAEvent.Button.clickJoinInCourseDrawing)
return
}

analyze(buttonName: GAEvent.Button.clickCourseDrawing)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -262,7 +262,7 @@ extension CourseDrawingVC {
bottomSheetVC.modalPresentationStyle = .overFullScreen
bottomSheetVC.completeButtonTapAction = { [weak self] text in
guard let self = self else { return }
guard handleVisitor() else { return }
guard bottomSheetVC.handleVisitor() else { return } // 사실상 여기까지 못 들어오는게 맞음 (코스 그리기에서 막았다.)
self.courseName = text
self.mapView.capturePathImage()
self.dismiss(animated: false)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,12 +107,16 @@ extension DepartureSearchVC {
selectDirectionView.gesture().sink { [weak self] _ in
guard let self = self else { return }
SelectedInfo.shared.type = .other

analyze(buttonName: GAEvent.Button.clickCurrentLocate)
self.setLocation()
}.store(in: cancelBag)

selectMapView.gesture().sink { [weak self] _ in
guard let self = self else { return }
SelectedInfo.shared.type = .map

analyze(buttonName: GAEvent.Button.clickMapLocate)
self.setLocation()
}.store(in: cancelBag)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -216,6 +216,7 @@ extension CourseStorageVC {

guard UserManager.shared.userType != .visitor else {
self.showSignInRequestEmptyView()
analyze(buttonName: GAEvent.Button.clickJoinInStorage)
return
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -156,6 +156,8 @@ extension ScrapCourseListView: UICollectionViewDelegateFlowLayout {

extension ScrapCourseListView: ListEmptyViewDelegate {
func emptyViewButtonTapped() {
analyze(buttonName: GAEvent.Button.clickScrapCourse)

self.scrapButtonTapped.send()
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -293,6 +293,7 @@ extension MyPageVC {
private func setLayout() {
guard UserManager.shared.userType != .visitor else {
self.showSignInRequestEmptyView()
analyze(buttonName: GAEvent.Button.clickJoinInMyPage)
return
}

Expand Down
8 changes: 4 additions & 4 deletions Runnect-iOS/fastlane/Appfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
app_identifier("com.runnect.Runnect-iOS") # The bundle identifier of your app
app_identifier(ENV["APP_IDENTIFIER"]) # The bundle identifier of your app
apple_id(ENV["APPLE_ID"]) # Your Apple Developer Portal username

itc_team_id("125287287") # App Store Connect Team ID
team_id("8Q4H7X3Q58") # Developer Portal Team ID
itc_team_id(ENV["ITC_TEAM_ID"]) # App Store Connect Team ID
team_id(ENV["TEAM_ID"]) # Developer Portal Team ID

# For more information about the Appfile, see:
# https://docs.fastlane.tools/advanced/#appfile
# https://docs.fastlane.tools/advanced/#appfile
52 changes: 46 additions & 6 deletions Runnect-iOS/fastlane/Fastfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@
default_platform(:ios)

platform :ios do


############# version #############


desc "Set Marketing and Build version"
lane :set_version do |version|
increment_version_number(
Expand All @@ -29,8 +34,12 @@ platform :ios do
)
end

desc "Testflight Upload"
lane :upload_testflight do |version|

############# beta #############


desc "Push a new beta build to TestFlight"
lane :beta do |version|
version = version[:version]

match(
Expand All @@ -50,14 +59,45 @@ platform :ios do
)
end

build_app(
output_directory:"./BuildOutputs",
scheme: "Runnect-iOS"
)
build_app(workspace: "Runnect-iOS.xcworkspace", scheme: "Runnect-iOS")

upload_to_testflight(skip_waiting_for_build_processing: true)

# ✅ Slack 설정.
slack(
username: "이명진",
message: "TestFlight 배포 성공.",
icon_url: "https://is1-ssl.mzstatic.com/image/thumb/Purple116/v4/a6/68/d0/a668d049-8c1a-0e7b-19c3-287093c0a501/AppIcon-1x_U007emarketing-0-7-0-85-220.png/1024x1024bb.png",
slack_url: ENV["RUNNECT_SLACK"],
payload: { "Version": version }
)
Comment on lines +67 to +73
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

테플 lane에 Slack 추가
slack_url 은 숨겨서 안 쓴다면 git 요정과, 슬랙 본사한테 연락 옵니다.
강제 푸시 해서 없애주지 않으면 그 url은 강제로 삭제가 됩니다.
전 url도 삭제되고, 강제 푸시도 해서 깃 히스토리를 지웠음

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

git 요정이라니 새롭네요 ㅋㅋㅋㅋㅋ 확인했습니다 ~

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

깃 요정 이래 깃 가디언...

# ✅ 에러 처리.
error do |lane, exception, options|
slack(
message: "에러 발생 : #{exception}",
success: false,
slack_url: "https://hooks.slack.com/…"
)
end
end



############# Device Management #############

desc "Register Devices"
lane :register_new_device do |options|
device_name = prompt(text: "Enter the device name: ")
device_udid = prompt(text: "Enter the device UDID: ")
device_hash = {}
device_hash[device_name] = device_udid
register_devices(devices: device_hash)
match(type: "development", force_for_new_devices: true)
end
Comment on lines +86 to +96
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

이거는 어떤 코드인가요 ?! device 등록하는 것두 fastlane에서 관리해주는 건쥐 궁금합니다

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

device 이름과 번호도 command로 간단하게 입력해 주면 자동으로 등록되는 거예요!


############# match #############


desc "Match all code signing"
lane :match_read_only do
match(
Expand Down
7 changes: 3 additions & 4 deletions Runnect-iOS/fastlane/Matchfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
git_url("git@github.com:lsj8706/fastlane-match.git")
git_branch("runnect")
git_url("https://github.com/thingineeer/fastlane-match")
git_branch("master")

storage_mode("git")

type("appstore") # The default type, can be: appstore, adhoc, enterprise or development

app_identifier(["com.runnect.Runnect-iOS"])

app_identifier(ENV["APP_IDENTIFIER"])
# username("user@fastlane.tools") # Your Apple Developer Portal username

# For all available options run `fastlane match --help`
Expand Down
14 changes: 11 additions & 3 deletions Runnect-iOS/fastlane/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,21 @@ For _fastlane_ installation instructions, see [Installing _fastlane_](https://do

Set Marketing and Build version

### ios upload_testflight
### ios beta

```sh
[bundle exec] fastlane ios upload_testflight
[bundle exec] fastlane ios beta
```

Testflight Upload
Push a new beta build to TestFlight

### ios register_new_device

```sh
[bundle exec] fastlane ios register_new_device
```

Register Devices

### ios match_read_only

Expand Down