Fixed metatdata

This commit is contained in:
Rasmus Krämer
2022-04-14 12:24:27 +02:00
parent 736af85855
commit 6c65c8a33e
9 changed files with 51 additions and 16 deletions
-2
View File
@@ -8,8 +8,6 @@
import Foundation
import RealmSwift
extension String: Error {}
class Database {
public static let realmQueue = DispatchQueue(label: "realm-queue")
+20
View File
@@ -0,0 +1,20 @@
//
// Extensions.swift
// App
//
// Created by Rasmus Krämer on 14.04.22.
//
import Foundation
extension String: Error {}
extension Encodable {
func asDictionary() throws -> [String: Any] {
let data = try JSONEncoder().encode(self)
guard let dictionary = try JSONSerialization.jsonObject(with: data, options: .allowFragments) as? [String: Any] else {
throw NSError()
}
return dictionary
}
}
+8 -2
View File
@@ -18,6 +18,7 @@ func getData(from url: URL, completion: @escaping (UIImage?) -> Void) {
struct NowPlayingMetadata {
var id: String
var itemId: String
var artworkUrl: String?
var title: String
var author: String?
@@ -28,13 +29,18 @@ class NowPlayingInfo {
private static var nowPlayingInfo: [String: Any] = [:]
public static func setSessionMetadata(metadata: NowPlayingMetadata) {
setMetadata(artwork: nil, metadata: nil)
setMetadata(artwork: nil, metadata: metadata)
/*
if !shouldFetchCover(id: metadata.id) || metadata.artworkUrl == nil {
return
}
*/
guard let url = URL(string: "\(Store.serverConfig.address)/api/items/\(metadata.itemId)/cover?token=\(Store.serverConfig.token)") else {
return
}
guard let url = URL(string: metadata.artworkUrl!) else { return }
getData(from: url) { [self] image in
guard let downloadedImage = image else {
return
-1
View File
@@ -10,7 +10,6 @@ import RealmSwift
class Store {
@ThreadSafe private static var _serverConfig: ServerConnectionConfig?
// ONLY USE REALM IN Database.realmQueue OR ELSE THE APP WILL CRASH
public static var serverConfig: ServerConnectionConfig {
get {
if _serverConfig == nil {