diff options
-rw-r--r-- | CopyMailto.xcodeproj/project.pbxproj | 6 | ||||
-rw-r--r-- | CopyMailto/DefaultURLHandler.h | 15 | ||||
-rw-r--r-- | CopyMailto/DefaultURLHandler.m | 28 | ||||
-rw-r--r-- | CopyMailto/main.m | 3 |
4 files changed, 52 insertions, 0 deletions
diff --git a/CopyMailto.xcodeproj/project.pbxproj b/CopyMailto.xcodeproj/project.pbxproj index 3176932..0012db7 100644 --- a/CopyMailto.xcodeproj/project.pbxproj +++ b/CopyMailto.xcodeproj/project.pbxproj @@ -11,6 +11,7 @@ D1F170FE21402BB100BD08A0 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D1F170FD21402BB100BD08A0 /* Assets.xcassets */; }; D1F1710121402BB200BD08A0 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = D1F170FF21402BB200BD08A0 /* MainMenu.xib */; }; D1F1710421402BB300BD08A0 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = D1F1710321402BB300BD08A0 /* main.m */; }; + D1F1710D21403F7B00BD08A0 /* DefaultURLHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = D1F1710C21403F7B00BD08A0 /* DefaultURLHandler.m */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -22,6 +23,8 @@ D1F1710221402BB300BD08A0 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; D1F1710321402BB300BD08A0 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; }; D1F1710521402BB400BD08A0 /* CopyMailto.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = CopyMailto.entitlements; sourceTree = "<group>"; }; + D1F1710B21403F7B00BD08A0 /* DefaultURLHandler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DefaultURLHandler.h; sourceTree = "<group>"; }; + D1F1710C21403F7B00BD08A0 /* DefaultURLHandler.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DefaultURLHandler.m; sourceTree = "<group>"; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -59,6 +62,8 @@ D1F170FD21402BB100BD08A0 /* Assets.xcassets */, D1F170FF21402BB200BD08A0 /* MainMenu.xib */, D1F1710221402BB300BD08A0 /* Info.plist */, + D1F1710B21403F7B00BD08A0 /* DefaultURLHandler.h */, + D1F1710C21403F7B00BD08A0 /* DefaultURLHandler.m */, D1F1710321402BB300BD08A0 /* main.m */, D1F1710521402BB400BD08A0 /* CopyMailto.entitlements */, ); @@ -136,6 +141,7 @@ buildActionMask = 2147483647; files = ( D1F1710421402BB300BD08A0 /* main.m in Sources */, + D1F1710D21403F7B00BD08A0 /* DefaultURLHandler.m in Sources */, D1F170FC21402BB100BD08A0 /* AppDelegate.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/CopyMailto/DefaultURLHandler.h b/CopyMailto/DefaultURLHandler.h new file mode 100644 index 0000000..7bad3d0 --- /dev/null +++ b/CopyMailto/DefaultURLHandler.h @@ -0,0 +1,15 @@ +// +// DefaultURLHandler.h +// CopyMailto +// +// Created by tw on 9/5/18. +// Copyright © 2018 tw. All rights reserved. +// + +#import <Foundation/Foundation.h> + +@interface DefaultURLHandler : NSObject + ++ (void)saveDefaultURLHandler; + +@end diff --git a/CopyMailto/DefaultURLHandler.m b/CopyMailto/DefaultURLHandler.m new file mode 100644 index 0000000..a8d124f --- /dev/null +++ b/CopyMailto/DefaultURLHandler.m @@ -0,0 +1,28 @@ +// +// DefaultURLHandler.m +// CopyMailto +// +// Created by tw on 9/5/18. +// Copyright © 2018 tw. All rights reserved. +// + +#import "DefaultURLHandler.h" + +@implementation DefaultURLHandler + +//LSSetDefaultHandlerForURLScheme(); ++ (void)saveDefaultURLHandler { + CFStringRef mailto = CFStringCreateWithCString( + kCFAllocatorDefault, + "mailto", + kCFStringEncodingUTF8 + ); + + CFStringRef bundle_identifier = LSCopyDefaultHandlerForURLScheme(mailto); + NSLog(@"%@", bundle_identifier); + + CFRelease(mailto); + CFRelease(bundle_identifier); +} + +@end diff --git a/CopyMailto/main.m b/CopyMailto/main.m index dd3e4a5..8dfe2c1 100644 --- a/CopyMailto/main.m +++ b/CopyMailto/main.m @@ -8,6 +8,9 @@ #import <Cocoa/Cocoa.h> +#import "DefaultURLHandler.h" + int main(int argc, const char * argv[]) { + [DefaultURLHandler saveDefaultURLHandler]; return NSApplicationMain(argc, argv); } |