From a6af03b98b177da46b029ade0f682977147be59c Mon Sep 17 00:00:00 2001 From: leminlimez Date: Sun, 29 Jun 2025 21:51:04 -0400 Subject: [PATCH] fix pb and carplay app hash problems --- Pocket Poster.xcodeproj/project.pbxproj | 4 ++-- Pocket Poster/Views/SettingsView.swift | 23 ++++++++++++++++++++++- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/Pocket Poster.xcodeproj/project.pbxproj b/Pocket Poster.xcodeproj/project.pbxproj index d76fbe4..6422739 100644 --- a/Pocket Poster.xcodeproj/project.pbxproj +++ b/Pocket Poster.xcodeproj/project.pbxproj @@ -281,7 +281,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 2.0; + MARKETING_VERSION = 2.0.1; PRODUCT_BUNDLE_IDENTIFIER = "com.lemin.Pocket-Poster"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_EMIT_LOC_STRINGS = YES; @@ -313,7 +313,7 @@ "$(inherited)", "@executable_path/Frameworks", ); - MARKETING_VERSION = 2.0; + MARKETING_VERSION = 2.0.1; PRODUCT_BUNDLE_IDENTIFIER = "com.lemin.Pocket-Poster"; PRODUCT_NAME = "$(TARGET_NAME)"; SWIFT_EMIT_LOC_STRINGS = YES; diff --git a/Pocket Poster/Views/SettingsView.swift b/Pocket Poster/Views/SettingsView.swift index 58bf135..d4d3314 100644 --- a/Pocket Poster/Views/SettingsView.swift +++ b/Pocket Poster/Views/SettingsView.swift @@ -23,6 +23,23 @@ struct SettingsView: View { TextField("Enter App Hash", text: $pbHash) .textFieldStyle(RoundedBorderTextFieldStyle()) .font(.system(.body, design: .monospaced)) + .onChange(of: pbHash) { _ in + var separator: String? = nil + if pbHash.contains(" ") { + separator = " " + } else if pbHash.contains("\n") { + separator = "\n" + } + if let separator = separator { + let items = pbHash.split(separator: separator) + if let pb = items.first { + pbHash = String(pb) + } + if items.count >= 2 { + cpHash = String(items[1]) + } + } + } HStack { Spacer() // Run task to check until file exists from Nugget pc over AFC @@ -144,7 +161,11 @@ struct SettingsView: View { let contents = try String(contentsOf: filePath) try? FileManager.default.removeItem(at: filePath) await MainActor.run { - let items = contents.split(separator: "\n") + var separator = " " + if contents.contains("\n") { + separator = "\n" + } + let items = contents.split(separator: separator) if let pb = items.first { pbHash = String(pb) }