ค้นพบแอพ Spotify ที่ปรับแต่งที่ดีที่สุดเพื่อเพลิดเพลินกับ Spotify Premium ฟรี ดาวน์โหลด Spotify ++ สำหรับ iOS 18, iOS 17, iOS 16 และ iOS 15 ในปี 2024 ไม่จำเป็นต้องมีการแหกคุก Spotify ++ รุ่นเหล่านี้เข้ากันได้กับ iPhone และ iPads ทั้งหมด
Spotify ++ สำหรับ iOS เป็นรุ่นที่แก้ไขของ Spotify ที่ออกแบบมาสำหรับอุปกรณ์ iPhone, iPad และ iPod Pro นี่คือรายการที่อัปเดตล่าสุดของแอพ Spotify Tweaked ที่ดีที่สุดเพื่อประหยัดเวลา
ชื่อ tweaks spotify | คำอธิบาย |
---|---|
EeveeSpotify | การปรับแต่งนี้ทำให้ Spotify คิดว่าคุณมีการสมัครสมาชิกระดับพรีเมี่ยมอนุญาตให้ฟังฟรีเช่นเดียวกับ Spotilife นอกจากนี้ยังมีคุณสมบัติเพิ่มเติมเช่นเนื้อเพลงที่กำหนดเอง |
Spotify++ | Spotify ++ สำหรับ iOS เป็นแอพสตรีมมิ่งเพลงยอดนิยมที่ปรับเปลี่ยนสำหรับอุปกรณ์ Apple เช่น iPad และ iPhone พัฒนาโดยผู้สร้างบุคคลที่สามแอพที่ปรับแต่งนี้จะปลดล็อคคุณสมบัติพรีเมี่ยมของ Spotify โดยไม่ต้องสมัครสมาชิกทำให้คุณได้รับประสบการณ์โฆษณาและการเล่นเพลงตามความต้องการ |
Spotube | Spotube เป็นเครื่องเล่นเพลงสำหรับ iOS ที่มีการสนับสนุน Spotify API มันทำหน้าที่เป็นทางเลือกในการ Spotify อนุญาตให้ผู้ใช้เข้าถึงคอลเลกชันเพลงทั้งหมดของพวกเขาภายในเพลย์ลิสต์และห้องสมุด Spotify ของพวกเขา การใช้ประโยชน์จาก API Data ที่มีประสิทธิภาพของ Spotify, Spotube รวมเข้ากับแพลตฟอร์มเช่น YouTube, Piped.Video หรือ Jiosaavn อย่างราบรื่นให้บริการสตรีมมิ่งเพลงฟรีและฟรี |
Spotilife | SpotiLife เป็นแอพ Spotify iOS ที่จะลบโฆษณาลบการข้ามที่ จำกัด และปลดล็อคคุณสมบัติพรีเมี่ยมอื่น ๆ เกือบทุกรายการ |
เริ่มต้นด้วยเวอร์ชัน Spotify ++ แอพสกัดกั้นการร้องขอ Spotify เพื่อโหลดข้อมูลผู้ใช้ deserializes และแก้ไขพารามิเตอร์แบบเรียลไทม์ วิธีนี้มีความเสถียรและมีประสิทธิภาพสูงช่วยให้ผู้ใช้สามารถเลือกวิธีการแก้ไขพรีเมี่ยมแบบไดนามิกในการตั้งค่า Spotify ++
เมื่อเข้าสู่ระบบ Spotify จะดึงข้อมูลผู้ใช้และแคชไว้ในไฟล์ offline.bnk
ที่อยู่ในไดเรกทอรี /Library/Application Support/PersistentCache
มันเก็บข้อมูลในรูปแบบไบนารีที่เป็นกรรมสิทธิ์รวมถึงไบต์ความยาวก่อนแต่ละค่าและการประชุมอื่น ๆ คีย์เช่น player-license
, financial-product
, streaming-rules
และอื่น ๆ เป็นตัวกำหนดความสามารถของผู้ใช้
แพทช์ปรับแต่งไฟล์นี้ระหว่างการเริ่มต้น จากนั้น Spotify โหลดโดยสมมติว่าผู้ใช้สามารถเข้าถึงได้ระดับพรีเมี่ยม อย่างไรก็ตามเนื่องจากความท้าทายที่มีความยาวแบบไดนามิกและไบต์ที่หลากหลายการแก้ไขจริงอาจไม่เกิดขึ้น การปรับแต่งสกัดชื่อผู้ใช้จากไฟล์ offline.bnk
ปัจจุบัน BNK ปัจจุบันและแทรกลงใน premiumblank.bnk
ไฟล์ที่มีค่าพรีเมี่ยมที่ตั้งไว้ทั้งหมดทั้งหมดแทนที่ offline.bnk
หาก Spotify Reloads ข้อมูลผู้ใช้ผู้ใช้อาจถูกเปลี่ยนเป็นแผนฟรีทริกเกอร์ป๊อปอัปพร้อมตัวเลือกเพื่อรีสตาร์ทแอปและรีเซ็ตข้อมูลอย่างรวดเร็ว
นอกจากนี้ Tweak ตั้ง trackRowsEnabled
ใน SPTFreeTierArtistHubRemoteURLResolver
เป็น true
ทำให้ Spotify โหลดไม่เพียง แต่ติดตามชื่อในหน้าศิลปิน ในขณะที่ฟังก์ชั่นนี้สามารถหยุดได้คล้ายกับ SpotiLife แต่ก็ยังคงมีประสิทธิภาพในเวอร์ชัน Spotify 8.9 ## ล่าสุด (SpotiLife ยังปรับเปลี่ยน offline.bnk
แต่การเปลี่ยนแปลงไบต์ที่คลุมเครือซึ่งไม่มีผลกระทบต่อเวอร์ชันใหม่)
ในการเปิดลิงก์ Spotify ในแอพ sideloaded ให้ตรวจสอบการเปิดใช้งานและสิทธิ์การเข้าถึงในการตั้งค่า> Safari> ส่วนขยาย
ค้นพบ Spotify ++ เวอร์ชันที่ปรับปรุงแล้วของ Spotify ปรับแต่งสำหรับอุปกรณ์ iOS เพลิดเพลินไปกับคุณสมบัติพรีเมี่ยมโดยไม่ต้องสมัครสมาชิกเพลงและวิดีโอสตรีมมิ่งโฆษณาฟรีการเล่น HD และอื่น ๆ ดาวน์โหลดและติดตั้ง Spotify ++ ได้อย่างง่ายดายบน iPhone หรือ iPad ของคุณโดยไม่ต้องมีการแหกคุก รับการอัปเดตด้วยเวอร์ชัน iOS ล่าสุดและการเข้าถึงเนื้อหาพิเศษก่อนใคร
คุณสมบัติ | คำอธิบาย |
---|---|
คุณสมบัติพรีเมี่ยมฟรี | การเข้าถึงคุณสมบัติของ Spotify Premium โดยไม่ต้องสมัครสมาชิกรวมถึงการฟังโฆษณาฟรี |
ประสบการณ์ฟรีโฆษณา | กำจัดการหยุดชะงักโดยไม่มีโฆษณาในช่วงการสตรีมเพลงและวิดีโอ |
การเล่น HD | เพลิดเพลินไปกับคุณภาพเสียงและวิดีโอที่ชัดเจนในโหมด Full HD |
ข้ามไม่ จำกัด | ข้ามแทร็กโดยไม่มีข้อ จำกัด ให้คุณควบคุมเพลย์ลิสต์เพลงของคุณได้อย่างสมบูรณ์ |
นำเข้าเพลง | นำเข้าแทร็กได้อย่างง่ายดายจากที่เก็บข้อมูลของอุปกรณ์ของคุณไปยัง Spotify ++ ขยายห้องสมุดเพลงของคุณ |
ดาวน์โหลดฟรี | ดาวน์โหลด Spotify ++ ฟรีและปรับปรุงประสบการณ์ดนตรีของคุณโดยไม่มีค่าใช้จ่ายใด ๆ |
ไม่จำเป็นต้องมีการแหกคุก | ติดตั้ง Spotify ++ อย่างปลอดภัยบนอุปกรณ์ iOS ของคุณโดยไม่จำเป็นต้องแหกคุก |
ความเข้ากันได้ของ iOS | เข้ากันได้กับ iOS 15 และ iOS 16 เพื่อให้มั่นใจถึงประสิทธิภาพที่ดีที่สุดในอุปกรณ์ Apple ล่าสุด |
ไม่มีการสับเปลี่ยน | ฟังเพลงของคุณตามลำดับที่คุณต้องการโดยไม่มีคุณสมบัติการสับเปลี่ยนใน Spotify ++ |
ดาวน์โหลดรายการโปรด | บันทึกแทร็กที่ชื่นชอบสำหรับการฟังออฟไลน์โดยการดาวน์โหลดภายในแอพ |
ก่อนอื่นเรามาปรับปรุงโมเดล Song
ของเราเพื่อรวมคุณสมบัติเพิ่มเติมเช่น fileURL
สำหรับการเล่นเสียงและ isPlaying
สำหรับการติดตามสถานะการเล่นปัจจุบัน:
struct Song {
let id : Int
let title : String
let artist : String
let album : String
let duration : Int // in seconds
let artwork : String // image name or URL
let fileURL : URL // URL to audio file
var isPlaying : Bool = false
}
ต่อไปเรามาอัปเดตคลาส AudioPlayer
ของเราเพื่อรองรับคุณสมบัติการเล่นเสียงขั้นสูงเพิ่มเติมโดยใช้ AVPlayer
:
import AVFoundation
class AudioPlayer {
static let shared = AudioPlayer ( )
private var player : AVPlayer ?
private var currentSong : Song ?
func play ( song : Song ) {
if currentSong ? . id == song . id {
// If the same song is already playing, toggle play/pause
if player ? . rate == 0 {
player ? . play ( )
} else {
player ? . pause ( )
}
} else {
// Play a new song
currentSong = song
player = AVPlayer ( url : song . fileURL )
player ? . play ( )
// Update the isPlaying state of the song
song . isPlaying = true
}
}
func pause ( ) {
player ? . pause ( )
if let song = currentSong {
song . isPlaying = false
}
}
func stop ( ) {
player ? . pause ( )
player = nil
if let song = currentSong {
song . isPlaying = false
}
}
func seek ( to time : TimeInterval ) {
player ? . seek ( to : CMTime ( seconds : time , preferredTimescale : 1 ) )
}
}
ตอนนี้เรามาปรับปรุงมุมมอง Swiftui ของเราเพื่อรวมการควบคุมการเล่น (เล่น/หยุดชั่วคราว, ค้นหาบาร์):
import SwiftUI
import AVFoundation
struct ContentView : View {
@ State private var songs : [ Song ] = [
Song ( id : 1 , title : " Song 1 " , artist : " Artist A " , album : " Album X " , duration : 180 , artwork : " song1 " , fileURL : Bundle . main . url ( forResource : " song1 " , withExtension : " mp3 " ) ! ) ,
Song ( id : 2 , title : " Song 2 " , artist : " Artist B " , album : " Album Y " , duration : 200 , artwork : " song2 " , fileURL : Bundle . main . url ( forResource : " song2 " , withExtension : " mp3 " ) ! )
// Add more songs as needed
]
@ State private var isPlaying = false
@ State private var currentSong : Song ?
@ State private var currentTime : TimeInterval = 0
@ State private var duration : TimeInterval = 0
var body : some View {
NavigationView {
VStack {
if let song = currentSong {
VStack {
Image ( song . artwork )
. resizable ( )
. aspectRatio ( contentMode : . fit )
. frame ( width : 200 , height : 200 )
Text ( song . title )
. font ( . title )
. padding ( . top , 8 )
Text ( song . artist )
. font ( . headline )
. foregroundColor ( . gray )
. padding ( . bottom , 8 )
Text ( timeToString ( time : currentTime ) + " / " + timeToString ( time : duration ) )
. font ( . caption )
. foregroundColor ( . gray )
. padding ( . bottom , 16 )
HStack {
Button ( action : {
self . previous ( )
} ) {
Image ( systemName : " backward.fill " )
. font ( . title )
. foregroundColor ( . blue )
}
. padding ( . trailing , 40 )
Button ( action : {
self . playPause ( )
} ) {
Image ( systemName : isPlaying ? " pause.circle.fill " : " play.circle.fill " )
. font ( . system ( size : 80 ) )
. foregroundColor ( . blue )
}
Button ( action : {
self . next ( )
} ) {
Image ( systemName : " forward.fill " )
. font ( . title )
. foregroundColor ( . blue )
}
. padding ( . leading , 40 )
}
. padding ( . top , 32 )
Slider ( value : Binding (
get : { self . currentTime } ,
set : { newValue in
self . seek ( to : newValue )
}
) , in : 0 ... duration )
. padding ( . horizontal )
}
. onAppear {
self . play ( song : song )
}
} else {
Text ( " Select a song to play " )
. font ( . title )
. foregroundColor ( . gray )
}
List ( songs , id : . id ) { song in
SongRow ( song : song , isSelected : song . id == self . currentSong ? . id )
. onTapGesture {
self . currentSong = song
}
}
. navigationBarTitle ( " Music Player " )
}
}
. onReceive ( Timer . publish ( every : 1 , on : . main , in : . common ) . autoconnect ( ) ) { _ in
if self . isPlaying , let player = AudioPlayer . shared . player {
self . currentTime = player . currentTime ( ) . seconds
self . duration = player . currentItem ? . duration . seconds ?? 0
}
}
}
private func play ( song : Song ) {
AudioPlayer . shared . play ( song : song )
isPlaying = true
}
private func playPause ( ) {
if let song = currentSong {
if isPlaying {
AudioPlayer . shared . pause ( )
} else {
play ( song : song )
}
isPlaying . toggle ( )
}
}
private func seek ( to time : TimeInterval ) {
AudioPlayer . shared . seek ( to : time )
}
private func next ( ) {
guard let currentIndex = songs . firstIndex ( where : { $0 . id == currentSong ? . id } ) , currentIndex < songs . count - 1 else {
return
}
currentSong = songs [ currentIndex + 1 ]
}
private func previous ( ) {
guard let currentIndex = songs . firstIndex ( where : { $0 . id == currentSong ? . id } ) , currentIndex > 0 else {
return
}
currentSong = songs [ currentIndex - 1 ]
}
private func timeToString ( time : TimeInterval ) -> String {
let minutes = Int ( time ) / 60
let seconds = Int ( time ) % 60
return String ( format : " %02d:%02d " , minutes , seconds )
}
}
struct SongRow : View {
let song : Song
let isSelected : Bool
var body : some View {
HStack {
Image ( song . artwork )
. resizable ( )
. aspectRatio ( contentMode : . fit )
. frame ( width : 50 , height : 50 )
VStack ( alignment : . leading ) {
Text ( song . title )
. font ( . headline )
Text ( song . artist )
. font ( . subheadline )
}
Spacer ( )
if isSelected {
Image ( systemName : " speaker.fill " )
. foregroundColor ( . blue )
. padding ( . trailing , 20 )
}
}
. padding ( 8 )
}
}
iPhone 16 (กำลังจะมาถึง), iPhone 15 Pro Max, iPhone 15 Pro, iPhone 15 Plus, iPhone 15, iPhone 14 Pro Max, iPhone 14 Pro, iPhone 14 Plus, iPhone 14
iPhone 13 Pro Max, iPhone 13 Pro, iPhone 13 Mini, iPhone 13, iPhone 12 Pro Max, iPhone 12 Pro, iPhone 12 Mini, iPhone 12, iPhone 11 Pro Max, iPhone 11 Pro, iPhone 11, iPhone XS Max, iPhone XS , iPhone XR, iPhone X.
Spotify for iOS 18:
iOS 18 เบต้า
Spotify for iOS 17:
iOS 17.6, iOS 17.5.1, iOS 17.5, iOS 17.4.1, iOS 17.4, iOS 17.3.1, iOS 17.3, iOS 17.2.1, iOS 17.2, iOS 17.1.2, iOS 17.1.1 iOS 17.1, iOS 17.0.3, iOS 17.0.2, iOS 17.0.1, iOS 17
Spotify for iOS 16:
iOS 16.7.5, iOS 16.7.4, iOS 16.7.3, iOS 16.7.2, iOS 16.7.1, iOS 16.7, iOS 16.6.1, iOS 16.6, iOS 16.5.1, iOS 16.5, iOS 16.4.1, iOS 16.4, iOS 16.3.1, iOS 16.3, iOS 16.2, iOS 16.1.2, iOS 16.1.1, iOS 16.1, iOS 16.0.3, iOS 16.0.2, iOS 16.0.1, iOS 16
Spotify for iOS 15:
iOS 15.8.2, iOS 15.8.1, iOS 15.8, iOS 15.7.9, iOS 15.7.8, iOS 15.7.7, iOS 15.7.6, iOS 15.7.5, iOS 15.7.4, iOS 15.7 .3, iOS 15.7.2, iOS 15.7.1, iOS 15.7, iOS 15.6.1, iOS 15.6, iOS 15.5, iOS 15.4.1, iOS 15.4, iOS 15.3.1, iOS 15.3, iOS 15.2.1, iOS 15.2 , iOS 15.1.1, iOS 15.1, iOS 15.0.2, iOS 15.0.1, iOS 15
Spotify for iOS 14:
iOS 14.8.1, iOS 14.8, iOS 14.7.1, iOS 14.7, iOS 14.6, iOS 14.5.1, iOS 14.5, iOS 14.4.2, iOS 14.4.1, iOS 14.4, iOS 14.3, iOS 14.2 .1, iOS 14.2, iOS 14.1, iOS 14.0.1, iOS 14
Spotify for iOS 13:
iOS 13.7, iOS 13.6.1, iOS 13.6, iOS 13.5.1, iOS 13.5, iOS 13.4.1, iOS 13.4, iOS 13.3.1, iOS 13.3, iOS 13.2.3, iOS 13.2.2.2 iOS 13.2, iOS 13.1.3, iOS 13.1.2, iOS 13.1.1, iOS 13.1, iOS 13
Spotify for iOS 12:
iOS 12.5.7, iOS 12.5.6, iOS 12.5.5, iOS 12.5.4, iOS 12.5.3, iOS 12.5.2, iOS 12.5.1, iOS 12.5, iOS 12.4.9, iOS 12.4.4 .8, iOS 12.4.7, iOS 12.4.6, iOS 12.4.5, iOS 12.4.4, iOS 12.4.3, iOS 12.4.2, iOS 12.4.1, iOS 12.4, iOS 12.3.2, iOS 12.3.1 , iOS 12.3, iOS 12.2, iOS 12.1.4, iOS 12.1.3, iOS 12.1.2, iOS 12.1.1, iOS 12.1, iOS 12.0.1, iOS 12
โครงการนี้เป็นโอเพ่นซอร์สและควบคุมโดยใบอนุญาต MIT คุณสามารถใช้ประโยชน์แก้ไขและแจกจ่ายภายใต้เงื่อนไขที่ระบุไว้ในข้อตกลงใบอนุญาต
เราขยายความซาบซึ้งอย่างจริงใจต่อบุคคลและทีมที่อุทิศตนและความพยายามทำให้โครงการ Spotify ++ เป็นไปได้ การมีส่วนร่วมของพวกเขามีค่ามาก: