Skip to content

Commit abb7052

Browse files
authored
Merge pull request #417 from jalopezcar/release-1.2.5
Spotify iOS SDK v1.2.5
2 parents cdbdcb3 + 2ab6860 commit abb7052

File tree

125 files changed

+433
-633
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+433
-633
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Changelog
22

3+
## Spotify iOS SDK v1.2.5
4+
5+
What's New:
6+
7+
- Adds Privacy Manifest (xcframework only)
8+
39
## Spotify iOS SDK v1.2.4
410

511
What's New:

DemoProjects/NowPlayingView/NowPlayingView.xcodeproj/project.pbxproj

Lines changed: 31 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,13 @@
33
archiveVersion = 1;
44
classes = {
55
};
6-
objectVersion = 46;
6+
objectVersion = 54;
77
objects = {
88

99
/* Begin PBXBuildFile section */
10+
12EE82852BCD44D7003F62A0 /* SpotifyiOS.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 12EE82842BCD44D7003F62A0 /* SpotifyiOS.xcframework */; };
11+
12EE82862BCD44D7003F62A0 /* SpotifyiOS.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 12EE82842BCD44D7003F62A0 /* SpotifyiOS.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
1012
24C075932344A28C00691840 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24C075922344A28C00691840 /* SceneDelegate.swift */; };
11-
24DFF77423F2F0DA00FF073B /* SpotifyiOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 24DFF77323F2F0DA00FF073B /* SpotifyiOS.framework */; };
1213
2BAD4B251CFD66290033DE75 /* My-Extensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2BAD4B241CFD66290033DE75 /* My-Extensions.swift */; };
1314
5468B2592110D8440097D1D3 /* SpeedPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5468B2582110D8440097D1D3 /* SpeedPickerViewController.swift */; };
1415
998FF9BE1D3E54AC003E339B /* ConnectionStatusIndicatorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 998FF9BD1D3E54AC003E339B /* ConnectionStatusIndicatorView.swift */; };
@@ -23,9 +24,23 @@
2324
F6EB42E31D2BB0D800F57322 /* ContentCollectionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6EB42E21D2BB0D800F57322 /* ContentCollectionViewController.swift */; };
2425
/* End PBXBuildFile section */
2526

27+
/* Begin PBXCopyFilesBuildPhase section */
28+
12EE82872BCD44D7003F62A0 /* Embed Frameworks */ = {
29+
isa = PBXCopyFilesBuildPhase;
30+
buildActionMask = 2147483647;
31+
dstPath = "";
32+
dstSubfolderSpec = 10;
33+
files = (
34+
12EE82862BCD44D7003F62A0 /* SpotifyiOS.xcframework in Embed Frameworks */,
35+
);
36+
name = "Embed Frameworks";
37+
runOnlyForDeploymentPostprocessing = 0;
38+
};
39+
/* End PBXCopyFilesBuildPhase section */
40+
2641
/* Begin PBXFileReference section */
42+
12EE82842BCD44D7003F62A0 /* SpotifyiOS.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = SpotifyiOS.xcframework; path = ../../SpotifyiOS.xcframework; sourceTree = "<group>"; };
2743
24C075922344A28C00691840 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = "<group>"; };
28-
24DFF77323F2F0DA00FF073B /* SpotifyiOS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SpotifyiOS.framework; path = ../../SpotifyiOS.framework; sourceTree = "<group>"; };
2944
2BAD4B241CFD66290033DE75 /* My-Extensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "My-Extensions.swift"; sourceTree = "<group>"; };
3045
5468B2582110D8440097D1D3 /* SpeedPickerViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SpeedPickerViewController.swift; sourceTree = "<group>"; };
3146
998FF9BD1D3E54AC003E339B /* ConnectionStatusIndicatorView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConnectionStatusIndicatorView.swift; sourceTree = "<group>"; };
@@ -48,7 +63,7 @@
4863
isa = PBXFrameworksBuildPhase;
4964
buildActionMask = 2147483647;
5065
files = (
51-
24DFF77423F2F0DA00FF073B /* SpotifyiOS.framework in Frameworks */,
66+
12EE82852BCD44D7003F62A0 /* SpotifyiOS.xcframework in Frameworks */,
5267
);
5368
runOnlyForDeploymentPostprocessing = 0;
5469
};
@@ -97,7 +112,7 @@
97112
F4F974011CAD60580036411D /* Frameworks */ = {
98113
isa = PBXGroup;
99114
children = (
100-
24DFF77323F2F0DA00FF073B /* SpotifyiOS.framework */,
115+
12EE82842BCD44D7003F62A0 /* SpotifyiOS.xcframework */,
101116
);
102117
name = Frameworks;
103118
sourceTree = "<group>";
@@ -112,6 +127,7 @@
112127
F4F973E81CAD60320036411D /* Sources */,
113128
F4F973E91CAD60320036411D /* Frameworks */,
114129
F4F973EA1CAD60320036411D /* Resources */,
130+
12EE82872BCD44D7003F62A0 /* Embed Frameworks */,
115131
);
116132
buildRules = (
117133
);
@@ -325,7 +341,8 @@
325341
MTL_ENABLE_DEBUG_INFO = NO;
326342
OTHER_LDFLAGS = "-ObjC";
327343
SDKROOT = iphoneos;
328-
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
344+
SWIFT_COMPILATION_MODE = wholemodule;
345+
SWIFT_OPTIMIZATION_LEVEL = "-O";
329346
VALIDATE_PRODUCT = YES;
330347
};
331348
name = Release;
@@ -337,7 +354,10 @@
337354
CLANG_ENABLE_MODULES = YES;
338355
DEVELOPMENT_TEAM = 2FNC3A47ZF;
339356
INFOPLIST_FILE = NowPlayingView/Info.plist;
340-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
357+
LD_RUNPATH_SEARCH_PATHS = (
358+
"$(inherited)",
359+
"@executable_path/Frameworks",
360+
);
341361
PRODUCT_BUNDLE_IDENTIFIER = com.testappremote;
342362
PRODUCT_NAME = "$(TARGET_NAME)";
343363
SWIFT_OBJC_BRIDGING_HEADER = "NowPlayingView/NowPlayingView-Bridging-Header.h";
@@ -353,7 +373,10 @@
353373
CLANG_ENABLE_MODULES = YES;
354374
DEVELOPMENT_TEAM = 2FNC3A47ZF;
355375
INFOPLIST_FILE = NowPlayingView/Info.plist;
356-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
376+
LD_RUNPATH_SEARCH_PATHS = (
377+
"$(inherited)",
378+
"@executable_path/Frameworks",
379+
);
357380
PRODUCT_BUNDLE_IDENTIFIER = com.testappremote;
358381
PRODUCT_NAME = "$(TARGET_NAME)";
359382
SWIFT_OBJC_BRIDGING_HEADER = "NowPlayingView/NowPlayingView-Bridging-Header.h";

DemoProjects/SPTLoginSampleApp/SPTLoginSampleApp.xcodeproj/project.pbxproj

Lines changed: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,19 @@
33
archiveVersion = 1;
44
classes = {
55
};
6-
objectVersion = 48;
6+
objectVersion = 54;
77
objects = {
88

99
/* Begin PBXBuildFile section */
10+
12EE82892BCD450F003F62A0 /* SpotifyiOS.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 12EE82882BCD450F003F62A0 /* SpotifyiOS.xcframework */; };
11+
12EE828A2BCD450F003F62A0 /* SpotifyiOS.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 12EE82882BCD450F003F62A0 /* SpotifyiOS.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
1012
35029C521F5F476800383619 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 35029C511F5F476800383619 /* AppDelegate.m */; };
1113
35029C551F5F476800383619 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 35029C541F5F476800383619 /* ViewController.m */; };
1214
35029C5A1F5F476800383619 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 35029C591F5F476800383619 /* Assets.xcassets */; };
1315
35029C5D1F5F476800383619 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 35029C5B1F5F476800383619 /* LaunchScreen.storyboard */; };
1416
35029C601F5F476800383619 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 35029C5F1F5F476800383619 /* main.m */; };
1517
3518DFFB1F99674A00A5313C /* ConnectButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 3518DFFA1F99674A00A5313C /* ConnectButton.m */; };
1618
3518DFFE1F99983F00A5313C /* ConnectView.m in Sources */ = {isa = PBXBuildFile; fileRef = 3518DFFD1F99983F00A5313C /* ConnectView.m */; };
17-
5413459A20D100AD00FD05F7 /* SpotifyiOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5413459920D100AD00FD05F7 /* SpotifyiOS.framework */; };
1819
/* End PBXBuildFile section */
1920

2021
/* Begin PBXContainerItemProxy section */
@@ -34,13 +35,15 @@
3435
dstPath = "";
3536
dstSubfolderSpec = 10;
3637
files = (
38+
12EE828A2BCD450F003F62A0 /* SpotifyiOS.xcframework in Embed Frameworks */,
3739
);
3840
name = "Embed Frameworks";
3941
runOnlyForDeploymentPostprocessing = 0;
4042
};
4143
/* End PBXCopyFilesBuildPhase section */
4244

4345
/* Begin PBXFileReference section */
46+
12EE82882BCD450F003F62A0 /* SpotifyiOS.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = SpotifyiOS.xcframework; path = ../../SpotifyiOS.xcframework; sourceTree = "<group>"; };
4447
35029C4D1F5F476800383619 /* SPTLoginSampleApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SPTLoginSampleApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
4548
35029C501F5F476800383619 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
4649
35029C511F5F476800383619 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
@@ -54,7 +57,6 @@
5457
3518DFFA1F99674A00A5313C /* ConnectButton.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ConnectButton.m; sourceTree = "<group>"; };
5558
3518DFFC1F99983F00A5313C /* ConnectView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ConnectView.h; sourceTree = "<group>"; };
5659
3518DFFD1F99983F00A5313C /* ConnectView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ConnectView.m; sourceTree = "<group>"; };
57-
5413459920D100AD00FD05F7 /* SpotifyiOS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SpotifyiOS.framework; path = ../../SpotifyiOS.framework; sourceTree = "<group>"; };
5860
54D50C4E20C87A480035B73A /* SPTLoginSampleAppUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SPTLoginSampleAppUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
5961
/* End PBXFileReference section */
6062

@@ -63,7 +65,7 @@
6365
isa = PBXFrameworksBuildPhase;
6466
buildActionMask = 2147483647;
6567
files = (
66-
5413459A20D100AD00FD05F7 /* SpotifyiOS.framework in Frameworks */,
68+
12EE82892BCD450F003F62A0 /* SpotifyiOS.xcframework in Frameworks */,
6769
);
6870
runOnlyForDeploymentPostprocessing = 0;
6971
};
@@ -117,7 +119,7 @@
117119
F7AACE2064F336ABCC7C6D5C /* Frameworks */ = {
118120
isa = PBXGroup;
119121
children = (
120-
5413459920D100AD00FD05F7 /* SpotifyiOS.framework */,
122+
12EE82882BCD450F003F62A0 /* SpotifyiOS.xcframework */,
121123
);
122124
name = Frameworks;
123125
sourceTree = "<group>";
@@ -383,7 +385,10 @@
383385
DEVELOPMENT_TEAM = 2FNC3A47ZF;
384386
INFOPLIST_FILE = SPTLoginSampleApp/Info.plist;
385387
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
386-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
388+
LD_RUNPATH_SEARCH_PATHS = (
389+
"$(inherited)",
390+
"@executable_path/Frameworks",
391+
);
387392
PRODUCT_BUNDLE_IDENTIFIER = com.spotify.sdk.SPTLoginSampleApp;
388393
PRODUCT_NAME = "$(TARGET_NAME)";
389394
TARGETED_DEVICE_FAMILY = "1,2";
@@ -399,7 +404,10 @@
399404
DEVELOPMENT_TEAM = 2FNC3A47ZF;
400405
INFOPLIST_FILE = SPTLoginSampleApp/Info.plist;
401406
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
402-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
407+
LD_RUNPATH_SEARCH_PATHS = (
408+
"$(inherited)",
409+
"@executable_path/Frameworks",
410+
);
403411
PRODUCT_BUNDLE_IDENTIFIER = com.spotify.sdk.SPTLoginSampleApp;
404412
PRODUCT_NAME = "$(TARGET_NAME)";
405413
TARGETED_DEVICE_FAMILY = "1,2";
@@ -417,7 +425,11 @@
417425
DEVELOPMENT_TEAM = 2FNC3A47ZF;
418426
INFOPLIST_FILE = SPTLoginSampleAppUITests/Info.plist;
419427
IPHONEOS_DEPLOYMENT_TARGET = 11.4;
420-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
428+
LD_RUNPATH_SEARCH_PATHS = (
429+
"$(inherited)",
430+
"@executable_path/Frameworks",
431+
"@loader_path/Frameworks",
432+
);
421433
PRODUCT_BUNDLE_IDENTIFIER = Spotify.SPTLoginSampleAppUITests;
422434
PRODUCT_NAME = "$(TARGET_NAME)";
423435
TARGETED_DEVICE_FAMILY = "1,2";
@@ -435,7 +447,11 @@
435447
DEVELOPMENT_TEAM = 2FNC3A47ZF;
436448
INFOPLIST_FILE = SPTLoginSampleAppUITests/Info.plist;
437449
IPHONEOS_DEPLOYMENT_TARGET = 11.4;
438-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
450+
LD_RUNPATH_SEARCH_PATHS = (
451+
"$(inherited)",
452+
"@executable_path/Frameworks",
453+
"@loader_path/Frameworks",
454+
);
439455
PRODUCT_BUNDLE_IDENTIFIER = Spotify.SPTLoginSampleAppUITests;
440456
PRODUCT_NAME = "$(TARGET_NAME)";
441457
TARGETED_DEVICE_FAMILY = "1,2";

DemoProjects/SPTLoginSampleAppSwift/SPTLoginSampleAppSwift.xcodeproj/project.pbxproj

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@
33
archiveVersion = 1;
44
classes = {
55
};
6-
objectVersion = 48;
6+
objectVersion = 54;
77
objects = {
88

99
/* Begin PBXBuildFile section */
10-
541345A220D2A80300FD05F7 /* SpotifyiOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 541345A120D2A80300FD05F7 /* SpotifyiOS.framework */; };
10+
12EE828C2BCD4536003F62A0 /* SpotifyiOS.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 12EE828B2BCD4536003F62A0 /* SpotifyiOS.xcframework */; };
11+
12EE828D2BCD4536003F62A0 /* SpotifyiOS.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 12EE828B2BCD4536003F62A0 /* SpotifyiOS.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
1112
54AC7EE020081243008CD692 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54AC7EDF20081243008CD692 /* AppDelegate.swift */; };
1213
54AC7EE220081243008CD692 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54AC7EE120081243008CD692 /* ViewController.swift */; };
1314
54AC7EE720081243008CD692 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 54AC7EE620081243008CD692 /* Assets.xcassets */; };
@@ -22,15 +23,16 @@
2223
dstPath = "";
2324
dstSubfolderSpec = 10;
2425
files = (
26+
12EE828D2BCD4536003F62A0 /* SpotifyiOS.xcframework in Embed Frameworks */,
2527
);
2628
name = "Embed Frameworks";
2729
runOnlyForDeploymentPostprocessing = 0;
2830
};
2931
/* End PBXCopyFilesBuildPhase section */
3032

3133
/* Begin PBXFileReference section */
34+
12EE828B2BCD4536003F62A0 /* SpotifyiOS.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = SpotifyiOS.xcframework; path = ../../SpotifyiOS.xcframework; sourceTree = "<group>"; };
3235
5413459E20D1049200FD05F7 /* SPTLoginSampleAppSwift-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "SPTLoginSampleAppSwift-Bridging-Header.h"; sourceTree = "<group>"; };
33-
541345A120D2A80300FD05F7 /* SpotifyiOS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SpotifyiOS.framework; path = ../../SpotifyiOS.framework; sourceTree = "<group>"; };
3436
54AC7EDC20081243008CD692 /* SPTLoginSampleAppSwift.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SPTLoginSampleAppSwift.app; sourceTree = BUILT_PRODUCTS_DIR; };
3537
54AC7EDF20081243008CD692 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
3638
54AC7EE120081243008CD692 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
@@ -45,7 +47,7 @@
4547
isa = PBXFrameworksBuildPhase;
4648
buildActionMask = 2147483647;
4749
files = (
48-
541345A220D2A80300FD05F7 /* SpotifyiOS.framework in Frameworks */,
50+
12EE828C2BCD4536003F62A0 /* SpotifyiOS.xcframework in Frameworks */,
4951
);
5052
runOnlyForDeploymentPostprocessing = 0;
5153
};
@@ -55,7 +57,7 @@
5557
54073AB820C5D5300060E089 /* Frameworks */ = {
5658
isa = PBXGroup;
5759
children = (
58-
541345A120D2A80300FD05F7 /* SpotifyiOS.framework */,
60+
12EE828B2BCD4536003F62A0 /* SpotifyiOS.xcframework */,
5961
);
6062
name = Frameworks;
6163
sourceTree = "<group>";
@@ -295,8 +297,9 @@
295297
MTL_ENABLE_DEBUG_INFO = NO;
296298
OTHER_LDFLAGS = "-ObjC";
297299
SDKROOT = iphoneos;
300+
SWIFT_COMPILATION_MODE = wholemodule;
298301
SWIFT_OBJC_BRIDGING_HEADER = "SPTLoginSampleAppSwift/SPTLoginSampleAppSwift-Bridging-Header.h";
299-
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
302+
SWIFT_OPTIMIZATION_LEVEL = "-O";
300303
VALIDATE_PRODUCT = YES;
301304
};
302305
name = Release;
@@ -308,7 +311,10 @@
308311
CODE_SIGN_STYLE = Automatic;
309312
DEVELOPMENT_TEAM = 2FNC3A47ZF;
310313
INFOPLIST_FILE = SPTLoginSampleAppSwift/Info.plist;
311-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
314+
LD_RUNPATH_SEARCH_PATHS = (
315+
"$(inherited)",
316+
"@executable_path/Frameworks",
317+
);
312318
PRODUCT_BUNDLE_IDENTIFIER = com.spotify.sdk.SPTLoginSampleApp;
313319
PRODUCT_NAME = "$(TARGET_NAME)";
314320
SWIFT_VERSION = 5.0;
@@ -323,7 +329,10 @@
323329
CODE_SIGN_STYLE = Automatic;
324330
DEVELOPMENT_TEAM = 2FNC3A47ZF;
325331
INFOPLIST_FILE = SPTLoginSampleAppSwift/Info.plist;
326-
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
332+
LD_RUNPATH_SEARCH_PATHS = (
333+
"$(inherited)",
334+
"@executable_path/Frameworks",
335+
);
327336
PRODUCT_BUNDLE_IDENTIFIER = com.spotify.sdk.SPTLoginSampleApp;
328337
PRODUCT_NAME = "$(TARGET_NAME)";
329338
SWIFT_VERSION = 5.0;

SpotifyiOS.framework/Headers

Lines changed: 0 additions & 1 deletion
This file was deleted.
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,12 @@
88
@protocol SPTAppRemotePlayerAPI;
99
@protocol SPTAppRemoteUserAPI;
1010
@protocol SPTAppRemoteContentAPI;
11+
@protocol SPTAppRemoteConnectivityAPI;
1112

1213
NS_ASSUME_NONNULL_BEGIN
1314

1415
extern NSString * const SPTAppRemoteAccessTokenKey;
16+
extern NSString * const SPTAppRemoteErrorKey;
1517
extern NSString * const SPTAppRemoteErrorDescriptionKey;
1618

1719
/// The severity of log messages that the App Remote should log to console.
@@ -142,13 +144,26 @@ typedef NS_ENUM(NSUInteger, SPTAppRemoteLogLevel) {
142144
*/
143145
- (void)connect;
144146

147+
/**
148+
* Attempts to connect to the Spotify application with a given session identifier.
149+
*
150+
* @discussion If the Spotify app is not running you will need to use authorizeAndPlayURI: to wake it up.
151+
*
152+
* @discussion If `authorizeAndPlayURI` was used without a given session identifier, `connect` should be used instead of this method.
153+
*
154+
* @param sessionIdentifier The unique session identifier which was used when calling
155+
* `authorizeAndPlayURI:asRadio:additionalScopes:sessionIdentifier:`
156+
*/
157+
- (void)connectWithSessionIdentifier:(NSUUID *)sessionIdentifier;
158+
145159
/**
146160
* Disconnect from the Spotify application
147161
*/
148162
- (void)disconnect;
149163

150164
/**
151165
* Open Spotify app to obtain access token and start playback.
166+
* The passed URI will start playing unless Spotify is already playing.
152167
*
153168
* @param URI The URI to play. Use a blank string to attempt to play the user's last song
154169
*
@@ -185,6 +200,24 @@ typedef NS_ENUM(NSUInteger, SPTAppRemoteLogLevel) {
185200
asRadio:(BOOL)asRadio
186201
additionalScopes:(nullable NSArray<NSString *> *)additionalScopes;
187202

203+
/**
204+
* Open Spotify app to obtain access token and start playback.
205+
*
206+
* @param playURI The URI to play. Use a blank string to attempt to play the user's last song
207+
* @param asRadio `YES` to start radio for the given URI.
208+
* @param additionalScopes An array of scopes in addition to `app-remote-control`. Can be nil if you only need `app-remote-control`
209+
* @param sessionIdentifier An optional unique identifier for this specific session, which is used for analytics purposes. Every new attempt to
210+
* connect to the Spotify app should have a new identifier, but the identifier used here should then be reused for the accompanied call to
211+
* `connectWithSessionIdentifier:`.
212+
*
213+
* @return `YES` if the Spotify app is installed and an authorization attempt can be made, otherwise `NO`.
214+
* Note: The return `BOOL` here is not a measure of whether or not authentication succeeded, only a check if
215+
* the Spotify app is installed and can attempt to handle the authorization request.
216+
*/
217+
- (BOOL)authorizeAndPlayURI:(NSString *)playURI
218+
asRadio:(BOOL)asRadio
219+
additionalScopes:(nullable NSArray<NSString *> *)additionalScopes
220+
sessionIdentifier:(nullable NSUUID *)sessionIdentifier;
188221
/**
189222
* Parse out an access token or error description from a url passed to application:openURL:options:
190223
*
@@ -230,6 +263,14 @@ typedef NS_ENUM(NSUInteger, SPTAppRemoteLogLevel) {
230263
*/
231264
@property (nullable, nonatomic, strong, readonly) id<SPTAppRemoteContentAPI> contentAPI;
232265

266+
/**
267+
* The API used to get connectivity data from the Spotify app.
268+
*
269+
* @note Will only be populated when the App Remote is connected. If you retain this object you must release it on
270+
* disconnect.
271+
*/
272+
@property (nullable, nonatomic, strong, readonly) id<SPTAppRemoteConnectivityAPI> connectivityAPI;
273+
233274
#pragma mark Unavailable initializers
234275

235276
- (instancetype)init NS_UNAVAILABLE;

0 commit comments

Comments
 (0)