Compare commits
5 Commits
aa66951cb4
...
8e23f65086
Author | SHA1 | Date |
---|---|---|
![]() |
8e23f65086 | |
![]() |
a22a3ebf6c | |
![]() |
00d49afec6 | |
![]() |
80b487eab6 | |
![]() |
8461012e22 |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 998 B After Width: | Height: | Size: 998 B |
Before Width: | Height: | Size: 928 B After Width: | Height: | Size: 928 B |
Before Width: | Height: | Size: 925 B After Width: | Height: | Size: 925 B |
|
@ -5,6 +5,8 @@
|
||||||
<key>aps-environment</key>
|
<key>aps-environment</key>
|
||||||
<string>development</string>
|
<string>development</string>
|
||||||
<key>com.apple.developer.associated-domains</key>
|
<key>com.apple.developer.associated-domains</key>
|
||||||
<array/>
|
<array>
|
||||||
|
<string>applinks:sodalive.page.link</string>
|
||||||
|
</array>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
@ -13,7 +13,7 @@ class ObjectBoxService {
|
||||||
let playbackTrackingBox: Box<PlaybackTracking>
|
let playbackTrackingBox: Box<PlaybackTracking>
|
||||||
|
|
||||||
init() {
|
init() {
|
||||||
let databaseName = "yozmlive"
|
let databaseName = "sodalive"
|
||||||
let appSupport = try! FileManager.default.url(for: .applicationSupportDirectory,
|
let appSupport = try! FileManager.default.url(for: .applicationSupportDirectory,
|
||||||
in: .userDomainMask,
|
in: .userDomainMask,
|
||||||
appropriateFor: nil,
|
appropriateFor: nil,
|
||||||
|
|
|
@ -58,7 +58,7 @@ struct SodaLiveApp: App {
|
||||||
.onOpenURL { url in
|
.onOpenURL { url in
|
||||||
DEBUG_LOG("I have received a URL through a custom scheme! \(url.absoluteString)")
|
DEBUG_LOG("I have received a URL through a custom scheme! \(url.absoluteString)")
|
||||||
if let scheme = url.scheme {
|
if let scheme = url.scheme {
|
||||||
if scheme == "kr.co.vividnext.yozm" {
|
if scheme == "kr.co.vividnext.sodalive" {
|
||||||
if let dynamicLink = DynamicLinks.dynamicLinks().dynamicLink(fromCustomSchemeURL: url) {
|
if let dynamicLink = DynamicLinks.dynamicLinks().dynamicLink(fromCustomSchemeURL: url) {
|
||||||
self.handleIncomingDynamicLink(dynamicLink)
|
self.handleIncomingDynamicLink(dynamicLink)
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -198,22 +198,22 @@ final class ContentDetailViewModel: ObservableObject {
|
||||||
|
|
||||||
func shareAudioContent(contentImage: String, contentTitle: String) {
|
func shareAudioContent(contentImage: String, contentTitle: String) {
|
||||||
isLoading = true
|
isLoading = true
|
||||||
guard let link = URL(string: "https://yozm.day/?audio_content_id=\(contentId)") else { return }
|
guard let link = URL(string: "https://sodalive.net/?audio_content_id=\(contentId)") else { return }
|
||||||
let dynamicLinksDomainURIPrefix = "https://yozm.page.link"
|
let dynamicLinksDomainURIPrefix = "https://sodalive.page.link"
|
||||||
guard let linkBuilder = DynamicLinkComponents(link: link, domainURIPrefix: dynamicLinksDomainURIPrefix) else {
|
guard let linkBuilder = DynamicLinkComponents(link: link, domainURIPrefix: dynamicLinksDomainURIPrefix) else {
|
||||||
self.errorMessage = "공유링크를 생성하지 못했습니다.\n다시 시도해 주세요."
|
self.errorMessage = "공유링크를 생성하지 못했습니다.\n다시 시도해 주세요."
|
||||||
self.isShowPopup = true
|
self.isShowPopup = true
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.yozm")
|
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.sodalive")
|
||||||
linkBuilder.iOSParameters?.appStoreID = "1630284226"
|
linkBuilder.iOSParameters?.appStoreID = "6461721697"
|
||||||
|
|
||||||
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.yozm")
|
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.sodalive")
|
||||||
|
|
||||||
let socialMetaTagParameters = DynamicLinkSocialMetaTagParameters()
|
let socialMetaTagParameters = DynamicLinkSocialMetaTagParameters()
|
||||||
socialMetaTagParameters.title = contentTitle
|
socialMetaTagParameters.title = contentTitle
|
||||||
socialMetaTagParameters.descriptionText = "지금 요즘라이브에서 이 콘텐츠 감상하기"
|
socialMetaTagParameters.descriptionText = "지금 소다라이브에서 이 콘텐츠 감상하기"
|
||||||
socialMetaTagParameters.imageURL = URL(string: contentImage)
|
socialMetaTagParameters.imageURL = URL(string: contentImage)
|
||||||
linkBuilder.socialMetaTagParameters = socialMetaTagParameters
|
linkBuilder.socialMetaTagParameters = socialMetaTagParameters
|
||||||
|
|
||||||
|
|
|
@ -42,11 +42,11 @@ struct ContentMainNewContentView_Previews: PreviewProvider {
|
||||||
items: [
|
items: [
|
||||||
GetAudioContentMainItem(
|
GetAudioContentMainItem(
|
||||||
contentId: 1,
|
contentId: 1,
|
||||||
coverImageUrl: "https://test-cf.yozm.day/audio_content_cover/31/31-cover-e78575f9-7624-471c-8102-1289a5748aae-5983-1684487894269",
|
coverImageUrl: "https://test-cf.sodalive.net/profile/default-profile.png",
|
||||||
title: "테스트",
|
title: "테스트",
|
||||||
isAdult: false,
|
isAdult: false,
|
||||||
creatorId: 7,
|
creatorId: 7,
|
||||||
creatorProfileImageUrl: "https://test-cf.yozm.day/profile/7f73168e-220f-482f-b97d-baab63b70e04IMG_20220314_220855522.jpg",
|
creatorProfileImageUrl: "https://test-cf.sodalive.net/profile/default-profile.png",
|
||||||
creatorNickname: "유저1"
|
creatorNickname: "유저1"
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
import Foundation
|
import Foundation
|
||||||
|
|
||||||
let BASE_URL = "https://test-api.sodalive.net"
|
let BASE_URL = "https://test-api.sodalive.net"
|
||||||
let APPLY_YOZM_CREATOR = "https://forms.gle/mmhJKmijjVRnwtdZ7"
|
let APPLY_SODALIVE_CREATOR = "https://forms.gle/mmhJKmijjVRnwtdZ7"
|
||||||
|
|
||||||
let AGORA_APP_ID = "b96574e191a9430fa54c605528aa3ef7"
|
let AGORA_APP_ID = "b96574e191a9430fa54c605528aa3ef7"
|
||||||
let AGORA_APP_CERTIFICATE = "ae18ade3afcf4086bd4397726eb0654c"
|
let AGORA_APP_CERTIFICATE = "ae18ade3afcf4086bd4397726eb0654c"
|
||||||
|
|
|
@ -380,18 +380,18 @@ final class UserProfileViewModel: ObservableObject {
|
||||||
}
|
}
|
||||||
|
|
||||||
func shareChannel(userId: Int) {
|
func shareChannel(userId: Int) {
|
||||||
guard let link = URL(string: "https://yozm.day/?channel_id=\(userId)") else { return }
|
guard let link = URL(string: "https://sodalive.net/?channel_id=\(userId)") else { return }
|
||||||
let dynamicLinksDomainURIPrefix = "https://yozm.page.link"
|
let dynamicLinksDomainURIPrefix = "https://sodalive.page.link"
|
||||||
guard let linkBuilder = DynamicLinkComponents(link: link, domainURIPrefix: dynamicLinksDomainURIPrefix) else {
|
guard let linkBuilder = DynamicLinkComponents(link: link, domainURIPrefix: dynamicLinksDomainURIPrefix) else {
|
||||||
self.errorMessage = "공유링크를 생성하지 못했습니다.\n다시 시도해 주세요."
|
self.errorMessage = "공유링크를 생성하지 못했습니다.\n다시 시도해 주세요."
|
||||||
self.isShowPopup = true
|
self.isShowPopup = true
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.yozm")
|
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.sodalive")
|
||||||
linkBuilder.iOSParameters?.appStoreID = "1630284226"
|
linkBuilder.iOSParameters?.appStoreID = "6461721697"
|
||||||
|
|
||||||
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.yozm")
|
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.sodalive")
|
||||||
|
|
||||||
guard let longDynamicLink = linkBuilder.url else {
|
guard let longDynamicLink = linkBuilder.url else {
|
||||||
self.errorMessage = "공유링크를 생성하지 못했습니다.\n다시 시도해 주세요."
|
self.errorMessage = "공유링크를 생성하지 못했습니다.\n다시 시도해 주세요."
|
||||||
|
@ -404,7 +404,7 @@ final class UserProfileViewModel: ObservableObject {
|
||||||
let shortUrl = url?.absoluteString
|
let shortUrl = url?.absoluteString
|
||||||
let urlString = shortUrl != nil ? shortUrl! : longDynamicLink.absoluteString
|
let urlString = shortUrl != nil ? shortUrl! : longDynamicLink.absoluteString
|
||||||
|
|
||||||
self.shareMessage = "요즘라이브 \(self.creatorProfile!.creator.nickname)님의 채널입니다.\n\(urlString)"
|
self.shareMessage = "소다라이브 \(self.creatorProfile!.creator.nickname)님의 채널입니다.\n\(urlString)"
|
||||||
self.isShowShareView = true
|
self.isShowShareView = true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
//
|
//
|
||||||
// DateExtension.swift
|
// DateExtension.swift
|
||||||
// yozm
|
// SodaLive
|
||||||
//
|
//
|
||||||
// Created by klaus on 2022/05/27.
|
// Created by klaus on 2022/05/27.
|
||||||
//
|
//
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
//
|
//
|
||||||
// IntExtension.swift
|
// IntExtension.swift
|
||||||
// yozm
|
// SodaLive
|
||||||
//
|
//
|
||||||
// Created by klaus on 2022/06/21.
|
// Created by klaus on 2022/06/21.
|
||||||
//
|
//
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
//
|
//
|
||||||
// StringExtension.swift
|
// StringExtension.swift
|
||||||
// yozm
|
// SodaLive
|
||||||
//
|
//
|
||||||
// Created by klaus on 2022/06/03.
|
// Created by klaus on 2022/06/03.
|
||||||
//
|
//
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
//
|
//
|
||||||
// UserDefaultsExtension.swift
|
// UserDefaultsExtension.swift
|
||||||
// yozm
|
// SodaLive
|
||||||
//
|
//
|
||||||
// Created by klaus on 2022/05/20.
|
// Created by klaus on 2022/05/20.
|
||||||
//
|
//
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
//
|
//
|
||||||
// ViewExtension.swift
|
// ViewExtension.swift
|
||||||
// yozm
|
// SodaLive
|
||||||
//
|
//
|
||||||
// Created by klaus on 2022/05/19.
|
// Created by klaus on 2022/05/19.
|
||||||
//
|
//
|
||||||
|
|
|
@ -31,7 +31,7 @@ struct LiveView: View {
|
||||||
.padding(.top, 13.3)
|
.padding(.top, 13.3)
|
||||||
}
|
}
|
||||||
|
|
||||||
if let url = URL(string: "https://blog.naver.com/yozmlive"),
|
if let url = URL(string: "https://blog.naver.com/sodalive_official"),
|
||||||
UIApplication.shared.canOpenURL(url) {
|
UIApplication.shared.canOpenURL(url) {
|
||||||
Image("img_how_to_use")
|
Image("img_how_to_use")
|
||||||
.resizable()
|
.resizable()
|
||||||
|
|
|
@ -123,7 +123,7 @@ final class LiveDetailViewModel: ObservableObject {
|
||||||
}
|
}
|
||||||
|
|
||||||
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.sodalive")
|
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.sodalive")
|
||||||
linkBuilder.iOSParameters?.appStoreID = "1630284226"
|
linkBuilder.iOSParameters?.appStoreID = "6461721697"
|
||||||
|
|
||||||
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.sodalive")
|
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.sodalive")
|
||||||
|
|
||||||
|
|
|
@ -653,7 +653,7 @@ final class LiveRoomViewModel: NSObject, ObservableObject {
|
||||||
}
|
}
|
||||||
|
|
||||||
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.sodalive")
|
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "kr.co.vividnext.sodalive")
|
||||||
linkBuilder.iOSParameters?.appStoreID = "1630284226"
|
linkBuilder.iOSParameters?.appStoreID = "6461721697"
|
||||||
|
|
||||||
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.sodalive")
|
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "kr.co.vividnext.sodalive")
|
||||||
|
|
||||||
|
|
|
@ -54,9 +54,9 @@ struct TextMessageItemView_Previews: PreviewProvider {
|
||||||
messageId: 18,
|
messageId: 18,
|
||||||
senderId: 19,
|
senderId: 19,
|
||||||
senderNickname: "user8",
|
senderNickname: "user8",
|
||||||
senderProfileImageUrl: "https://test-cf.yozm.day/profile/default_profile.png",
|
senderProfileImageUrl: "https://test-cf.sodalive.net/profile/default-profile.png",
|
||||||
recipientNickname: "uset7",
|
recipientNickname: "uset7",
|
||||||
recipientProfileImageUrl: "https://test-cf.yozm.day/profile/default_profile.png",
|
recipientProfileImageUrl: "https://test-cf.sodalive.net/profile/default-profile.png",
|
||||||
textMessage: "ㅅㅅㅅㅅㅅㅅㅅㅅ러러러라라가가각개가사러",
|
textMessage: "ㅅㅅㅅㅅㅅㅅㅅㅅ러러러라라가가각개가사러",
|
||||||
date: "2022-05-23 16:15:22",
|
date: "2022-05-23 16:15:22",
|
||||||
isKept: false
|
isKept: false
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
import Foundation
|
import Foundation
|
||||||
|
|
||||||
let BASE_URL = "https://api.sodalive.net"
|
let BASE_URL = "https://api.sodalive.net"
|
||||||
let APPLY_YOZM_CREATOR = "https://forms.gle/mmhJKmijjVRnwtdZ7"
|
let APPLY_SODALIVE_CREATOR = "https://forms.gle/mmhJKmijjVRnwtdZ7"
|
||||||
|
|
||||||
let AGORA_APP_ID = "e34e40046e9847baba3adfe2b8ffb4f6"
|
let AGORA_APP_ID = "e34e40046e9847baba3adfe2b8ffb4f6"
|
||||||
let AGORA_APP_CERTIFICATE = "15cadeea4ba94ff7b091c9a10f4bf4a6"
|
let AGORA_APP_CERTIFICATE = "15cadeea4ba94ff7b091c9a10f4bf4a6"
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
//
|
//
|
||||||
// Log.swift
|
// Log.swift
|
||||||
// yozm
|
// SodaLive
|
||||||
//
|
//
|
||||||
// Created by klaus on 2022/05/20.
|
// Created by klaus on 2022/05/20.
|
||||||
//
|
//
|
||||||
|
|