洞察探索如何利用兼容微信生态的小程序容器,实现跨平台开发,助力金融和车联网行业的数字化转型。
1188
2022-11-03
SpotifyLogin是一个用于通过Spotify API进行身份验证的Swift 4框架
SpotifyLogin
SpotifyLogin is a Swift 5 Framework for authenticating with the Spotify API.
Usage of this framework is bound under the Developer Terms of Use.
Usage
Disclaimer
SpotifyLogin is appropriate for prototyping and non-commercial use only.
If your app is meant for commercial production usage, SpotifyLogin can NOT be used.
Compatibility
SpotifyLogin requires Xcode 10.2+. It is compatible with iOS 9 or later.
Pre-requisites
You will need to register your app in the Developer Portal.
Make sure to use a unique redirect url and to supply the bundle ID from your app.
After registering, you will receive a client ID and a client secret.
Set up SpotifyLogin
Set up SpotifyLogin using any of the methods detailed below (Cocoapods / Carthage / manually).
Set up info.plist
In Xcode, go to your app's target and select the Info tab. At the bottom, of the screen you will find URL Types, expand the list and create a new one.
Add the app's identifer as the Identifier and the redirect url scheme in URL schemes.
Set up your AppDelegate
Add the following to your app delegate:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { SpotifyLogin.shared.configure(clientID: <#T##String#>, clientSecret: <#T##String#>, redirectURL: <#T##URL#>) return true}func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool { let handled = SpotifyLogin.shared.applicationOpenURL(url) { (error) in } return handled}
Check if a user is logged in.
You can retrieve an access token and check if a user is logged in by:
SpotifyLogin.shared.getAccessToken { (accessToken, error) in if error != nil { // User is not logged in, show log in flow. }}
This also automatically takes care of renewing expired tokens.
Log in / Log out
To add the default log in button:
let button = SpotifyLoginButton(viewController: self, scopes: [.streaming, .userLibraryRead])self.view.addSubview(button)
The scopes define the set of permissions your app will be able to use. For more information about available scopes, see Scopes Documentation
To log out:
SpotifyLogin.shared.logout()
Update UI after successful log in.
The log in flow is completed in applicationOpenURL. To respond to a successful log in, you can add your own code in the completion handler or respond to the SpotifyLoginSuccessful notification:
NotificationCenter.default.addObserver(self, selector: #selector(loginSuccessful), name: .SpotifyLoginSuccessful, object: nil)
Additional features
Access the current user's username:
let username = SpotifyLogin.shared.username
To trigger the log in flow from a custom action:
SpotifyLoginPresenter.login(from: self, scopes: [.streaming, .userLibraryRead])
Setting up
Setting up with CocoaPods
source 'https://github.com/CocoaPods/Specs.git'pod 'SpotifyLogin', '~> 0.1'
Setting up with Carthage
Carthage is a decentralized dependency manager that automates the process of adding frameworks to your Cocoa application.
You can install Carthage with Homebrew using the following command:
$ brew update$ brew install carthage
To integrate SpotifyLogin into your Xcode project using Carthage, specify it in your Cartfile:
github "spotify/SpotifyLogin"
Code of conduct
This project adheres to the Open Code of Conduct. By contributing, you are expected to honor this code.
Additional information
Spotify Developer Portal | API Reference
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~