Skip to content

Commit c060e6b

Browse files
committed
Add StartAtLogin Func
1 parent 4e4742a commit c060e6b

File tree

18 files changed

+1242
-35
lines changed

18 files changed

+1242
-35
lines changed

XcodeOpener/XcodeOpener.xcodeproj/project.pbxproj

Lines changed: 155 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,12 @@
77
objects = {
88

99
/* Begin PBXBuildFile section */
10+
740340B9225F1F2800193BC1 /* LaunchAtLogin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 740340B8225F1F2800193BC1 /* LaunchAtLogin.swift */; };
11+
740340BB225F254E00193BC1 /* AppModeSwitcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 740340BA225F254E00193BC1 /* AppModeSwitcher.swift */; };
12+
740340C3225F277C00193BC1 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 740340C2225F277C00193BC1 /* AppDelegate.swift */; };
13+
740340C7225F277E00193BC1 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 740340C6225F277E00193BC1 /* Assets.xcassets */; };
14+
740340CA225F277E00193BC1 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 740340C8225F277E00193BC1 /* Main.storyboard */; };
15+
740340D1225F289F00193BC1 /* XcodeOpenerLauncher.app in CopyFiles */ = {isa = PBXBuildFile; fileRef = 740340C0225F277C00193BC1 /* XcodeOpenerLauncher.app */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };
1016
741AE957225DC4B800DDE7EA /* ApplicationOpener.swift in Sources */ = {isa = PBXBuildFile; fileRef = 741AE956225DC4B800DDE7EA /* ApplicationOpener.swift */; };
1117
741AE95C225DDD7A00DDE7EA /* XcodesListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 741AE95A225DDD7A00DDE7EA /* XcodesListViewController.swift */; };
1218
741AE95F225DDF0100DDE7EA /* Xcodes.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 741AE95E225DDF0100DDE7EA /* Xcodes.storyboard */; };
@@ -26,7 +32,29 @@
2632
74EC1579225DC31F001A6439 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 74EC1577225DC31F001A6439 /* Main.storyboard */; };
2733
/* End PBXBuildFile section */
2834

35+
/* Begin PBXCopyFilesBuildPhase section */
36+
740340D0225F289600193BC1 /* CopyFiles */ = {
37+
isa = PBXCopyFilesBuildPhase;
38+
buildActionMask = 2147483647;
39+
dstPath = Contents/Library/LoginItems;
40+
dstSubfolderSpec = 1;
41+
files = (
42+
740340D1225F289F00193BC1 /* XcodeOpenerLauncher.app in CopyFiles */,
43+
);
44+
runOnlyForDeploymentPostprocessing = 0;
45+
};
46+
/* End PBXCopyFilesBuildPhase section */
47+
2948
/* Begin PBXFileReference section */
49+
00FBBEBB7D1C15E039715702 /* libPods-XcodeOpener.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-XcodeOpener.a"; sourceTree = BUILT_PRODUCTS_DIR; };
50+
740340B8225F1F2800193BC1 /* LaunchAtLogin.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LaunchAtLogin.swift; sourceTree = "<group>"; };
51+
740340BA225F254E00193BC1 /* AppModeSwitcher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppModeSwitcher.swift; sourceTree = "<group>"; };
52+
740340C0225F277C00193BC1 /* XcodeOpenerLauncher.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = XcodeOpenerLauncher.app; sourceTree = BUILT_PRODUCTS_DIR; };
53+
740340C2225F277C00193BC1 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
54+
740340C6225F277E00193BC1 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
55+
740340C9225F277E00193BC1 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
56+
740340CB225F277E00193BC1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
57+
740340CC225F277E00193BC1 /* XcodeOpenerLauncher.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = XcodeOpenerLauncher.entitlements; sourceTree = "<group>"; };
3058
741AE956225DC4B800DDE7EA /* ApplicationOpener.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ApplicationOpener.swift; sourceTree = "<group>"; };
3159
741AE95A225DDD7A00DDE7EA /* XcodesListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesListViewController.swift; sourceTree = "<group>"; };
3260
741AE95E225DDF0100DDE7EA /* Xcodes.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = Xcodes.storyboard; sourceTree = "<group>"; };
@@ -50,7 +78,7 @@
5078
/* End PBXFileReference section */
5179

5280
/* Begin PBXFrameworksBuildPhase section */
53-
74EC156B225DC31D001A6439 /* Frameworks */ = {
81+
740340BD225F277C00193BC1 /* Frameworks */ = {
5482
isa = PBXFrameworksBuildPhase;
5583
buildActionMask = 2147483647;
5684
files = (
@@ -60,6 +88,26 @@
6088
/* End PBXFrameworksBuildPhase section */
6189

6290
/* Begin PBXGroup section */
91+
5F010D98B3DCA8430DA3E0A3 /* Frameworks */ = {
92+
isa = PBXGroup;
93+
children = (
94+
00FBBEBB7D1C15E039715702 /* libPods-XcodeOpener.a */,
95+
);
96+
name = Frameworks;
97+
sourceTree = "<group>";
98+
};
99+
740340C1225F277C00193BC1 /* XcodeOpenerLauncher */ = {
100+
isa = PBXGroup;
101+
children = (
102+
740340C2225F277C00193BC1 /* AppDelegate.swift */,
103+
740340C6225F277E00193BC1 /* Assets.xcassets */,
104+
740340C8225F277E00193BC1 /* Main.storyboard */,
105+
740340CB225F277E00193BC1 /* Info.plist */,
106+
740340CC225F277E00193BC1 /* XcodeOpenerLauncher.entitlements */,
107+
);
108+
path = XcodeOpenerLauncher;
109+
sourceTree = "<group>";
110+
};
63111
741AE962225DDF9E00DDE7EA /* Xcode List */ = {
64112
isa = PBXGroup;
65113
children = (
@@ -94,6 +142,8 @@
94142
children = (
95143
74A5B7FF225DFF5D00293442 /* AppDefaults.swift */,
96144
74A5B801225E01D600293442 /* KeyValueStoreType.swift */,
145+
740340B8225F1F2800193BC1 /* LaunchAtLogin.swift */,
146+
740340BA225F254E00193BC1 /* AppModeSwitcher.swift */,
97147
);
98148
path = Defaults;
99149
sourceTree = "<group>";
@@ -111,14 +161,17 @@
111161
isa = PBXGroup;
112162
children = (
113163
74EC1570225DC31D001A6439 /* XcodeOpener */,
164+
740340C1225F277C00193BC1 /* XcodeOpenerLauncher */,
114165
74EC156F225DC31D001A6439 /* Products */,
166+
5F010D98B3DCA8430DA3E0A3 /* Frameworks */,
115167
);
116168
sourceTree = "<group>";
117169
};
118170
74EC156F225DC31D001A6439 /* Products */ = {
119171
isa = PBXGroup;
120172
children = (
121173
74EC156E225DC31D001A6439 /* XcodeOpener.app */,
174+
740340C0225F277C00193BC1 /* XcodeOpenerLauncher.app */,
122175
);
123176
name = Products;
124177
sourceTree = "<group>";
@@ -145,13 +198,30 @@
145198
/* End PBXGroup section */
146199

147200
/* Begin PBXNativeTarget section */
201+
740340BF225F277C00193BC1 /* XcodeOpenerLauncher */ = {
202+
isa = PBXNativeTarget;
203+
buildConfigurationList = 740340CD225F277E00193BC1 /* Build configuration list for PBXNativeTarget "XcodeOpenerLauncher" */;
204+
buildPhases = (
205+
740340BC225F277C00193BC1 /* Sources */,
206+
740340BD225F277C00193BC1 /* Frameworks */,
207+
740340BE225F277C00193BC1 /* Resources */,
208+
);
209+
buildRules = (
210+
);
211+
dependencies = (
212+
);
213+
name = XcodeOpenerLauncher;
214+
productName = XcodeOpenerLauncher;
215+
productReference = 740340C0225F277C00193BC1 /* XcodeOpenerLauncher.app */;
216+
productType = "com.apple.product-type.application";
217+
};
148218
74EC156D225DC31D001A6439 /* XcodeOpener */ = {
149219
isa = PBXNativeTarget;
150220
buildConfigurationList = 74EC157E225DC31F001A6439 /* Build configuration list for PBXNativeTarget "XcodeOpener" */;
151221
buildPhases = (
152222
74EC156A225DC31D001A6439 /* Sources */,
153-
74EC156B225DC31D001A6439 /* Frameworks */,
154223
74EC156C225DC31D001A6439 /* Resources */,
224+
740340D0225F289600193BC1 /* CopyFiles */,
155225
);
156226
buildRules = (
157227
);
@@ -168,10 +238,13 @@
168238
74EC1566225DC31D001A6439 /* Project object */ = {
169239
isa = PBXProject;
170240
attributes = {
171-
LastSwiftUpdateCheck = 1020;
241+
LastSwiftUpdateCheck = 1010;
172242
LastUpgradeCheck = 1020;
173243
ORGANIZATIONNAME = "chen he";
174244
TargetAttributes = {
245+
740340BF225F277C00193BC1 = {
246+
CreatedOnToolsVersion = 10.1;
247+
};
175248
74EC156D225DC31D001A6439 = {
176249
CreatedOnToolsVersion = 10.2;
177250
LastSwiftMigration = 1020;
@@ -197,11 +270,21 @@
197270
projectRoot = "";
198271
targets = (
199272
74EC156D225DC31D001A6439 /* XcodeOpener */,
273+
740340BF225F277C00193BC1 /* XcodeOpenerLauncher */,
200274
);
201275
};
202276
/* End PBXProject section */
203277

204278
/* Begin PBXResourcesBuildPhase section */
279+
740340BE225F277C00193BC1 /* Resources */ = {
280+
isa = PBXResourcesBuildPhase;
281+
buildActionMask = 2147483647;
282+
files = (
283+
740340C7225F277E00193BC1 /* Assets.xcassets in Resources */,
284+
740340CA225F277E00193BC1 /* Main.storyboard in Resources */,
285+
);
286+
runOnlyForDeploymentPostprocessing = 0;
287+
};
205288
74EC156C225DC31D001A6439 /* Resources */ = {
206289
isa = PBXResourcesBuildPhase;
207290
buildActionMask = 2147483647;
@@ -216,11 +299,21 @@
216299
/* End PBXResourcesBuildPhase section */
217300

218301
/* Begin PBXSourcesBuildPhase section */
302+
740340BC225F277C00193BC1 /* Sources */ = {
303+
isa = PBXSourcesBuildPhase;
304+
buildActionMask = 2147483647;
305+
files = (
306+
740340C3225F277C00193BC1 /* AppDelegate.swift in Sources */,
307+
);
308+
runOnlyForDeploymentPostprocessing = 0;
309+
};
219310
74EC156A225DC31D001A6439 /* Sources */ = {
220311
isa = PBXSourcesBuildPhase;
221312
buildActionMask = 2147483647;
222313
files = (
314+
740340BB225F254E00193BC1 /* AppModeSwitcher.swift in Sources */,
223315
74A5B7F3225DE7E600293442 /* XcodeAlias.swift in Sources */,
316+
740340B9225F1F2800193BC1 /* LaunchAtLogin.swift in Sources */,
224317
741AE957225DC4B800DDE7EA /* ApplicationOpener.swift in Sources */,
225318
74EC1574225DC31D001A6439 /* ViewController.swift in Sources */,
226319
74A5B802225E01D600293442 /* KeyValueStoreType.swift in Sources */,
@@ -239,6 +332,14 @@
239332
/* End PBXSourcesBuildPhase section */
240333

241334
/* Begin PBXVariantGroup section */
335+
740340C8225F277E00193BC1 /* Main.storyboard */ = {
336+
isa = PBXVariantGroup;
337+
children = (
338+
740340C9225F277E00193BC1 /* Base */,
339+
);
340+
name = Main.storyboard;
341+
sourceTree = "<group>";
342+
};
242343
74EC1577225DC31F001A6439 /* Main.storyboard */ = {
243344
isa = PBXVariantGroup;
244345
children = (
@@ -250,6 +351,44 @@
250351
/* End PBXVariantGroup section */
251352

252353
/* Begin XCBuildConfiguration section */
354+
740340CE225F277E00193BC1 /* Debug */ = {
355+
isa = XCBuildConfiguration;
356+
buildSettings = {
357+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
358+
CODE_SIGN_ENTITLEMENTS = XcodeOpenerLauncher/XcodeOpenerLauncher.entitlements;
359+
CODE_SIGN_STYLE = Automatic;
360+
COMBINE_HIDPI_IMAGES = YES;
361+
DEVELOPMENT_TEAM = NM8T9PQ2C4;
362+
INFOPLIST_FILE = XcodeOpenerLauncher/Info.plist;
363+
LD_RUNPATH_SEARCH_PATHS = (
364+
"$(inherited)",
365+
"@executable_path/../Frameworks",
366+
);
367+
PRODUCT_BUNDLE_IDENTIFIER = app.chen.osx.XcodeOpenerLauncher;
368+
PRODUCT_NAME = "$(TARGET_NAME)";
369+
SWIFT_VERSION = 4.2;
370+
};
371+
name = Debug;
372+
};
373+
740340CF225F277E00193BC1 /* Release */ = {
374+
isa = XCBuildConfiguration;
375+
buildSettings = {
376+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
377+
CODE_SIGN_ENTITLEMENTS = XcodeOpenerLauncher/XcodeOpenerLauncher.entitlements;
378+
CODE_SIGN_STYLE = Automatic;
379+
COMBINE_HIDPI_IMAGES = YES;
380+
DEVELOPMENT_TEAM = NM8T9PQ2C4;
381+
INFOPLIST_FILE = XcodeOpenerLauncher/Info.plist;
382+
LD_RUNPATH_SEARCH_PATHS = (
383+
"$(inherited)",
384+
"@executable_path/../Frameworks",
385+
);
386+
PRODUCT_BUNDLE_IDENTIFIER = app.chen.osx.XcodeOpenerLauncher;
387+
PRODUCT_NAME = "$(TARGET_NAME)";
388+
SWIFT_VERSION = 4.2;
389+
};
390+
name = Release;
391+
};
253392
74EC157C225DC31F001A6439 /* Debug */ = {
254393
isa = XCBuildConfiguration;
255394
buildSettings = {
@@ -308,6 +447,7 @@
308447
SDKROOT = macosx;
309448
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
310449
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
450+
SWIFT_VERSION = 4.2;
311451
};
312452
name = Debug;
313453
};
@@ -362,6 +502,7 @@
362502
SDKROOT = macosx;
363503
SWIFT_COMPILATION_MODE = wholemodule;
364504
SWIFT_OPTIMIZATION_LEVEL = "-O";
505+
SWIFT_VERSION = 4.2;
365506
};
366507
name = Release;
367508
};
@@ -379,7 +520,7 @@
379520
);
380521
PRODUCT_BUNDLE_IDENTIFIER = app.chen.osx.XcodeOpener;
381522
PRODUCT_NAME = "$(TARGET_NAME)";
382-
SWIFT_VERSION = 5.0;
523+
SWIFT_VERSION = 4.2;
383524
};
384525
name = Debug;
385526
};
@@ -397,13 +538,22 @@
397538
);
398539
PRODUCT_BUNDLE_IDENTIFIER = app.chen.osx.XcodeOpener;
399540
PRODUCT_NAME = "$(TARGET_NAME)";
400-
SWIFT_VERSION = 5.0;
541+
SWIFT_VERSION = 4.2;
401542
};
402543
name = Release;
403544
};
404545
/* End XCBuildConfiguration section */
405546

406547
/* Begin XCConfigurationList section */
548+
740340CD225F277E00193BC1 /* Build configuration list for PBXNativeTarget "XcodeOpenerLauncher" */ = {
549+
isa = XCConfigurationList;
550+
buildConfigurations = (
551+
740340CE225F277E00193BC1 /* Debug */,
552+
740340CF225F277E00193BC1 /* Release */,
553+
);
554+
defaultConfigurationIsVisible = 0;
555+
defaultConfigurationName = Release;
556+
};
407557
74EC1569225DC31D001A6439 /* Build configuration list for PBXProject "XcodeOpener" */ = {
408558
isa = XCConfigurationList;
409559
buildConfigurations = (
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "1010"
4+
version = "1.3">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES">
8+
<BuildActionEntries>
9+
<BuildActionEntry
10+
buildForTesting = "YES"
11+
buildForRunning = "YES"
12+
buildForProfiling = "YES"
13+
buildForArchiving = "YES"
14+
buildForAnalyzing = "YES">
15+
<BuildableReference
16+
BuildableIdentifier = "primary"
17+
BlueprintIdentifier = "74EC156D225DC31D001A6439"
18+
BuildableName = "XcodeOpener.app"
19+
BlueprintName = "XcodeOpener"
20+
ReferencedContainer = "container:XcodeOpener.xcodeproj">
21+
</BuildableReference>
22+
</BuildActionEntry>
23+
</BuildActionEntries>
24+
</BuildAction>
25+
<TestAction
26+
buildConfiguration = "Debug"
27+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
28+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
29+
shouldUseLaunchSchemeArgsEnv = "YES">
30+
<Testables>
31+
</Testables>
32+
<MacroExpansion>
33+
<BuildableReference
34+
BuildableIdentifier = "primary"
35+
BlueprintIdentifier = "74EC156D225DC31D001A6439"
36+
BuildableName = "XcodeOpener.app"
37+
BlueprintName = "XcodeOpener"
38+
ReferencedContainer = "container:XcodeOpener.xcodeproj">
39+
</BuildableReference>
40+
</MacroExpansion>
41+
<AdditionalOptions>
42+
</AdditionalOptions>
43+
</TestAction>
44+
<LaunchAction
45+
buildConfiguration = "Debug"
46+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
47+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
48+
launchStyle = "0"
49+
useCustomWorkingDirectory = "NO"
50+
ignoresPersistentStateOnLaunch = "NO"
51+
debugDocumentVersioning = "YES"
52+
debugServiceExtension = "internal"
53+
allowLocationSimulation = "YES">
54+
<BuildableProductRunnable
55+
runnableDebuggingMode = "0">
56+
<BuildableReference
57+
BuildableIdentifier = "primary"
58+
BlueprintIdentifier = "74EC156D225DC31D001A6439"
59+
BuildableName = "XcodeOpener.app"
60+
BlueprintName = "XcodeOpener"
61+
ReferencedContainer = "container:XcodeOpener.xcodeproj">
62+
</BuildableReference>
63+
</BuildableProductRunnable>
64+
<AdditionalOptions>
65+
</AdditionalOptions>
66+
</LaunchAction>
67+
<ProfileAction
68+
buildConfiguration = "Release"
69+
shouldUseLaunchSchemeArgsEnv = "YES"
70+
savedToolIdentifier = ""
71+
useCustomWorkingDirectory = "NO"
72+
debugDocumentVersioning = "YES">
73+
<BuildableProductRunnable
74+
runnableDebuggingMode = "0">
75+
<BuildableReference
76+
BuildableIdentifier = "primary"
77+
BlueprintIdentifier = "74EC156D225DC31D001A6439"
78+
BuildableName = "XcodeOpener.app"
79+
BlueprintName = "XcodeOpener"
80+
ReferencedContainer = "container:XcodeOpener.xcodeproj">
81+
</BuildableReference>
82+
</BuildableProductRunnable>
83+
</ProfileAction>
84+
<AnalyzeAction
85+
buildConfiguration = "Debug">
86+
</AnalyzeAction>
87+
<ArchiveAction
88+
buildConfiguration = "Release"
89+
revealArchiveInOrganizer = "YES">
90+
</ArchiveAction>
91+
</Scheme>

0 commit comments

Comments
 (0)