From f79c6a366ccbadd5a1f54a136a084cc8182a5e65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andrzej=20Wo=CC=81jcik?= Date: Mon, 12 Sep 2016 17:26:32 +0200 Subject: [PATCH] Task #4537 - changes and fixes for bugs found during preparation for initial test flight --- .../AppIcon.appiconset/Contents.json | 3 +- .../AppIcon.appiconset/logo_ipadpro.png | Bin 0 -> 27026 bytes .../database/DBRosterStore.swift | 8 ++- .../settings/SettingsViewController.swift | 4 +- .../project.pbxproj | 53 ++++++++++++++---- trim.sh | 16 ++++++ 6 files changed, 67 insertions(+), 17 deletions(-) create mode 100644 Tigase iOS Messenger/Assets.xcassets/AppIcon.appiconset/logo_ipadpro.png create mode 100755 trim.sh diff --git a/Tigase iOS Messenger/Assets.xcassets/AppIcon.appiconset/Contents.json b/Tigase iOS Messenger/Assets.xcassets/AppIcon.appiconset/Contents.json index 98c4392..4eafaa8 100644 --- a/Tigase iOS Messenger/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/Tigase iOS Messenger/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -100,8 +100,9 @@ "scale" : "2x" }, { - "idiom" : "ipad", "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "logo_ipadpro.png", "scale" : "2x" } ], diff --git a/Tigase iOS Messenger/Assets.xcassets/AppIcon.appiconset/logo_ipadpro.png b/Tigase iOS Messenger/Assets.xcassets/AppIcon.appiconset/logo_ipadpro.png new file mode 100644 index 0000000000000000000000000000000000000000..ffddc42d05e2bc135a048fd3bd0b9f7cb312d2f5 GIT binary patch literal 27026 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 X7e<}P75w*-CD2n9ZDo|Ab@cxLgOQe) literal 0 HcmV?d00001 diff --git a/Tigase iOS Messenger/database/DBRosterStore.swift b/Tigase iOS Messenger/database/DBRosterStore.swift index 640a024..7a21bfc 100644 --- a/Tigase iOS Messenger/database/DBRosterStore.swift +++ b/Tigase iOS Messenger/database/DBRosterStore.swift @@ -125,11 +125,13 @@ public class DBRosterStore: RosterCacheProvider, LocalQueueDispatcher { } for group in dbItem.groups { - var groupId = try? getGroupIdStmt.scalar(["name": group]); + let gparams:[String:Any?] = ["name": group]; + var groupId = try! getGroupIdStmt.scalar(gparams); if groupId == nil { - groupId = try? insertGroupStmt.insert(["name": group]); + groupId = try! insertGroupStmt.insert(gparams); } - try insertItemGroupStmt.insert(["item_id": item.id, "group_id": groupId]); + let igparams:[String:Any?] = ["item_id": dbItem.id, "group_id": groupId]; + try insertItemGroupStmt.insert(igparams); } return dbItem; } catch _ { diff --git a/Tigase iOS Messenger/settings/SettingsViewController.swift b/Tigase iOS Messenger/settings/SettingsViewController.swift index 5d381ed..20b1796 100644 --- a/Tigase iOS Messenger/settings/SettingsViewController.swift +++ b/Tigase iOS Messenger/settings/SettingsViewController.swift @@ -195,11 +195,11 @@ class SettingsViewController: UITableViewController, EventHandler { }) })); } - alert.addAction(UIAlertAction(title: "Keep", style: .Default, handler: { (action) in + alert.addAction(UIAlertAction(title: "Remove", style: .Default, handler: { (action) in AccountManager.deleteAccount(account); self.tableView.reloadData(); })); - alert.addAction(UIAlertAction(title: "Cancel", style: .Default, handler: nil)); + alert.addAction(UIAlertAction(title: "Keep", style: .Default, handler: nil)); self.presentViewController(alert, animated: true, completion: nil); } } diff --git a/Tigase-iOS-Messenger.xcodeproj/project.pbxproj b/Tigase-iOS-Messenger.xcodeproj/project.pbxproj index d3d12c3..db50057 100644 --- a/Tigase-iOS-Messenger.xcodeproj/project.pbxproj +++ b/Tigase-iOS-Messenger.xcodeproj/project.pbxproj @@ -7,10 +7,10 @@ objects = { /* Begin PBXBuildFile section */ + FE04733E1D86E79300E6D6CE /* TigaseSwift.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FE04733D1D86E79300E6D6CE /* TigaseSwift.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + FE04733F1D86E8A700E6D6CE /* TigaseSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FE04733D1D86E79300E6D6CE /* TigaseSwift.framework */; }; FE0A674D1D4F645F00124480 /* CachedViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE0A674C1D4F645F00124480 /* CachedViewController.swift */; }; FE168ACD1CCD197A003F8B26 /* db-schema-1.0.0.sql in Resources */ = {isa = PBXBuildFile; fileRef = FE168ACC1CCD197A003F8B26 /* db-schema-1.0.0.sql */; }; - FE3024211CDCD0A300466497 /* TigaseSwift.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FE3024201CDCD0A300466497 /* TigaseSwift.framework */; }; - FE3024221CDCD0A900466497 /* TigaseSwift.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = FE3024201CDCD0A300466497 /* TigaseSwift.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; FE3024321CE2036A00466497 /* DBVCardsCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE3024311CE2036A00466497 /* DBVCardsCache.swift */; }; FE3A45CF1CE49D3300C36264 /* RosterItemEditViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE3A45CE1CE49D3300C36264 /* RosterItemEditViewController.swift */; }; FE5079DA1CCE56F3001A015C /* XmppService.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE5079D91CCE56F3001A015C /* XmppService.swift */; }; @@ -86,7 +86,7 @@ dstPath = ""; dstSubfolderSpec = 10; files = ( - FE3024221CDCD0A900466497 /* TigaseSwift.framework in Embed Frameworks */, + FE04733E1D86E79300E6D6CE /* TigaseSwift.framework in Embed Frameworks */, ); name = "Embed Frameworks"; runOnlyForDeploymentPostprocessing = 0; @@ -94,9 +94,9 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + FE04733D1D86E79300E6D6CE /* TigaseSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; name = TigaseSwift.framework; path = "/Users/andrzej/Library/Developer/Xcode/DerivedData/workspace_ts-cggcwjpodibzegaecyuraswpljwr/Build/Products/Debug-iphoneos/TigaseSwift.framework"; sourceTree = ""; }; FE0A674C1D4F645F00124480 /* CachedViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CachedViewController.swift; sourceTree = ""; }; FE168ACC1CCD197A003F8B26 /* db-schema-1.0.0.sql */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "db-schema-1.0.0.sql"; sourceTree = ""; }; - FE3024201CDCD0A300466497 /* TigaseSwift.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = TigaseSwift.framework; path = "../../../Library/Developer/Xcode/DerivedData/workspace_ts-cggcwjpodibzegaecyuraswpljwr/Build/Products/Debug-iphoneos/TigaseSwift.framework"; sourceTree = ""; }; FE3024311CE2036A00466497 /* DBVCardsCache.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DBVCardsCache.swift; sourceTree = ""; }; FE3A45CE1CE49D3300C36264 /* RosterItemEditViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RosterItemEditViewController.swift; sourceTree = ""; }; FE5079D91CCE56F3001A015C /* XmppService.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = XmppService.swift; sourceTree = ""; }; @@ -160,7 +160,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - FE3024211CDCD0A300466497 /* TigaseSwift.framework in Frameworks */, + FE04733F1D86E8A700E6D6CE /* TigaseSwift.framework in Frameworks */, FE5079F01CD3CA91001A015C /* Security.framework in Frameworks */, FE94E55E1CCCC14E00FAE755 /* libsqlite3.tbd in Frameworks */, ); @@ -261,7 +261,7 @@ FE94E5181CCBA74F00FAE755 = { isa = PBXGroup; children = ( - FE3024201CDCD0A300466497 /* TigaseSwift.framework */, + FE04733D1D86E79300E6D6CE /* TigaseSwift.framework */, FE5079EF1CD3CA91001A015C /* Security.framework */, FE94E55D1CCCC14E00FAE755 /* libsqlite3.tbd */, FE94E5231CCBA74F00FAE755 /* Tigase iOS Messenger */, @@ -354,8 +354,9 @@ FE94E51D1CCBA74F00FAE755 /* Sources */, FE94E51E1CCBA74F00FAE755 /* Frameworks */, FE94E51F1CCBA74F00FAE755 /* Resources */, - FECD0F2A1CDB8B1B00420DF5 /* ShellScript */, + FECD0F2A1CDB8B1B00420DF5 /* Mark TODO and FIX ME */, FEF80DB71CDCC508005645A7 /* Embed Frameworks */, + FE0473391D86CEE700E6D6CE /* Trim Framework Executables */, ); buildRules = ( ); @@ -414,7 +415,7 @@ TargetAttributes = { FE94E5201CCBA74F00FAE755 = { CreatedOnToolsVersion = 7.3; - DevelopmentTeam = 336G7QK5SR; + DevelopmentTeam = YBEYW6E35C; SystemCapabilities = { com.apple.BackgroundModes = { enabled = 1; @@ -480,13 +481,28 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - FECD0F2A1CDB8B1B00420DF5 /* ShellScript */ = { + FE0473391D86CEE700E6D6CE /* Trim Framework Executables */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); + name = "Trim Framework Executables"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "#\"${SRCROOT}/\"trim.sh TigaseSwift"; + }; + FECD0F2A1CDB8B1B00420DF5 /* Mark TODO and FIX ME */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Mark TODO and FIX ME"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; @@ -692,12 +708,20 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + DEAD_CODE_STRIPPING = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)", + ); HEADER_SEARCH_PATHS = "$(SDK_DIR)/usr/include"; INFOPLIST_FILE = "Tigase iOS Messenger/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "tigase.Tigase-iOS-Messenger"; + PRODUCT_BUNDLE_IDENTIFIER = org.tigase.messenger.mobile; PRODUCT_NAME = "Tigase-iOS-Messenger"; PROVISIONING_PROFILE = ""; + STRIP_INSTALLED_PRODUCT = NO; SWIFT_INCLUDE_PATHS = "$(SRCROOT)/Modules/"; }; name = Debug; @@ -708,12 +732,19 @@ ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + DEAD_CODE_STRIPPING = NO; + ENABLE_BITCODE = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "$(PROJECT_DIR)", + ); HEADER_SEARCH_PATHS = "$(SDK_DIR)/usr/include"; INFOPLIST_FILE = "Tigase iOS Messenger/Info.plist"; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = "tigase.Tigase-iOS-Messenger"; + PRODUCT_BUNDLE_IDENTIFIER = org.tigase.messenger.mobile; PRODUCT_NAME = "Tigase-iOS-Messenger"; PROVISIONING_PROFILE = ""; + STRIP_INSTALLED_PRODUCT = NO; SWIFT_INCLUDE_PATHS = "$(SRCROOT)/Modules/"; }; name = Release; diff --git a/trim.sh b/trim.sh new file mode 100755 index 0000000..e77b441 --- /dev/null +++ b/trim.sh @@ -0,0 +1,16 @@ +FRAMEWORK=$1 +echo "Trimming $FRAMEWORK..." +FRAMEWORK_EXECUTABLE_PATH="${BUILT_PRODUCTS_DIR}/${FRAMEWORKS_FOLDER_PATH}/$FRAMEWORK.framework/$FRAMEWORK" +EXTRACTED_ARCHS=() +for ARCH in $ARCHS +do + echo "Extracting $ARCH..." + lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH" + EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH") +done +echo "Merging binaries..." +lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}" +rm "${EXTRACTED_ARCHS[@]}" +rm "$FRAMEWORK_EXECUTABLE_PATH" +mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH" +echo "Done." \ No newline at end of file